複数バージョン間の互換性
適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
バージョン間の競合は、SQL Server 2008 (10.0.x) より前の SQL Server のクライアントまたはサーバー インスタンスがテーブル値パラメーターを処理することが予想される場合に発生する可能性があります。
一般に、テーブル値パラメーター機能は、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 とメッセージ "Restricted data type attribute violation" として返します。
SQL Server Native Client 10.0 以降でコンパイルされたクライアント アプリケーションが、SQL Server 2008 (10.0.x) より前のサーバー インスタンスに接続されているときにテーブル値パラメーターを使用しようとすると、SQL Server Native Client はこれを検出します。 および SQLBindCol、SQLBindParameter、SQLSetDescFields、および SQLSetDescRec の呼び出しは、SQLSTATE 07006 で失敗し、"Restricted data type attribute violation (the version of SQL Server for this connection does not support table-valued parameters)" というメッセージが表示されます。