发布于 2014-10-08 01:38:24 | 185 次阅读 | 评论: 0 | 来源: 网友投递
			Berkeley DB开源文件数据库
Berkeley DB是一个开源的文件数据库,介于关系数据库与内存数据库之间,使用方式与内存数据库类似,它提供的是一系列直接访问数据库的函数,而不是像关系数据库那样需要网络通讯、SQL解析等步骤。		
本文主要讲解了python下使用Berkeley DB数据库的方法,以实例形式讲述了完整的操作过程,并总结了具体的操作步骤,非常具有实用性,需要的朋友可以参考下
Berkeley DB是一个开源的文件数据库,介于关系数据库与内存数据库之间,使用方式与内存数据库类似,它提供的是一系列直接访问数据库的函数,而不是像关系数据库那样需要网络通讯、SQL解析等步骤。
具体实现方法如下:
try: 
  from bsddb import db 
except ImportError: 
  from bsddb3 import db 
print db.DB_VERSION_STRING 
#检测是否有bsddb包 
 
def irecords(curs): 
  record = curs.first() 
  while record: 
    yield record 
    record = curs.next() 
     
adb = db.DB() 
adb.open('db_filename',dbtype = db.DB_HASH, flags = db.DB_CREATE) 
for i,w in enumerate('some word for example'.split()): 
  adb.put(w,str(i)) 
   
for key, data in irecords(adb.cursor()): 
  print key,data 
adb.close() 
print '*'*60 
# 
the_same_db = db.DB() 
the_same_db.open("db_filename") 
the_same_db.put('skidoo','23')#加入数据库 
the_same_db.put('for','change the data')#改变数据库的数据 
for key, data in irecords(the_same_db.cursor()): 
  print key,data 
the_same_db.close()
运行结果如下:
Berkeley DB 4.7.25: (May 15, 2008) example 3 some 0 word 1 for 2 ************************************************************ example 3 some 0 word 1 for change the data skidoo 23
这里再总结一下操作步骤:
1.先初始化数据库
adb = db.DB()
2.打开数据库
adb.open('db_filename',dbtype = db.DB_HASH, flags = db.DB_CREATE)
3.插入或修改数据库中的数据
adb.put('skidoo','23')#加入数据库
adb.put('for','change the data')#改变数据库的数据
4.关闭数据库
adb.close()