这个是我从别人的博客上找来的,亲测可用,确实解决了我当时遇到的一些问题。

首先,从http://www.oracle.com/technology/global/cn/software/products/berkeley-db/index.html这 个链接下载Berkeley DB 4.7.25.msi Windows 安装程序,这个是Windows操作系统下的Berkeley DB安装程序,解压之后双击就能安装,记住安装目录,本人装在C:\Program Files\Oracle\Berkeley DB 4.7.25这个目录下。
    之后,打开Microsoft Visual Studio 2005这个开发环境,至于其它的开发环境,本人只尝试了VC++ 6.0没有成功,因此转而使用Microsoft Visual Studio 2005,对于使用VC的朋友们只能说句抱歉了。文件-->新建-->项目,项目类型选择Win32-->Win32控制台应用程序, 名字为Berkeley,点击确定-->下一步-->完成。这时视图转到项目中,自动生成的Berkeley.cpp的初始代码如下:
// Berkeley.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
return 0;
}
    此时,右键单击Berkeley这个工程,选择“属性”到达属性的对话框,在“配置属性”里面选择C/C++,然后选择“常规”,点击“附加包含目录”行 的右半部分,浏览选择Berkeley DB安装目录的include文件夹,确定之后“附加包含目录”的值就变为"C:\Program Files\Oracle\Berkeley DB 4.7.25\include"(按照我的安装路径)。之后在“配置属性”里面再选择链接器,然后选择“常规”,点击“附加库目录”行的右半部分,浏览选 择Berkeley DB安装目录的lib文件夹,确定之后“附加库目录”的值就变为"C:\Program Files\Oracle\Berkeley DB 4.7.25\lib"(按照我的安装路径)。最后之后在“配置属性”里面再选择链接器,然后选择“输入”,点击“附加依赖项”行的右半部分,手工输入将 其值改为libdb47d.lib (这个文件在C:\Program Files\Oracle\Berkeley DB 4.7.25\lib这个目录下)(己注:现在版本是libdb51.lib,这个后面的数字随着版本的更新在变化),最后将"C:\Program Files\Oracle\Berkeley DB 4.7.25\bin"目录下对应的libdb47d.dll复制到当前工程的debug目录下,确定之后环境的搭建就完成了。

测试代码:


// TestBtree.cpp : 定义控制台应用程序的入口点。
#include "stdafx.h"
#include <db_cxx.h>
#include<iostream>
#include<cstring>
int _tmain(int argc, _TCHAR* argv[])
{
  Db db(NULL, 0);
  u_int32_t oFlags = DB_CREATE;
  try {
          db.open(NULL,
              "mybtree1.db",
              NULL,
              DB_BTREE,
              oFlags,
              0);
  } catch(DbException &e) {
  } catch(std::exception &e) {
  }
  Dbt key,data;
  int i,ret,count=100;
  for(i=0;i<count;i++){
    Dbt key(&i,sizeof(int));  
          Dbt data(&i,sizeof(int));  
    db.put(0, &key, &data, DB_NOOVERWRITE);
  }
  Dbc *dbcp,*dbcp1;  
    db.cursor(NULL, &dbcp, 0);
  while (dbcp->get(&key, &data, DB_NEXT) == 0)  
  {  
    printf("The Key::data is %d\n",*((int *)key.get_data()));
    printf("   The Data::data is %d\n",*((int *)data.get_data()));
  }
  dbcp->close();
  db.sync(0);
  try {
        db.close(0);
  } catch(DbException &e) {
  } catch(std::exception &e) {
    }
  return 0;
}

 

假如最后可以运行,则说明配置成功。

