プログラミング

【Python】PythonスクリプトからMysqlにデータを挿入する方法!

あきぞらです。

今回は、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操作をするスクリプトもガンガン組めます!

-プログラミング

Copyright© あきぞらてっく , 2020 All Rights Reserved Powered by AFFINGER5.