タイトル通り、PythonでMySQLに接続する方法を探していた。

単純に「pip install MySQLdb」とか「pip install mysql-connector とかやっていてもエラーになる。

正解はこれだった。
# バージョンは今後変わるかもしれないけど。

pip install mysql-connector==2.1.4


環境はPython 3.6.0 | Anaconda 4.3.1 (64-bit)

MySQLに接続してinsertするテストプログラムメモ。

# -*- coding: utf-8 -*-
import mysql.connector

def main():
conn = mysql.connector.connect(
user='root',
password='root',
host='localhost',
database='test'
)

cur = conn.cursor()

# テーブル作成
sql = 'create table user (id int, name varchar(32))'
cur.execute(sql)

# レコード登録
sql = 'insert into user values (%s, %s)'
cur.execute(sql, (1, 'sato'))
cur.execute(sql, (2, 'tanaka'))

# レコード取得
sql = 'select * from user'
cur.execute(sql)

print('==== レコード内容 ====')
for row in cur.fetchall():
print(row[0], row[1])

# データベースへの変更を保存
conn.commit()

cur.close
conn.close

if __name__ == '__main__':
main()