Programming/Python

[Python] MySQL 설치 및 쿼리 (접속/SELECT/INSERT/DELETE/UPDATE)

쌍쌍바나나 2016. 3. 23. 12:04
반응형

들어가기


Python에서 MySQL을 연동하는 방법입니다. 
설치부터 접속, SELECT, INSERT, DELETE, 그리고 UPDATE고에 대해서 정리해 놓은 내용입니다. 


설치하기

$ pip install MySQL-python


접속하기

import MySQLdb
con = MySQLdb.connect('192.168.1.198', 'username', 'password', 'database')
cur = con.cursor(MySQLdb.cursors.DictCursor)

여기서 MySQLdb.cursors.DictCursor를 사용하는 이유는 query를 통해 데이터를 얻을때 python의 dict로 얻기 위한 방법입니다. 


SELECT 

query = " select * from %s" & (table)
cur.execute(sql);
results = cur.fetchall()
for row in results:
    print row

결과 {'wifi_data_usage': '11', 'wifi_status': 1L, 'wifi_running': '1', 'wifi_scanning': '1', 'multicasts': '11'}


INSERT

dict의 형태의 값을 db에 insert하는 방법입니다. columns과 placeholders를 만든뒤에 query를 생성합니다. 
myDict = {'wifi_data_usage': '11', 'wifi_status': 1L, 'wifi_running': '1', 'wifi_scanning': '1', 'multicasts': '11'}

columns = ','.join(myDict.keys())
placeholders = ','.join([%s'] * len (myDict))
query = "insert into %s (%s) values (%s) % (table, columns, placeholders)
cur.execute(query, myDict.values())
con.commit()


DELETE

query = "delete from %s where column like %s" % (table, value)
cur.execute(query)
con.commit()

 

UPDATE

query = "update %s set column = value where column2=%s" % (table, value)
cur.execute(query)
cur.commit()



반응형