SQLGetStmtAttr

適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics 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 オプションの現在の設定を示します。これは、SQL Server が、 SQLRowCount が呼び出されたときにステートメントの影響を受ける行数を報告するかどうかを制御します。 ValuePtr 値は SQLLEN 型です。

Value 説明
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を参照してください。

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

参照

SQLSetStmtAttr 関数
ODBC API 実装の詳細