使用BDB C# API进行基于数据库应用程序的开发,需要libdb51.dll,libdb_csharp51.dll和libdb_dotnet51.dll三个动态链接库。首先,在开发的工程中添加libdb_dotnet51.dll的引用,由于libdb_dotnet51.dll需要调用本地代码得到的libdb51.dll和libdb_csharp51.dll。因此,libdb51.dll,libdb_csharp51.dll应放在本工程路径或者环境变量中,以便运行时加载。开发过程中,在代码中添加BDB C# API的命名空间,即“using BerkeleyDB”,便可使用BDB C# API。

BerkeleyDB的数据库操作需要借助BTreeDatabase类。因此需要先得到BTreeDatabase的实例,但是BteeDatabase类会对其它几个类有依赖,必须依赖其它几个类才能创建。

在创建BTreeDatabase类,打开或创建数据库文件时的文件路径和名称,必须要注意文件路径比允许包含中文路径,否则将抛出“No such file or directory ”异常。

创建打开数据库代码如下:

///数据配置 BTreeDatabaseConfig btreeConfig=new BTreeDatabaseConfig(); btreeConfig.Duplicates = DuplicatesPolicy.SORTED;//排序方式 btreeConfig.ErrorPrefix = "excs_access"; btreeConfig.Creation = CreatePolicy.IF_NEEDED;//如果不存在数据库就创建 btreeConfig.CacheSize = new CacheInfo(0, 64 * 1024, 1);//缓存大小 btreeConfig.PageSize = 8 * 1024;//页大小 //创建并打开一个新的数据库文件 try { BTreeDatabase btreeDB=BTreeDatabase.Open(dbFileName,btreeConfig); } catch(Exception ex) { throw new Exception(string.Format("Error opening:",ex.Message); }

当dbFileName为绝对路径时,如果路径内包含中文字符,则会抛出“No such file or directory ”异常,解决方案:路径改为相对路径,创建成功。如果dbFileName只是数据库文件名称,则创建文件和当前程序在同一目录,程序不会抛出异常。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/dgh_85/archive/2011/03/28/6283995.aspx#

关于Berkeley DB打开创建数据库文件相关推荐

  1. berkeley db mysql_BDB:源自 Berkeley DB,事务型数据库

    数据库存储引擎是数据库底层软件组件,数据库管理系统使用数据引擎进行创建.查询.更新和删除数据操作.不同的存储引擎提供不同的存储机制.索引技巧.锁定水平等功能,使用不同的存储引擎还可以获得特定的功能. ...

  2. 【数据库学习笔记】——创建数据库文件

    目录 1.数据库基础知识 2.创建数据库文件 1.数据库基础知识 什么是数据库?--数据库是存放多个数据表的仓库,数据表可以理解为是二维数组 如上表所示,每个表由行列组成: 字段:每一列称之为一个字段 ...

  3. 服务器mysql如何添加数据库文件,如何在使用MySQL作为嵌入式服务器时创建数据库文件...

    我试图构建一个应用程序,该应用程序将使用MySQL嵌入式数据库(目前在OS X上,但最终在OS X和Windows上)以及I我以this example为起点.我已经成功地能够建立它,使用cmake这 ...

  4. 打开服务器数据库文件,如何打开服务器中的数据库文件

    如何打开服务器中的数据库文件 内容精选 换一换 云服务器新增磁盘,开机自动执行磁盘初始化脚本后,Oralce.MySQL和SQL Server等数据库系统日志Msg 823错误 .磁盘初始化脚本Win ...

  5. mysql 创建数据库文件_mysql学习之通过文件创建数据库以及添加数据

    1.# 创建数据库语句 create database mydb default character set utf8; # 运用数据库语句 use mydb; # 创建表格,这里只简单的创建一张表格 ...

  6. 打开Sql数据库文件(扩展名为mdf)

    后缀名为.mdf的sql数据库如何打开? 有.mdf和.ldf两个文件,打开方案: 方法一:在Sql server企业管理器中   -   数据库   - 右键 <附加数据库 方法二:在VS20 ...

  7. visual studio 2017如何打开 *.sdf 数据库文件 (笔记)

    喜欢用asp.net web pages开发小型网站的同学是不是很郁闷: 1.webMatrix已经停止更新和支持,在最新的Win10里经常出错,已经是不能正常使用了: 2.用web pages建的网 ...

  8. 没有安装sql数据库如何用vs打开mdf数据库文件

    VS 2013菜单栏,工具-->连接到数据库: "更改"数据源为:MicrosoftSQL Server数据库文件: "浏览"并选择数据库文件: &quo ...

  9. Oracle操作语句(PL/SQL)创建表空间:第 1 行出现错误: ORA-01119: 创建数据库文件时出错 ORA-27040: 文件创建错误, 无法创建文件OSD-04002: 无法打开文件

    1.题目要求: 2.遇到的问题情况: 3.问题分析: 创建表空间时指定的文件目录地址出错 4.解决问题(解决方法): 问:既然是路径出错,那么就找到正确的路径即可,那么正确路径是什么呢? 答:是自己P ...

最新文章

  1. Python3编程语言之zip() 函数使用示例
  2. Redis 分布式缓存 Java 框架
  3. Oracle 原理:游标,显示游标、隐式游标、参照游标
  4. Python 装饰器详解(上)
  5. 重要!VALSE 2021确认参会及第二次【预注册】事宜的通知
  6. RQNOJ36 数石子 并查集 简单应用
  7. winform 让他间隔一段时间 执行事件 且只执行一次_记一次golang定时器引发的诡异错误...
  8. Tensorflow Python3 做神经网络(视频教程)
  9. Ubuntu安装adobe字体
  10. 加密卡华为怎么模拟_华为手机NFC模拟加密的门禁卡详细教程
  11. 复制虚拟机出现”适配器 的mac地址在保留地址范围内‘’
  12. ffmpeg录制麦克风声音和pc内部声音(如播放歌曲)---混音--修正
  13. 欢迎进入徐松亮博客一站式导航搜索(随时更新)
  14. 华容道 java_Java-华容道
  15. 生产用料清单-在制材料数量
  16. CSP拼图问题--矩阵快速幂
  17. 张无忌放弃了江湖与江山
  18. 【影像组学】CT数据与MRI数据
  19. 南大通用数据库-Gbase-8a-学习-17-Gbase8a集群版本升级
  20. 虚拟聊天室(中介者模式实战)

热门文章

  1. 爬虫训练场基础铺垫,BT加载器,分页,列表组,卡片,下拉菜单一文掌握
  2. 分享1个超全面的 Python爬虫 接单实例!
  3. 求x+x2+x3+...+xn的值
  4. dio java,Flutter基础(十一)网络请求(Dio)与JSON数据解析
  5. 06-加密和解密的原理
  6. Windows Server 2008 R2版本区分
  7. 【canvas 背景色】透明背景转换成白色
  8. html测试题英语,北大PKU-GATE考试真题-题库
  9. 快手智能处理与编码算法产品化之路
  10. 2022 CSP-J 游记