インストール
SQLite自体のインストールは他の資料を参照してください。 MacやLinux系のシステムだと標準で入っていることが多いです。
Pythonから使うAPIは標準ライブラリに入っているので、特にインストール作業は必要ありません。
面倒な設定などもいらないので、ローカルで動くようなプログラムのちょっとした開発ならSQLiteを使うのがおすすめです。
データベースの選び方についてはPython/データベースの選択を参照のこと。
データベースへの接続・更新
プログラムからデータベースへ接続するのは一定のパターンがあり、ほとんどの言語で以下のような手順をふみます。
まず、データベースへの接続を行います。 その戻り値としてデータベースの情報を格納したオブジェクトを取得します。 一般にこのオブジェクトは「コネクタ」と呼ばれます。
次にそのコネクタからデータベースのどこのデータをあつかっているか、といった情報を扱うためのオブジェクトを取得します。 一般にこのオブジェクトは「カーソル」と呼ばれます。
SQLなどはカーソルを通じて発行され、書き込み終了のときのコミットやデータベースのクローズなどはコネクタを通じて実行されます。
この手順をふまえて、「test.db」という名前のファイルを開き(無ければ制作し)、testというテーブルが無ければ制作し、データを1件追加するには以下のようにします。
import sqlite3 conn = sqlite3.connect('test.db') cursor = conn.cursor() cursor.execute("CREATE TABLE IF NOT EXISTS test (id int,data txt )") cursor.execute("INSERT INTO test VALUES (1,'This is test.')") conn.commit() conn.close()
以下のように変数を外に出すこともできます。またマルチバイト文字も利用できますが、その時にはUnicode型を使わないといけません。
cursor.execute(u"INSERT INTO test VALUES (?,?)",(2,u'これはテスト'))
こちらの方が特殊文字などをエスケープしてくれるので、SQLインジェクションなどに対しても安全です。
ぺージ情報 | |
---|---|
ぺージ名 : | Python/SQLiteから使う基礎 |
ページ別名 : | 未設定 |
ページ作成 : | njf |
閲覧可 | |
グループ : | すべての訪問者 |
ユーザー : | すべての訪問者 |
編集可 | |
グループ : | すべての訪問者 |
ユーザー : | すべての訪問者 |
Counter: 1902,
today: 1,
yesterday: 1
初版日時: 2016-12-13 (火) 15:05:51
最終更新: 2016-12-25 (日) 10:10:00 (JST) (2640d) by njf