Coding story/go Python
Python내에서 DB연동을 하기 위한 준비(pymysql)
지나가는개리씨
2022. 1. 11. 21:25
320x100
운영체제
Windows10
eclipse 2018-06 (photon)
jdk1.8
HeidiSQL
Python에서 DB연동은 Java의 Jdbc와는 다른 pymysql을 사용한다.
설치는 윈도우에서 CMD/명령크롬프트 혹은 Anaconda Prompt에서
1
|
pip install pymysql
|
cs |
을 넣으면 자동으로 설치가 진행된다.
설치완료후, 파이선에서 pymysql을 넣으면 import가 되어 사용할 수 있게 되는데
module문 안에서 db연동을 위한 conn(connect) 을 다음과 같이 작성한다.
이는 자바의 JDBC에서의 Connection 객체를 만드는것과 같다고 생각하면 된다.
1
2
3
4
5
6
7
8
9
10
11
12
|
import pymysql
#pip install pymysql을 cmd에서 입력하면 pymysql이 설치된다.
#db설정
conn = pymysql.connect(host='호스트명',
port=포트번호,
db='데이터베이스명',
user='유저명',
password='비밀번호',
charset='utf8')
|
cs |
※ host는 초기값이 localhost로 되어있으니 바꾼다면 host번호를 수정하면된다. 그리고 port는
숫자로 들어가야하니 ' '안에는 들어가지 않는다.
그리고 DB의 CRUD를 위한 SQL문을 작성하기 전에 커서라는 것을 넣어야하는데
이는 JDBC의 Statement와 같은 역활을 하며, 실질적으로 파이선에서 SQL문을 수행하는 역활을 한다.
커서의 입력방식은 다음과 같다.
1
2
3
4
5
6
7
8
|
#커서 선언
#자바에서의 커서와 다름
#cur = 자바에서의 statement와 같은 역활
curs = conn.cursor()
#sql선언
sql = "sql문"
curs.execute(sql)
|
cs |
결국 모두를 작성한 문을 한번에 펼치자면 이렇다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
import pymysql
conn = pymysql.connect(host='localhost',
port=port,
db='db',
user='user',
password='password',
charset='utf8')
curs = conn.cursor()
sql = "select m_id,m_name,tel from python.member"
curs.execute(sql)
#썼으면 닫아야함
conn.close()
curs.close()
|
cs |
마지막으로 자바와 같은 방식으로 연동을 한 후에는 닫아야하기에 Connect와 Cursor는 닫아주는것이 좋다.
다음은 이를 이용한 CRUD를 다루어보겠다.
ㅇㄹ
반응형