python使用Berkeley DB数据库实例


Posted in Python onSeptember 26, 2014

本文实例讲述了python使用Berkeley DB数据库的方法,分享给大家供大家参考。

具体实现方法如下:

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()

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python3基础之条件与循环控制实例解析
Aug 13 Python
Python获取DLL和EXE文件版本号的方法
Mar 10 Python
python插入排序算法实例分析
Jul 03 Python
python 实现将txt文件多行合并为一行并将中间的空格去掉方法
Dec 20 Python
详解pyppeteer(python版puppeteer)基本使用
Jun 12 Python
python打造爬虫代理池过程解析
Aug 15 Python
Django框架 querySet功能解析
Sep 04 Python
python多进程间通信代码实例
Sep 30 Python
Python爬虫爬取Bilibili弹幕过程解析
Oct 10 Python
TensorFlow获取加载模型中的全部张量名称代码
Feb 11 Python
打包PyQt5应用时的注意事项
Feb 14 Python
python 爬取天气网卫星图片
Jun 07 Python
python实现通过shelve修改对象实例
Sep 26 #Python
python实现在pickling的时候压缩的方法
Sep 25 #Python
python使用cPickle模块序列化实例
Sep 25 #Python
python使用marshal模块序列化实例
Sep 25 #Python
python中类的一些方法分析
Sep 25 #Python
python实现获取序列中最小的几个元素
Sep 25 #Python
python中bisect模块用法实例
Sep 25 #Python
You might like
提升PHP执行速度全攻略(上)
2006/10/09 PHP
PHP简单实现文本计数器的方法
2016/04/28 PHP
firefox下frameset取不到值的解决方法
2010/09/06 Javascript
基于jquery的修改当前TAB显示标题的代码
2010/12/11 Javascript
input点击后placeholder中的提示消息消失
2016/01/15 Javascript
深入理解JS中的substr和substring
2016/04/26 Javascript
省市联动效果的简单实现代码(推荐)
2016/06/06 Javascript
JavaScript操作 url 中 search 部分方法函数
2016/06/15 Javascript
js代码延迟一定时间后执行一个函数的实例
2017/02/15 Javascript
详解基于webpack2.x的vue2.x的多页面站点
2017/08/21 Javascript
vue-cli构建项目使用 less的方法
2017/10/04 Javascript
浅谈JS 数字和字符串之间相互转化的纠纷
2017/10/20 Javascript
深入Node TCP模块的理解
2019/03/13 Javascript
javascript实现弹幕墙效果
2019/11/28 Javascript
vue 弹出遮罩层样式实例
2020/07/22 Javascript
jQuery实现图片切换效果
2020/10/19 jQuery
解析Python中while true的使用
2015/10/13 Python
python 数据的清理行为实例详解
2017/07/12 Python
Python基于list的append和pop方法实现堆栈与队列功能示例
2017/07/24 Python
Python读取sqlite数据库文件的方法分析
2017/08/07 Python
使用实现pandas读取csv文件指定的前几行
2018/04/20 Python
Python3.6通过自带的urllib通过get或post方法请求url的实例
2018/05/10 Python
Python爬虫之正则表达式基本用法实例分析
2018/08/08 Python
Python中的函数式编程:不可变的数据结构
2018/10/08 Python
python协程之动态添加任务的方法
2019/02/19 Python
python之PyQt按钮右键菜单功能的实现代码
2019/08/17 Python
Python TCP通信客户端服务端代码实例
2019/11/21 Python
详解如何将 Canvas 绘制过程转为视频
2021/01/25 HTML / CSS
瑞士最大的图书贸易公司:Orell Füssli
2019/12/28 全球购物
什么是ESB?请介绍一下ESB?
2015/05/27 面试题
副检察长四风问题对照检查材料思想汇报
2014/10/07 职场文书
初中作文评语集锦
2014/12/25 职场文书
领导干部失职检讨书
2015/05/05 职场文书
Java异常处理try catch的基本用法
2021/12/06 Java/Android
Golang入门之计时器
2022/05/04 Golang
windows系统安装配置nginx环境
2022/06/28 Servers