SQLGetStmtAttr

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

SQL Server Native Client ODBC ドライバーは、SQLGetStmtAttr を拡張して、ドライバー固有のステートメント属性を公開します。

SQLSetStmtAttr には、読み取りと書き込みの両方のステートメント属性が一覧表示されます。 ここでは、読み取り専用のステートメント属性のみを示します。

SQL_SOPT_SS_CURRENT_COMMAND

コマンド バッチの現在のコマンドを公開します。 バッチ内のコマンドの位置を表す整数を返します。 ValuePtr 値の型は SQLLEN です。

SQL_SOPT_SS_NOCOUNT_STATUS

SQL_SOPT_SS_NOCOUNT_STATUS属性は、NOCOUNT オプションの現在の設定を示します。これは、SQLRowCount が呼び出されたときにステートメントの影響を受ける行数SQL Server報告するかどうかを制御します。 ValuePtr 値の型は SQLLEN です。

説明
SQL_NC_OFF NOCOUNT を OFF にします。 SQLRowCount は、影響を受ける行の数を返します。
SQL_NC_ON NOCOUNT を ON にします。 影響を受ける行の数は SQLRowCount によって返されず、返される値は 0 です。

SQLRowCount が 0 を返す場合、アプリケーションはSQL_SOPT_SS_NOCOUNT_STATUSをテストする必要があります。 SQL_NC_ON が返される場合、SQLRowCount から返される値が 0 であると、SQL Server から行数が返されなかったことを示します。 SQL_NC_OFF が返される場合、NOCOUNT が無効になっており、SQLRowCount から返される値が 0 であると、ステートメントで処理された行がなかったことを示します。

SQL_SOPT_SS_NOCOUNT_STATUS が SQL_NC_OFF のときは、アプリケーションでは、SQLRowCount の値を表示しないでください。 大きなバッチやストアド プロシージャには、複数の SET NOCOUNT ステートメントが含まれていることがあるので、SQL_SOPT_SS_NOCOUNT_STATUS が一定であると想定することはできません。 このオプションは、SQLRowCount が 0 を返すたびにテストする必要があります。

SQL_SOPT_SS_QUERYNOTIFICATION_MSGTEXT

クエリ通知要求のメッセージ テキストを返します。

SQLGetStmtAttr とテーブル値パラメーター

SQLGetStmtAttr を呼び出して、テーブル値パラメーターを操作するときに、アプリケーション パラメーター記述子 (APD) でSQL_SOPT_SS_PARAM_FOCUSの値を取得できます。 SQL_SOPT_SS_PARAM_FOCUSの詳細については、「 SQLSetStmtAttr」を参照してください。

テーブル値パラメーターの詳細については、「テーブル値パラメーター (ODBC)」を参照してください。

参照

SQLSetStmtAttr 関数
ODBC API 実装の詳細