1.下载并安装Berkeley DB,我用的是Berkeley DB 12cR1 6.0.20
下载地址 http://www.oracle.com/technetwork/cn/database/database-technologies/berkeleydb/downloads/index.html
安装下载的文件 我的安装路径E:\Program Files\Oracle\Berkeley DB 12cR1 6.0.20
2.VS2010下的配置
属性->C/C++>常规->附加包含目录->添加E:\Program Files\Oracle\Berkeley DB 12cR1 6.0.20\include
属性->链接器>常规->附加库目录->添加E:\Program Files\Oracle\Berkeley DB 12cR1 6.0.20\lib
属性->链接器>输入->附加库目录->添加libdb60.lib
把E:\Program Files\Oracle\Berkeley DB 12cR1 6.0.20\bin放入Debug下
配置完成
3.简单应用
加入头文件#include "db_cxx.h"
连接数据库
db.open(NULL, dbname, NULL, DB_HASH, DB_CREATE, 0)
插入数据
char* path;
float fea;
Dbt key(path,strlen(path)+1);
Dbt data(&fea,sizeof(float));
获取数据
char *path = new char[50];
Dbt key(path,sizeof(char)*50);
Dbt data(&fea,sizeof(float));
db.put(0, &key, &data, DB_NOOVERWRITE);
遍历数据
Dbc *cursorp;
db.cursor(NULL, &cursorp, 0);
int ret;
while ((ret =cursorp->get(&key,&data,DB_NEXT))== 0)
{
strcpy(path, (char *)key.get_data());
fea = (float )data.get_data();
}
关闭游标和数据库
if (cursorp != NULL)
cursorp->close();
db.close(0);