PROGRAM PYTHON

Pythonスクリプト【MySQLにリモート接続しよう⑩~CSVデータ挿入】

 

 

PythonスクリプトからMySQLのDBにCSVのデータを挿入しよう

今回はPythonスクリプトでCSV(Comma Separated Values/カンマ区切り値列)ファイルを読み込み、MySQLのDBにデータを挿入してみましょう。
CSVファイルの読み込みには、CSVモジュールを使います。

 

CSVモジュールのインポート

CSVモジュールのインポートは、以下の通りです。

import csv

 

CSVファイルの読み込み

CSVファイルの読み込みは、reader()関数を使います。
ファイルオブジェクト名は、open()関数で作成したオブジェクトです。
なお、open()関数の詳細は、こちらの記事を参照してください。

csv.reader("ファイルオブジェクト名", オプション)

csv.reader()関数のオプションには、以下の種類があります。

オプション名 内容
delimiter フィールド間を分割するのに用いられる文字。デフォルトはカンマ(',')
doublequote フィールド内に現れたクォート文字がその文字自身の場合、どのようにクォートするかを指定。Trueの場合、文字は二重化される。Falseの場合、エスケープ文字はクォート文字の前に置かれる。デフォルトはTrue
escapechar エスケープ文字は、それに続く文字の特別な意味を取り除きます。デフォルトはNoneで、エスケープは行わない
quotechar delimiterやquotecharといった特殊文字を含むか、改行文字を含むフィールドをクォートする際に用いられる文字。デフォルトはダブルクォーテーション('"')
skipinitialspace Trueの場合、delimiterの直後に続く空白は無視される。デフォルトはFalse
strict Trueの場合、不正なCSV入力に対してエラーを送出する。デフォルトはFalse

 

CSVファイルを読み込んでデータを挿入するプログラム

CSVファイルを読み込んで、MySQLのDBにデータを挿入するプログラムは、以下のようになります。
データを挿入するテーブルは、第7回の記事で作成したものを使います。

今回使ったCSVファイルは、以下の通りです。

前回作成したプログラムでテーブルの内容を確認すると、以下のようになります。

mysql10-1

 

-PROGRAM, PYTHON
-