跨版本兼容性

如果期望让早于 SQL Server 2008 的 SQL Server 客户端或服务器实例处理表值参数,则会发生跨版本冲突。

通常,表值参数功能仅对连接到 SQL Server 2008(或更高版本)服务器的 SQL Server 2008 客户端(使用 SQL Server Native Client 10.0)或更高版本可用。目录函数结果集中的新列将仅在连接到 SQL Server 2008(或更高版本)服务器时才出现。

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

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

请参阅

概念