#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)