SQL Server Native Client ODBC ドライバーは、SQLGetStmtAttr を拡張して、ドライバー固有のステートメント属性を公開します。
SQLSetStmtAttr には、読み取りと書き込みの両方のステートメント属性が一覧表示されます。 このトピックでは、読み取り専用ステートメント属性の一覧を示します。
SQL_SOPT_SS_CURRENT_COMMAND
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 オフです。 SQLRowCount は、影響を受ける行の数を返します。 |
| SQL_NC_ON | NOCOUNT オンです。 影響を受ける行の数は 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
SQL_SOPT_SS_QUERYNOTIFICATION_MSGTEXT属性は、クエリ通知要求のメッセージ テキストを返します。
SQLGetStmtAttr パラメーターとテーブル値パラメーター
SQLGetStmtAttr を呼び出して、テーブル値パラメーターを操作するときに、アプリケーション パラメーター記述子 (APD) のSQL_SOPT_SS_PARAM_FOCUSの値を取得できます。 SQL_SOPT_SS_PARAM_FOCUSの詳細については、「 SQLSetStmtAttr」を参照してください。
テーブル値パラメーターの詳細については、「 Table-Valued Parameters (ODBC)」を参照してください。