自(zì)2.6版以來(lái)已棄用(yòng):該dbhash模塊已在Python 3中删除。
該dbhash模塊提供了(le)使用(yòng)BSD db庫打開(kāi)數據庫的功能(néng)。該模塊反映了(le)提供對(duì)DBM式數據庫訪問權的其他(tā)Python數據庫模塊的接口。該bsddb模塊需要使用(yòng)dbhash。
該模塊提供了(le)一個例外(wài)和(hé)一個功能(néng):
exception dbhash.error
數據庫錯誤以外(wài)的異常引發KeyError。它是一個同義詞bsddb.error。
dbhash.open(path[, flag[, mode]])
打開(kāi)一個db數據庫并返回數據庫對(duì)象。該路徑參數是數據庫文(wén)件的名稱。
該标志參數可以是:
值 | 含義 |
---|---|
'R' | 打開(kāi)僅用(yòng)于讀取的現(xiàn)有數據庫(默認) |
'W' | 打開(kāi)現(xiàn)有的數據庫進行讀寫 |
'C' | 打開(kāi)數據庫進行讀寫,如果不存在則創建它 |
'N' | 總是創建一個新的空(kōng)的數據庫,打開(kāi)閱讀和(hé)寫作(zuò) |
對(duì)于BSD db庫支持鎖定的平台,'l'可以附加一個表明(míng)應該使用(yòng)鎖定的平台。
如果必須創建新的數據庫,則可選模式參數用(yòng)于指示應該設置的Unix權限位; 這(zhè)将被該過程的當前umask值所掩蓋。
1.數據庫對(duì)象
返回的數據庫對(duì)象open()爲所有DBM樣式的數據庫和(hé)映射對(duì)象提供通用(yòng)的方法。除标準方法外(wài),還提供以下(xià)方法。
dbhash.first()
使用(yòng)這(zhè)種方法和(hé)next()方法可以遍曆數據庫中的每個鍵/值對(duì)。遍曆由數據庫内部散列值進行排序,并且不會(huì)按鍵值進行排序。此方法返回開(kāi)始鍵。
dbhash.last()
返回數據庫遍曆中的最後一個鍵/值對(duì)。這(zhè)可以用(yòng)來(lái)開(kāi)始逆序遍曆; 見previous()。
dbhash.next()
返回數據庫遍曆中的鍵下(xià)一個鍵/值對(duì)。以下(xià)代碼打印數據庫中的每個鍵db,而不必在内存中創建一個包含它們的列表:
print db.first()
for i in xrange(1, len(db)):
print db.next()
複制
dbhash.previous()
返回數據庫正向遍曆中的前一個鍵/值對(duì)。結合使用(yòng)last(),這(zhè)可以用(yòng)來(lái)實現(xiàn)逆序遍曆。
dbhash.sync()
此方法強制将任何未寫入的數據寫入磁盤。
網站(zhàn)建設開(kāi)發|APP設計(jì)開(kāi)發|小(xiǎo)程序建設開(kāi)發