1. Mariadb 모듈 설치
Mariadb는 Mysql과 호환이 되기 때문에 PyMySQL을 설치하면 된다.
# pip install PyMySQL
2. Python Mariadb 연동 소스
2-1 fetchall 사용(데이터를 한번에 모두 가져옴)
import pymysql
# mariadb연동을 위한 모듈 import
# 컨넥트를 미리 만들어준다.
# 접속할 host, uesr, password, db, 인코딩 입력
connect = pymysql.connect(host='localhost', user='root', password='P@ssw0rd',
db='testDB', charset='utf8')
#커서 생성
cur = connect .cursor()
# sql문 실행
sql = "select * from testTable"
cur.execute(sql)
# DB결과를 모두 가져올 때 사용
rows = cur.fetchall()
# 한번에 다 출력
print(rows)
# 원하는 행만 출력
print(rows[0])
# for문으로 출력
for row in rows:
print(row)
# 연결 해제
connect .close()
2-2 fetchone사용 (데이터를 한줄만 가져옴)
import pymysql
# mariadb연동을 위한 모듈 import
# 컨넥트를 미리 만들어준다.
# 접속할 host, uesr, password, db, 인코딩 입력
connect = pymysql.connect(host='localhost', user='root', password='P@ssw0rd',
db='testDB', charset='utf8')
#커서 생성
cur = connect .cursor()
# sql문 실행
sql = "select * from testTable"
cur.execute(sql)
#결과값을 하나만 가져올 때 사용
row=fetchone()
# 연결 해제
connect .close()
2-3 Dictoionary Cursor 사용
cur = connect .cursor()
이 부분을
cur = connect .cursor(pymysql.cursors.DictCursor)
위의 내용처럼 변경
print(row['name']) 이런식으로 원하는 열만 검색이 가능
2-4 where절 동적으로 받아 검색
sql = "select * from testTable"
cur.execute(sql)
위 내용을
sql = "select * from testTable where no=%s and name=%s"
cur.execute(sql,(1,'홍길동'))
위처럼 변경하면 동적으로 받아온 값을 검색 할 수 있음.