表值参数数据转换及其他错误和警告

适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics 平台系统(PDW)

表值参数列值可按照与其他列和参数值相同的方式在客户端和服务器数据类型之间转换。 但是由于表值参数可以包含多个列和多个行,所以必须能够标识出现错误的实际值,这一点很重要。

在表值参数列中检测到错误或警告时,SQL Server Native Client 将生成诊断记录。 错误消息将包含表值参数的参数编号,以及列序号和行号。 应用程序还可以使用诊断记录中的诊断字段 SQL_DIAG_SS_TABLE_COLUMN_NUMBER 和 SQL_DIAG_SS_TABLE_ROW_NUMBER 确定与错误和警告关联的值。 SQL Server 2008(10.0.x)及更高版本中提供了这些诊断字段。

诊断记录的 SQLSTATE 和消息部分将在所有其他方面符合现有的 ODBC 行为。 也就是说,除了参数、行和列标识信息之外,错误消息对表值参数的值与非表值参数的值相同。

另请参阅

表值参数 (ODBC)