背景:
我有一个用本机 C++ 编写的应用程序,它使用 wxWidgets 工具包的 wxODBC 数据库访问库,该库正在从所有未来版本的 wxWidgets中删除。我需要用另一种支持下面概述的假设和约束的数据库访问方法来替换它。我不要求替换使用本机 DBMS API 或 ODBC,但它必须满足下面列出的限制。
假设/约束
图书馆必须:
- 支持本机(即非托管)C++
- 32 位 Windows 2000/XP/2003
- 视觉工作室 2005
- 微软 SQL Server 2000 和 2005
- 甲骨文 9 和 10
- 运行时性能大于或等于 wxODBC
- 支持多个 DBMS 的单个程序员 API(例如,不想为使用不同的 DBMS 编写不同的代码)
不错但可选:
- 64 位 Windows 操作系统
- 32 位和/或 64 位 Linux 操作系统
- 微软 SQL 服务器 2008
- 甲骨文 11
- MySQL
- 任何额外的 DBMS
- 视觉工作室 2008
- 开源
- 运行时性能接近或等于原生 DBMS API
问题:
有哪些好的库(免费、开源或付费)可以从一个 API(包括 Oracle 和 Microsoft SQL Server)支持多个 DBMS,并且可以从本机 C++ 中使用?
请描述您过去在给定库方面的任何经验 - 好的或坏的 - 以及您为什么推荐或反对给定库,特别是关于上述假设和限制。
也可以看看:
https://stackoverflow.com/questions/74141/good-orm-for-c-solutions