利用ODBC转换功能

时间:2009-07-17 20:27:14

标签: sql odbc

SQLNativeSql() function文档的底部,似乎表明ODBC驱动程序执行翻译

它说:

以下是SQLNativeSql可能为包含标量函数CONVERT的以下输入SQL字符串返回的示例。假设列empid在数据源中的类型为INTEGER:
SELECT { fn CONVERT (empid, SQL_SMALLINT) } FROM employee
Microsoft SQL Server的驱动程序可能会返回以下已翻译的SQL字符串:
SELECT convert (smallint, empid) FROM employee
ORACLE Server的驱动程序可能会返回以下已翻译的SQL字符串:
SELECT to_number (empid) FROM employee
Ingres的驱动程序可能会返回以下已翻译的SQL字符串:
SELECT int2 (empid) FROM employee

这是真的吗? ODBC 真的可以转换SQL查询,这样理想情况下,您的应用程序可以通过ODBC发送查询在任何数据库系统上运行吗?

在实践中这确实有效吗?

在哪里可以找到“ODBC SQL语法”列表?

1 个答案:

答案 0 :(得分:1)

翻译取决于驱动程序本身。在许多情况下,它将返回您提供的确切SQL语句。因此,没有ODBC不提供灵丹妙药。您仍然需要担心运行查询的数据库。如果使用多个数据库引擎,则应用程序必须为每个引擎定制查询(或使用在所有数据库上运行的通用SQL)。