首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

Oracle Berkeley DB 读取数据DB_NOTFOUND异常

2012-03-17 
Oracle Berkeley DB 读取数据DB_NOTFOUND错误打开数据库,可以成功:btreeDBConfig new BTreeDatabaseConf

Oracle Berkeley DB 读取数据DB_NOTFOUND错误
打开数据库,可以成功:
btreeDBConfig = new BTreeDatabaseConfig();
btreeDBConfig.Duplicates = DuplicatesPolicy.SORTED;
btreeDBConfig.Creation = CreatePolicy.IF_NEEDED; //如果不存在数据库就创建
btreeDBConfig.PageSize = 4 * 1024;//页大小
btreeDBConfig.CacheSize = new CacheInfo(0, 1024 * 1024 * 80, 0);//缓存大小
btreeDB = BTreeDatabase.Open("c:\\db\\bdb.db", btreeDBConfig);

写数据,可以成功:
int id = 1;
string data = "hello world";
DatabaseEntry k = new DatabaseEntry();
DatabaseEntry d = new DatabaseEntry();
k.Data = BitConverter.GetBytes(id);
d.Data = ASCIIEncoding.ASCII.GetBytes(data);
btreeDB.Put(k, d);

// 读数据,如果在程序运行时,执行写,然后执行读,可以成功;
// 但是,如果写数据完成后,把程序关了,然后再重新运行程序,打开数据库,读数据,
// 就会失败了,请高手指点一下哪里的问题。
int id = 1;
DatabaseEntry de = new DatabaseEntry();
de.Data = BitConverter.GetBytes(id);
KeyValuePair<DatabaseEntry, DatabaseEntry> pair = btreeDB.Get(de); // 这一句就异常了



[解决办法]

热点排行