2

我第一次使用 ODB:来自 Code Synthesis 的 C++ Object-Relational Mapping (ORM)。这是一个类似于 C# 的 .NET EntityFramework 的工具,它允许您通过 C++ 在各种关系数据库上执行创建、读取、更新和删除 (CRUD) 操作。我正在使用下载附带的示例文件熟悉该工具。我专门使用hello 示例通过 SQLite 数据库持久保存人员对象。

通过下载中的 INSTALL 和 README 文件遵循设置说明并执行driver.cxx程序后,我看到人员对象更改通过t.commit()文件中的命令提交到数据库。

我的问题是:一旦程序执行完毕,数据库存储在哪里?它是否存储在C:\Program Files\odb\odb-examples-2.4.0\hello\Release\driver.exe所在的 Release 文件夹中?它是否存储在我忽略的其他地方?

这是我的环境设置...

  1. 操作系统 = Windows 10 专业版
  2. IDE = Visual Studio 2015 社区
  3. SQLite =C:\Program Files\sqlite\sqlite-autoconf-3090200\sqlite3.c
  4. ODB 编译器 =C:\Program Files\odb\odb-2.4.0-i686-windows\bin\odb.exe
  5. ODB 运行时 =C:\Program Files\odb\libodb-2.4.0
  6. ODB Hello 示例 =C:\Program Files\odb\odb-examples-2.4.0\hello
  7. 示例 Visual Studio .sln 文件 =C:\Program Files\odb\odb-examples-2.4.0\examples-sqlite-vc12.sln

如果我可以提供更多信息,请告诉我,并感谢您的帮助。

4

1 回答 1

1

如果您是从 odb 编译原始的 sqlite hello world 示例,那么数据库将存储在您的计算机内存中。如果您不是特定的数据库文件,Odb 将生成它(对于 sqlite)。但是,当您提供特定的数据库文件时,例如:

odb::sqlite::database db("person.db");

那么你必须把你的 person.db 文件和执行文件放在一起。

于 2015-12-30T14:09:29.627 回答