あきぞらです。
今回は、Python
のコードからMySQL
のデータベースにデータを挿入する方法を紹介していきます。
目次
PythonからMysqlに接続するためのライブラリをインストールする
Python
からMySQL
に接続するためのライブラリをpipでインストールします。
$ pip install mysqlclient
これでMySQL
のライブラリがインストールできました。
テーブルにデータをINSERTする処理を書く
データベースに接続し、テーブルにデータを挿入する処理を記載してみます。
import MySQLdb conn = MySQLdb.connect( user = MYAPP_USER, passwd = MYAPP_PASS, host = MYAPP_HOST, port = MYAPP_PORT, db = MYAPP_DATABASE, charset = 'utf8', ) cursor = conn.cursor() data = { 'category': 'IT・サイエンス' , 'title' : 'SOFT SKILLS' } insert_sql = "INSERT INTO books ( category, title ) VALUES ( %s, %s )" cursor.execute( insert_sql, ( data['category'], data['title'], ) ) conn.commit()
このコードは、「books
」というテーブルの「category
」と「title
」というカラムにデータをインサートしています。
少し詳しく説明します。
DBの接続情報を記載する
このコードでデータベースに接続します。
conn = MySQLdb.connect( user = MYAPP_USER, passwd = MYAPP_PASS, host = MYAPP_HOST, port = MYAPP_PORT, db = MYAPP_DATABASE, charset = 'utf8', )
ここは、実際の環境に合わせて記載していきます。
MYAPP_USER
等の部分はご自身の環境に合わせて記載してください。
user | MySQLデータベースのユーザ |
passwd | MySQLデータベースのユーザのパスワード |
host | MySQLデータベースのホスト |
port | MySQLデータベースのポート番号 |
db | MySQLデータベースのデータベース名 |
カーソルを呼び出し、INSERTのSQLを実行する
cursor = conn.cursor()
の部分で、SQLの操作を行うために必要なcursorというものを呼び出します。
cursor.execute()
でSQLを実行します。
DBの更新をしたら最後にコミットを忘れない
DBを変更したときは必ずコミットの操作(conn.commit()
)をいれます。
これを忘れてしまうとデータベースに反映されません。
まとめ
Python
からMySQL
を操作する処理を紹介しました。
これでDB操作をするスクリプトもガンガン組めます!