4

我正在尝试将数据写入 lmdb 数据库(参考 caffe/tools/convert_imageset.cpp)。控制台中没有错误,但 .mdb 文件的文件大小保持为零,即没有数据写入文件,但创建了数据和锁定文件。我尝试的代码部分是:

scoped_ptr<db::DB> db(db::GetDB("lmdb"));
db->Open(argv[3], db::NEW);
scoped_ptr<db::Transaction> txn(db->NewTransaction());

datum.SerializeToString(&out);
txn->Put(key1, out);
txn->Commit();

我无法弄清楚我是否遗漏了什么。任何有关 LMBD 工作原理的参考资料都会有所帮助。

4

1 回答 1

1

在调用之前确保密钥不为空Put
您可以使用mdb_dump和打印数据库的内容。

于 2016-06-05T19:46:03.333 回答