我正在编写一个简单的C ++应用程序,它可能安装在Linux或Windows上,并且将连接到数据库。我希望我的应用程序至少与Oracle和MySQL(或PostgreSQL)兼容。
您建议使用哪个C或C ++库来处理数据库查询:我对任何库都开放,无论它是非常薄(只执行SQL查询)还是非常胖(整个对象持久层,集群等)。
请给每个答案一个库。一点描述(利弊)会很棒。非常感谢。
我喜欢使用SOCI,它非常像C ++。就Oracle数据库的性能而言,它与本机OCI相当。它为一些RDBMS提供后端:
还有一些在CVS存储库中。
它使用起来相当简单,文档很全面,理由很清楚。它支持连接池,具有很好的可扩展的数据类型之间的转换方式。
这正是ODBC的设计目标。是的,它是由微软设计的,但几乎每个平台都有实现,现在几乎每个数据库产品都有。
我使用SQLAPI ++,它是一个很棒的产品。你可以免费试用它,它很容易上手,它们的支持非常棒。
真的吗? Data Providers。
没有什么比为每个数据库定制数据调用更好的了。通用解决方案往往有太多的妥协IMO。
实际上,随着时间的推移,你最好远离数据提供者API,你将遭受版本控制和默认的参数化问题。当你真正需要完全优化的后端时,最好是使用SOCI,否则坚持使用OTL4.0进行ODBC调用等任何服务商。