#navi(../)
* PythonとSQLiteでメモリデータベースとして利用する方法 [#a7a73b22]
PythonとSQLite3でメモリデータベースを利用するサンプルコードを以下に記します。~
尚、sqlite3のモジュールはPython2.5から標準ライブラリ入っています。

#contents
#htmlinsertpcsp(db-top.html,db-sp.html)

* 動作確認環境 [#z917f5ff]
 $ python --version
 Python 2.7.3

 $ lsb_release -d
 Description:    Ubuntu 12.04.4 LTS

* 関連記事 [#mf5d8b6b]
-[[PythonでSQLiteに接続する>Python/SQLiteに接続する]]
-[[PythonとSQLiteでメモリデータベースとして利用する方法>Python/PythonとSQLiteでメモリデータベースとして利用する方法]]

* :memory:でメモリデータベースを作成する [#vdde9da2]
PythonでSQLiteに接続する構文で'':memory:''を指定するとRAM上にデータベースが作成されます。~
使い方によっては便利なプログラミングが可能になるのではないでしょうか。
-メモリデータベースのサンプルコード
#ref(memdb.py)
 #!/usr/bin/env python
 # -*- coding: utf-8 -*-
 import sqlite3
 
 con = sqlite3.connect(":memory:")
 # con = sqlite3.connect(db, isolation_level=None) # auto commit mode
 
 #create talbe
 sql = u"""
 create table 商品マスタ (
 コード int,
 商品名 varchar(100),
 単価 int
 );
 """
 con.execute(sql)
 
 # insert items
 sql = u"insert into 商品マスタ values (1,'りんご', 100);"
 con.execute(sql)
 sql = u"insert into 商品マスタ values (2,'みかん', 200);"
 con.execute(sql)
 sql = u"insert into 商品マスタ values (3,'いちご', 300);"
 con.execute(sql)
 
 cur = con.cursor()
 sql = u"select * from 商品マスタ"
 cur.execute(sql)
 
 for r in cur:
   print r[0], r[1], r[2]
 
 con.close()

-実行結果
 $ chmod +x memdb.py
 $ ./memdb.py
 1 りんご 100
 2 みかん 200
 3 いちご 300

以上、PythonとSQLite3でメモリデータベースを作成し操作するサンプルコードでした。

#htmlinsertpcsp(db-btm.html,db-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS