Python LMDB庫的使用示例

linux中,可以使用指令

pip install lmdb

安裝lmdb包。

—-

  1. lmdb 數據庫文件生成
  2. 增 改 刪

1、生成一個空的lmdb數據庫文件

# -*- coding: utf-8 -*-
import lmdb
# 如果train文件夾下沒有data.mbd或lock.mdb文件,則會生成一個空的,如果有,不會覆蓋
# map_size定義最大儲存容量,單位是kb,以下定義1TB容量
env = lmdb.open("./train",map_size=1099511627776)
env.close()

2、LMDB數據的添加、修改、刪除

# -*- coding: utf-8 -*-
import lmdb
# map_size定義最大儲存容量,單位是kb,以下定義1TB容量
env = lmdb.open("./train", map_size=1099511627776)
txn = env.begin(write=True)

# 添加數據和鍵值
txn.put(key = '1', value = 'aaa')
txn.put(key = '2', value = 'bbb')
txn.put(key = '3', value = 'ccc')
 
# 通過鍵值刪除數據
txn.delete(key = '1')
 
# 修改數據
txn.put(key = '3', value = 'ddd')
 
# 通過commit()函數提交更改
txn.commit()
env.close()

3、查詢LMDB數據庫

# -*- coding: utf-8 -*-
import lmdb
 
env = lmdb.open("./train")
 
# 參數write設置為True才可以寫入
txn = env.begin(write=True)
############################################添加、修改、刪除數據
 
# 添加數據和鍵值
txn.put(key = '1', value = 'aaa')
txn.put(key = '2', value = 'bbb')
txn.put(key = '3', value = 'ccc')
 
# 通過鍵值刪除數據
txn.delete(key = '1')
 
# 修改數據
txn.put(key = '3', value = 'ddd')
 
# 通過commit()函數提交更改
txn.commit()
############################################查詢lmdb數據
txn = env.begin()
 
# get函數通過鍵值查詢數據
print txn.get(str(2))
 
# 通過cursor()遍歷所有數據和鍵值
for key, value in txn.cursor():
  print (key, value)
  
############################################
env.close()

4. 讀取已有.mdb文件內容

# -*- coding: utf-8 -*-
import lmdb
 
env_db = lmdb.Environment('trainC')
# env_db = lmdb.open("./trainC")
 
txn = env_db.begin()
 
# get函數通過鍵值查詢數據,如果要查詢的鍵值沒有對應數據,則輸出None
print txn.get(str(200))
 
for key, value in txn.cursor(): #遍歷
  print (key, value)
 
env_db.close()

以上就是Python LMDB庫的使用示例的詳細內容,更多關於Python LMDB庫的資料請關註WalkonNet其它相關文章!

推薦閱讀: