파이썬에서 mysql 연동하는 커넥터의 종류는 여러가지 있으나 보통 아래 2가지중 하나를 사용한다.
. Pymysql, mysqlclient
사용법은 둘다 비슷한데 성능이 우수한 mysqlclient 를 많이 사용한다. (c로 만들어져서 빠르다고 한다 )
일단 기본 소스는 아래와 같다.
import MySQLdb
db = MySQLdb.connect(host='localhost', user='root', password='1234', db='db name')
cur = db.cursor()
#SELECT
sql = 'select * from member'
cur.execute(sql)
row = cur.fetchall()
print(row)
#한줄 데이터 조회
row = cur.fetchone()
print(row)
#fetchone()을 이용하여 루프를 돌면서 모든 데이터 출력하기
whilt True:
row = cur.fetchone() # 데이터를 한줄씩 가져옴
if row: # row 데이터가 있으면
print(row)
else: # row 데이터가 없으면
break # loop를 멈춤
#dict형식의 cursor에서 필드이름으로 원하는 데이터 출력하기
while True:
row = cur.fetchone()
if row: # 필드이름을 dict의 key로 가져올 수 있음
print(f"아이디: {row['userid']}, 이름: {row['username']}, 전화번호: {row['hp']}, 이메일: {row['email']}, 성별: {row['gender']}")
else:
break
#INSERT (UPDATE, DELETE 동일형식)
sql = "insert into member (id, pw, name) values ('id', 'pw', 'name')"
cur.execute(sql)
db.commit
#data를 사용하여 INSERT 하기
sql = "insert into member (id, pw, name) values ('%s', ' %s ', ' %s ')"
data = ( 'id', 'pw', 'name')
cur.execute(sql, data)
db.commit
data = [ ( 'id1', 'pw1', 'name1'), ( 'id2', 'pw2', 'name2')]
cur.execute(sql, data)
db.commit
#CLOSE
cur.close()
db.close()
'파이썬' 카테고리의 다른 글
<> 안에 한글이 있는 경우 HTML Entities 로 변환하기 (1) | 2024.08.30 |
---|---|
GET, POST 사용하기 - Requests (1) | 2024.08.30 |
Papago Website Translation 샘플소스 (2) | 2024.08.29 |
파이썬에서 url encode, decode 하는 방법 (1) | 2024.08.29 |
문자열 공백제거 함수 - 파이썬 (57) | 2024.08.12 |