database/MYSQL
python - mysql // 파이썬으로 my sql 실행하기
부엉이사장
2022. 9. 3. 00:55
## 파이썬 mysql 연결하기
# 모듈 설치
일단 모듈 pymysql을 설치해야한다.
pip install pymysql
# 모듈임포트
import pymysql
#커넥션 연결
conn = pymysql.connect(host='localhost', user="root", password="비번비번비번", db='studymysql', charset='utf8')
# 커서 지정
curs = conn.cursor()
# 쿼리문 실행하기
create = 'create table if not exists testtable (value1 varchar(10) not null, value2 varchar(10) not null, value3 varchar(10) not null)'
curs.execute(create)
# 커밋하기
conn.commit()
커밋하면 테이블내용이 바뀌는거임. select사용할때는 안해줘도되는듯.
create할때는 커밋없어도 테이블 만들어지는거같음.
# 커넥션 끊어주기
conn.close()
대충 이런식으로 실행이 된다.
# select 사용
sql_select = "select * from testtable where value2='바보야'"
curs.execute(sql_select)
rows = curs.fetchall()[0]
print(rows)
이러면 프린트값으로 (()) 이렇게 감싸져서 나오는데
난 js랑 연동할거니까
curs = conn.cursor(pymysql.cursors.DictCursor)
이렇게 딕셔너리 사용할거라고 해주고 curs.execute, curs.fetchall()해줘야함.
예시 :
cursN = conn.cursor()
cursD = conn.cursor(pymysql.cursors.DictCursor)
커서 지정
sql_select = "select * from testtable where value1='바보야'"
cursN.execute(sql_select)
rowN = cursN.fetchall()
cursD.execute(sql_select)
rowD = cursD.fetchall()
print(rowN)
print(rowD)
실행하면 이렇게 두개가 뜸.
음..파이썬에서만 쓸거면 딕셔너리커서는 딱히 필요없을것같음..
# insert delete update 사용
얘네는
conn.commit()
이렇게 해줘야함.