windows下 berkerly db的安装配置(修正了关键步骤)的更多相关文章

  1. Windows下MemCache多端口安装配置

    Windows下MemCache环境安装配置的文章很多,但大部分都是用的默认端口11211,如何修改默认端口.如何在一台服务器上配置多个MemCache端口?这正式本文要解决的问题. 1.从微软官网下 ...

  2. Windows下MySQL绿色版安装配置与使用

    Mysql-5.7.11-winx64操作步骤: 一.安装MySQL数据库 1.下载. 下载地址: http://downloads.mysql.com/archives/get/file/mysql ...

  3. Windows 8.1下 MySQL绿色版安装配置与使用

    原文:Windows 8.1下 MySQL绿色版安装配置与使用 Mysql-5.6.17-winx64操作步骤: 一.安装MySQL数据库 1.下载. 下载地址:http://downloads.my ...

  4. Windows下的Linux子系统安装,WSL 2下配置docker

    Windows下的Linux子系统安装,WSL 2下配置docker 前提条件: 安装WSL 2需要Windows 10版本是Build 18917或更高,首先先确认系统版本已升级. 在“启用或关闭W ...

  5. 2分钟 windows下sublime text 3安装git插件:

    12:35 2015/11/182分钟 windows下sublime text 3安装git插件:推荐博客:http://blog.csdn.net/naola2001/article/detail ...

  6. Windows 下java环境变量的配置(Windows7 ,8,8.1,10)

    Windows 下java环境变量的配置 在“系统”面板的左上角选择“高级系统设置”,在弹出的系统属性中选择”高级“项,然后点击右下角的“环境变量(N)...”,就此进入JAVA环境变量的配置. 如果 ...

  7. 纯windows下制作变色龙引导安装U盘教程

    原创教程:纯windows下制作变色龙引导安装U盘教程 支持Mavericks和Yosemite 支持白苹果 目标:windows下制作带 Chamelon变色龙引导的黑苹果安装U盘,支持PC机引导安 ...

  8. 【转】android 最新 NDK r8 在window下开发环境搭建 安装配置与使用 详细图文讲解,完整实际配置过程记录(原创)

    原文网址:http://www.cnblogs.com/zdz8207/archive/2012/11/27/android-ndk-install.html android 最新 NDK r8 在w ...

  9. Windows下Oracle 11g的安装

    Windows下Oracle 11g的安装 Windows下Oracle 11g的安装: Windows:64位, Oracle 11g版本:win64_11gR2_database_1of2(安装包 ...

随机推荐

  1. Windows下编译openssl

    依赖工具: 1.VS 2.perl 编译方法: release: :\> 切换到openssl目录 :\> perl Configure VC-WIN32 no-asm --prefix= ...

  2. cocos2d-x android 字体的设置

    我们知道 ios 自带的字体 和 android 自带的字体不同 为了使我们开发的游戏中的字体统一 我们就需要自己的字体(包括从mac 拷贝出来的 字体) 从 mac 中 copy 出 Thonbur ...

  3. Android 在onActivityResult()中设置图片setImageResource(resId) 或者改变view属性,不成功的解决办法

    如果试验过的朋友就会发现,在onActivityResult()中设置这些属性,好像都不工作,虽然我死磕一番还是不知道具体原因,我直接默认它可能就是不能在里面设置,所以就只能在其他地方设置,幸好发现A ...

  4. .NET开发必备工具之-Reflector

    第一步,下载 第二步,解压缩下载的包,双击Reflector应用程序打开 第三步,设置默认程序集,可以不设定 第四步,找到你要反编译dll文件 第五步,把dll文件拷贝到方便的位置(我在桌面上新建了T ...

  5. Spring3 Security 中配置会话管理

    账户登录时,要求一个账户同时只能一人登录,配置中的步骤有三个: 1.在web.xml中配置HttpSessionEventPublisher <listener> <listener ...

  6. iOS- SQLite3的基本使用

    iOS- 简单说说iOS移动客户端SQLite3的基本使用  1.为什么要使用SQLite3?   •大量数据需要存储 •管理数据,存储数据   SQLite是一种关系型数据库(也是目前移动客户端的主 ...

  7. #技塑人生# windows2008无法远程— 注册表缺失键值导致高级防火墙服务异常

    windows2008无法远程— 注册表缺失键值导致高级防火墙服务异常 阿里云技术支持中心:章阿贵 一.远程无法访问(windows server 2008) 症状:无法远程但是系统内网络正常,防火墙 ...

  8. 【Android 界面效果43】Android LayoutInflater的inflate方法中attachToRoot的作用

    我们在ListView的Adapter的getView方法里面经常会调用两个参数的inflate方法, mInflater.inflate(R.layout.adv_viewpager, null); ...

  9. Java学习笔记——Java工厂模式之简单工厂

    package com.app; import java.util.Date; /* * 工厂模式:简单工厂.工厂方法.抽象工厂 * * */ public class Test0718_Factor ...

  10. css初接触

    一.简介:CSS 即 级联样式表 . 它是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言. css是能够真正做到网页表现与内容分离的一种 ...