Pythonではsqlite3モジュールを使用することにより,SQLiteを扱うことができます.
下の例はpythonのサイトを加工したものです.

目次

  1. インポートとデータベースへの接続
  2. 書き込み
  3. 読み込み

インポートとデータベースへの接続

インポートは

import sqlite3

によって行います.
データベースに接続するにはconnectメソッドです.

conn = sqlite3.connect('example.db')

後ほどデータベースの変更にコミットしたり,データベースへの接続を終了する操作を行うので,接続したデータベースをconnという変数に格納しておくことにします.

書き込み

接続中のデータベースにおけるカーソル(現在位置)は,cursorによって表現されます.
カーソルは何度も動かすでしょうから,単にcとしておきます.

c = conn.cursor()

発行されたSQLはexecuteメソッドにより実行します.

c.execute('''CREATE TABLE stocks (date text, trans text, symbol text, qty real, price real)''')
c.execute("INSERT INTO stocks VALUES ('2006-01-05','BUY','RHAT',100,35.14)")

複数のデータは?を使って入れ込むことができます.
executemanyメソッドにより,for文を書く必要がありません.

purchases = [('2006-03-28', 'BUY', 'IBM', 1000, 45.00),
('2006-04-05', 'BUY', 'MSFT', 1000, 72.00),
('2006-04-06', 'SELL', 'IBM', 500, 53.00),
]
c.executemany('INSERT INTO stocks VALUES (?,?,?,?,?)', purchases)

書き込みを反映するには,接続していたデータベースconnをコミットして閉じます.
コミットはcommitメソッド,接続の終了はcloseメソッドで行います.

conn.commit()
conn.close()

読み込み

配列を得るなら,

c.execute('SELECT * FROM stocks')
print(c.fetchall())

各行に書き出すなら,

for row in c.execute('SELECT * FROM stocks'):
print(row)

とします.