跨版本兼容性

如果早于 SQL Server 2008 的 SQL Server 客户端或服务器实例处理表值参数,则可能会出现跨版本冲突。

通常,表值参数功能仅适用于使用 SQL Server Native Client 10.0) (SQL Server 2008 客户端,这些客户端连接到 SQL Server 2008 (或更高版本) 服务器。 只有在连接到 SQL Server 2008 (或更高版本) 服务器时,才会显示目录函数结果集中的新列。

如果使用早期版本的 SQL Server Native Client 编译的客户端应用程序执行需要表值参数的语句,则服务器会通过数据转换错误检测此情况,并且 ODBC 会以 SQLSTATE 07006 和消息“受限数据类型属性冲突”的形式返回此情况。

如果使用 SQL Server Native Client 10.0 或更高版本编译的客户端应用程序在连接到早于 SQL Server 2008 的服务器实例时尝试使用表值参数,SQL Server Native Client将检测到此情况,并且 SQLBindCol、SQLBindParameter、SQLSetDescFields 和 SQLSetDescRec 调用将失败,SQLSTATE 07006 和消息“受限制的数据类型属性冲突 (此连接的 SQL Server 版本不支持表值参数) ”。

另请参阅

表值参数 (ODBC)