1 初探

  在平時的開發(fā)工作中,我們可能會有這樣的需求:我們希望有一個內存數據庫或者數據引擎,用比較Pythonic的方式進行數據庫的操作(比如說插入和查詢)。

  舉個具體的例子,分別向數據庫db中插入兩條數據,"a=1, b=1" 和 "a=1, b=2", 然后想查詢a=1的數據可能會使用這樣的語句db.query(a=1),結果就是返回前面插入的兩條數據; 如果想查詢a=1, b=2的數據,就使用這樣的語句db.query(a=1, b=2),結果就返回前面的第二條數據。

  那么是否擁有實現(xiàn)上述需求的現(xiàn)成的第三方庫呢?幾經查找,發(fā)現(xiàn)PyDbLite能夠滿足這樣的需求。其實,PyDbLite和Python自帶的SQLite均支持內存數據庫模式,只是前者是Pythonic的用法,而后者則是典型的SQL用法。
他們具體的用法是這樣的:

PyDbLite

Android培訓,安卓培訓,手機開發(fā)培訓,移動開發(fā)培訓,云培訓培訓

import pydblite# 使用內存數據庫pydb = pydblite.Base(':memory:')# 創(chuàng)建a,b,c三個字段pydb.create('a', 'b', 'c')# 為字段a,b創(chuàng)建索引pydb.create_index('a', 'b')# 插入一條數據pydb.insert(a=-1, b=0, c=1)# 查詢符合特定要求的數據results = pydb(a=-1, b=0)

網友評論