본문 바로가기

잡다한 기술

[python] 파이썬에서 Mysql 연동하는 방법(pymysql 사용법)




# 여는글


파이썬에서 mysql을 사용하여 DB를 연동하고 싶은 경우가 있을 것이다.

그럴때 사용하는게 pymysql이라는 패키지 이다.



# pymysql 사용법


pymysql을 사용하기 위해선 먼저 pymysql을 설치해야 한다.

pip를 사용하든 무엇을 사용하든 pymysql을 설치하자


$ pip install pymysql


자 그럼 pymysql이 설치가 완료될 것이다.


그렇다면 아래와 같이 소스코드에 pymysql을 임포트 한다.


import pymysql


그 후 DB에 연동할 주소와 아이디 비번등이 필요하다.

아래의 형식으로 mysql과 연동하도록 한다.



conn = pymysql.connect(host= db_host, port = db_port, user = db_id, password = db_pw, db= db_database, charset='utf8')


- db_host = "IP"

- db_port = 포트(int 형)

- db_id = "아이디"

- db_pw = "비번"

- db_database = "DB"



그 후 커서를 만들어 mysql 데이터를 호출할 때 어디 부분까지 호출되어졌는지

확인이 가능하도록 한다.


curs = self.conn.cursor()


여기까지 한 경우 기본적인 세팅이 끝난것이다.

이제 쿼리를 실행 시켜보자


curs.execute(쿼리문)

rows = curs.fetchall()


이런식으로 데이터를 뽑아올 수 있다.

그 후 db랑 연결했던것을 종료시켜준다.

(DB는 호출 후 무조건 종료를 시켜줘야 한다.)


conn.close()




# 전체 소스코드


import pymysql


class connDB(object):

    # initialization

    def __init__(self) :

        self.db_host = "IP주소"

        self.db_port = 포트번호(int형)

        self.db_id = "아이디"

        self.db_pw = "비밀번호"

        self.db_database = "데이터베이스"


    def conn(self) :

        # Connect Databse

        self.conn = pymysql.connect(host= self.db_host, port = self.db_port, user = self.db_id, password = self.db_pw, db= self.db_database, charset='utf8')

        

        # Made cursor

        self.curs = self.conn.cursor()


    def close(self) :

        #Close database

        self.conn.close()


    def execute(self, sql) :

        #Execute query

        self.curs.execute(sql)

        

        #Fetch data

        rows = self.curs.fetchall()


        return rows



# 마무리


위 포스트는 제가 직접 제작한 것 입니다.

그렇기 때문에 틀린점이나 설명이 엉성한 점이 존재할 수 있습니다.

만약 틀린점이나 설명이 엉성한 부분이 존재하면 댓글로 알려주세요.

빠른 처리 하도록 하겠습니다.


티스토리 앱으로는 댓글 이용이 불가능 하므로 웹 브라우저로 봐 주세요

(URL : http://junprogramer.tistory.com/)


읽어주셔서 감사합니다.