今回は、Pythonに付属している軽量なRDBMSの「SQLite3」を使用してみたいと思います。
簡単にですが「SQLite3」とは、
・著作権を放棄しパブリックドメインに帰している
・サーバではなくライブラリ
・手軽さと高速な動作から中小規模の開発で活用
Pythonプログラムから「SQLite3」へ登録・検索結果を出力したサンプルが以下になります。(ファイル名をsqlite_test.pyとします。)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
import sqlite3 ・・・(1) conn = sqlite3.connect('testdb.sqlite3') ・・・(2) c = conn.cursor() ・・・(3) c.execute('''CREATE TABLE items (id INTEGER PRIMARY KEY AUTOINCREMENT, item_name TEXT, price INTEGER)''') ・・・(4) c.execute('''INSERT INTO items (item_name, price) VALUES('キャベツ', 100)''') ・・・(5) conn.commit() ・・・(6) c.execute("SELECT * FROM items") ・・・(7) result = c.fetchone() ・・・(8) print(result) ・・・(9) conn.close() ・・・(10) |
(1) : sqlite3モジュールをインポート
(2) : DB名’testdb.sqlite3’へ接続
(3) : (2)の接続オブジェクトよりカーソルオブジェクトを取得
(4) : テーブル’items’作成
(5) : テーブル’tems’にデータを1件登録
(6) : (5)のデータ登録を確定
(7) : カーソルオブジェクトよりfetchoneを使用してデータを1件取得(他に全件取得するfetchallなど)
(8) : (7)の結果を出力
(9) : 接続オブジェクトを閉じる
実行結果は以下になります。
実行後、’testdb.sqlite3’ファイルが作成されます。
次回は、前回にjinja2テンプレートで作成した「商品データベース」ページにSQLiteを埋め込みしていきたいと思います。