ODBC与特定RDBMS API有什么好处?

时间:2009-08-13 23:12:02

标签: database odbc

我相信ODBC已经达到了在数据库引擎和操作系统上更可靠和可移植的程度。如果考虑使用直接RDBMS API,则速度优化的机会并不太多。

此外,ODBC抽象确实使源代码更具可移植性,因此迁移到新的RDBMS不需要完整的代码重写!

尽管如此,使用直接API可以通过删除抽象层来执行ODBC,并且特定的RDBMS低级别约束可以提供对特定RDBMS完整功能的访问。

你怎么看待这个?

2 个答案:

答案 0 :(得分:3)

通过ODBC发送的查询不是真正可移植的,除非您使用可怕的ODBC Escape Sequences。即使这样,“可移植”部分也只是SQL语法的一小部分(例如,没有DDL)。

坦率地说,我从没见过一个项目在这方面取得成功。它们最多支持一组经过测试的驱动程序,比如SQL / Oracle / DB2,就是这样。更好的方法是抽象应用程序数据访问层,并为您支持的每个后端提供不同的实现。

答案 1 :(得分:1)

我认为在使用ORM框架时会有更好的整体灵活性,比如Hibernate等(取决于编程环境)......