跨版本兼容性
适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics 平台系统(PDW)
如果 SQL Server 早于 SQL Server 2008(10.0.x)的客户端或服务器实例应处理表值参数,则可能会出现跨版本冲突。
通常,表值参数功能仅适用于连接到 SQL Server 2008 (10.0.x) (或更高版本)的 SQL Server 2008 (10.0.x) 客户端(使用 SQL Server Native Client 10.0)或更高版本。 仅当连接到 SQL Server 2008 (10.0.x) (或更高版本)服务器时,目录函数结果集中的新列才会存在。
如果使用早期版本的 SQL Server Native Client 编译的客户端应用程序执行需要表值参数的语句,则服务器会通过数据转换错误检测此条件,ODBC 将返回此情况作为 SQLSTATE 07006 和消息“受限数据类型属性冲突”。
如果使用 SQL Server Native Client 10.0 或更高版本编译的客户端应用程序在连接到早于 SQL Server 2008(10.0.x)的服务器实例时尝试使用表值参数,则 SQL Server Native Client 将检测到此情况, 和 SQLBindCol、SQLBindParameter、SQLSetDescFields 和 SQLSetDescRec 调用将失败,SQLSTATE 07006 和消息“此连接的 SQL Server 版本不支持表值参数”。