반응형
들어가기
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()
반응형
'Programming > Python' 카테고리의 다른 글
[Python] 파이썬 MySQL사용시 UnicodeEncodeError 해결 방법 (0) | 2016.03.31 |
---|---|
[Python] 파이썬 인코딩 문제 SyntaxError: Non-ASCII character (0) | 2016.03.26 |
[Python] Join, Split 리스트를 문자열로, 문자열을 리스트로 변환 (1) | 2016.03.23 |
[Python] 유니코드, UTF-8를 해결하는 방법 (Unicode, UTF8) (0) | 2016.03.20 |
[Python] UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-3: ordinal not in range(128) (2) | 2016.03.20 |