星期日, 二月 11, 2007

python flat file db && table 'type'

我前面在"数据结构与配置设想"中设想配置的三种形式,即树配置、表配置和列表配置。那里相对比较详细的讨论过树配置,现在考虑表配置。

表配置实际上是关系型的,但因为配置的可读性很重要,所以文本形式是首选,特别是对于一些简单的应用,如果弄一个复杂的 Server/Client SQL 关系型数据库就太麻烦了。最起码需要放置在本地文件系统中吧。

仅对后一点,在本地文件系统上操作,是可以利用 SQLite3 来实现的,python 的相应接口为 pysqlite
sh$ upm packs
sqlite-3.3.12
pysqlite-2.3.2

sh$ python
>>> import pysqlite2
>>> dir(pysqlite2)
['__builtins__', '__doc__', '__file__', '__name__', '__path__']
>>> from pysqlite2 import dbapi2 as sqlite
>>> dir(pysqlite2)
['__builtins__', '__doc__', '__file__', '__name__', '__path__', '_sqlite', 'dbapi2']
>>> dbconn = sqlite.connect('/tmp/filedb')
>>> dbcurs = dbconn.cursor()
>>> dbcurs.execute('''create table stocks (date text, trans text, symbol text, qty real, price real)''')
pysqlite2.dbapi2.Cursor object at 0xb7c20ce0
>>> dbcurs.execute("""insert into stocks values ('2006-01-05','BUY','RHAT',100,35.14)""")
pysqlite2.dbapi2.Cursor object at 0xb7c20ce0
>>> dbcurs.close()
>>> dbconn.close()

没有评论: