C++ 从C+;访问PostgreSQL数据库的更可靠方法+;

C++ 从C+;访问PostgreSQL数据库的更可靠方法+;,c++,postgresql,orm,C++,Postgresql,Orm,我正在使用libpqxx访问PostgreSQL数据库。它提供了非常低级的接口,所以查询实际上是使用字符串操作手工构造的。我觉得这种方法有一些缺点: 打字错误可能性 无类型检查 很多笔迹 因此,大多数错误都会在运行时被注意到。我希望在编译时有更多的检查,以便我编写和发布的代码更可靠。 我的问题有解决方案吗?你们有单元测试吗?@AlanBirtles是的,我有。但根据定义,它们不能包括对数据库等外部资源的访问。你的单元测试可以做你想做的任何事情,我所有的数据库访问类都有单元测试,可以用测试数据

我正在使用libpqxx访问PostgreSQL数据库。它提供了非常低级的接口,所以查询实际上是使用字符串操作手工构造的。我觉得这种方法有一些缺点:

  • 打字错误可能性
  • 无类型检查
  • 很多笔迹
因此,大多数错误都会在运行时被注意到。我希望在编译时有更多的检查,以便我编写和发布的代码更可靠。
我的问题有解决方案吗?

你们有单元测试吗?@AlanBirtles是的,我有。但根据定义,它们不能包括对数据库等外部资源的访问。你的单元测试可以做你想做的任何事情,我所有的数据库访问类都有单元测试,可以用测试数据库访问真实的数据库系统你想要什么样的编译时检查?打字错误是一个什么样的问题,无论你用什么都会是一个问题?您需要什么类型的类型检查?@ChrisMM类似于某些ORM提供的编译时类型检查。只有当列名可以被编译器检查时,输入错误才不是问题。