SQLGetConnectAttr

SQL Native Client ODBC ドライバでは、ドライバ固有の接続属性が定義されます。SQLGetConnectAttr 関数では、このような属性のいくつかを使用できるので、この関数を使用してこれらの属性に関する現在の設定を報告できます。接続が成功するまで、または SQLSetConnectAttr を使用して属性が設定されるまで、これらの属性について報告される値は保証されません。

SQL_COPT_SS_ANSI_NPW

SQL_COPT_SS_ANSI_NPW 属性では、NULL 比較、文字データ型の埋め込み、警告レベル、および NULL 連結における ANSI 処理の使用を有効または無効にできます。詳細については、「SET ANSI_NULLS」、「SET ANSI_PADDING」、「SET ANSI_WARNINGS」、および「SET CONCAT_NULL_YIELDS_NULL」を参照してください。

説明

SQL_AD_ON

既定値。接続では、NULL 比較、埋め込み、警告、および NULL 連結に ANSI の既定動作が使用されます。

SQL_AD_OFF

接続では、NULL 比較、文字データ型の埋め込み、警告、および NULL 連結に SQL Server で定義された処理が使用されます。

SQL_COPT_SS_CONNECTION_DEAD

SQL_COPT_SS_CONNECTION_DEAD 属性では、サーバーへの接続状態が報告されます。ドライバでは、接続の現在状態を Net-Library に照会します。

説明

SQL_CD_TRUE

サーバーへの接続が失われました。

SQL_CD_FALSE

接続が開かれており、ステートメントの処理に使用できます。

SQL_COPT_SS_FAILOVER_PARTNER

SQL_COPT_SS_FAILOVER_PARTNER 属性を使用して、SQL Server 2005 でデータベース ミラーリングに使用されるフェールオーバー パートナーの名前を取得します。この属性に設定する文字列は NULL で終わり、SQL Server に最初に接続する前に SQLSetConnectAttr を使用して設定しておく必要があります。

接続後は、アプリケーションでこの属性を照会することにより、フェールオーバー パートナーの ID を判別できます。プライマリ サーバーのフェールオーバー パートナーが存在しないと、この属性は空文字列を返します。アプリケーションでは最後に判別したバックアップ サーバーをキャッシュできますが、この情報は最初に接続を確立したとき、または接続がリセットされたとき (接続がプールされている場合) にだけ更新されることに注意する必要があります。接続が長期にわたると、この情報は古くなることがあります。

SQL_COPT_SS_PERF_DATA

SQL_COPT_SS_PERF_DATA 属性は、現在のドライバのパフォーマンス統計情報を保持する SQLPERF 構造体へのポインタを返します。SQLGetConnectAttr では、パフォーマンスのログ記録が無効の場合は NULL を返します。SQLPERF 構造体内の統計情報がドライバで動的に更新されることはありません。パフォーマンス統計情報の更新が必要になるたびに SQLGetConnectAttr を呼び出してください。

説明

NULL

パフォーマンスのログ記録が無効です。

その他の値

SQLPERF 構造体へのポインタ。

SQL_COPT_SS_PERF_QUERY

SQL_COPT_SS_PERF_QUERY 属性は、実行時間の長いクエリのログ記録が有効の場合に TRUE を返します。クエリのログ記録が無効の場合は FALSE を返します。

SQL_COPT_SS_PRESERVE_CURSORS

この属性を使用して、トランザクションをコミットまたはロールバックするときに接続でカーソルを保持するかどうかを照会および設定できます。設定値は、SQL_PC_ON または SQL_PC_OFF です。既定値は SQL_PC_OFF です。この設定は、SQLEndTran (または SQLTransact) を呼び出すときにドライバによってカーソルを閉じるかどうかを制御します。

説明

SQL_PC_OFF

既定値。トランザクションを SQLEndTran を使用してコミットまたはロールバックすると、カーソルが閉じられます。

SQL_PC_ON

トランザクションを SQLEndTran を使用してコミットまたはロールバックしてもカーソルは閉じられません。ただし、非同期モードで静的カーソルまたはキーセット カーソルを使用している場合は除きます。カーソルのデータ設定が完了していないときにロールバックが行われると、そのカーソルは閉じられます。

SQL_COPT_SS_QUOTED_IDENT

SQL_COPT_SS_QUOTED_IDENT 属性を使用すると、その接続で送信される ODBC ステートメントや Transact-SQL ステートメントで、引用符で囲まれた識別子を指定できます。引用符で囲まれた識別子を指定することにより、SQL Native Client ODBC ドライバで "My Table" のように識別子に空白が含まれている無効なオブジェクト名でも使用できます。

説明

SQL_QI_OFF

SQL Server 接続では、送信される Transact-SQL ステートメントで、引用符で囲まれた識別子を指定できません。

SQL_QI_ON

既定値。接続では、送信される Transact-SQL ステートメントで、引用符で囲まれた識別子を使用できます。

SQL_COPT_SS_TRANSLATE

SQL_COPT_SS_TRANSLATE 属性では、MBCS データを交換するときの文字の変換が制御されます。この属性は、SQL Server の char 列、varchar 列、および text 列に格納されたデータのみに影響します。

説明

SQL_XL_OFF

SQL Native Client ODBC ドライバでは、クライアントとサーバー間で文字データを交換する際に、あるコード ページから別のコード ページに文字が変換されません。

SQL_XL_ON

既定値。SQL Native Client ODBC ドライバでは、クライアントとサーバー間で文字データを交換する際に、あるコード ページから別のコード ページに文字が変換されます。SQL Native Client ODBC ドライバでは、サーバーにインストールされているコード ページとクライアントで使用されているコード ページが判別され、文字の変換が自動的に構成されます。

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE

SQL_COPT_SS_TRUST_SERVER_CERTIFICATE 属性では、暗号化を使用しているときに、ドライバによる証明書の検証を有効または無効にできます。この属性の値は読み書き可能ですが、接続を確立した後に値を設定しても、設定は有効にはなりません。

クライアント アプリケーションでは、接続を開いた後にこの属性を照会して、実際に使用されている暗号化と検証の設定を判断できます。

説明

SQL_TRUST_SERVER_CERTIFICATE_NO

既定値。証明書の検証を伴わない暗号化が無効です。

SQL_TRUST_SERVER_CERTIFICATE_YES

証明書の検証を伴わない暗号化が有効です。

SQL_COPT_SS_USE_PROC_FOR_PREP

SQL Native Client では SQL Server 6.5 への接続がサポートされないので、SQL_COPT_SS_USE_PROC_FOR_PREP 属性はサポートされなくなりました。

SQL_COPT_SS_USER_DATA

SQL_COPT_SS_USER_DATA 属性は、ユーザー データ ポインタを取得します。ユーザー データはクライアントのメモリに格納され、接続ごとに記録されます。ユーザー データ ポインタが設定されていない場合、SQL_UD_NOTSET という NULL ポインタが返されます。

説明

SQL_UD_NOTSET

ユーザー データ ポインタが設定されていません。

その他の値

ユーザー データへのポインタです。

参照

概念

ODBC API 実装の詳細

その他の技術情報

区切られた識別子 (データベース エンジン)
SET ANSI_NULLS (Transact-SQL)
SET ANSI_PADDING (Transact-SQL)
SET ANSI_WARNINGS (Transact-SQL)
SQLGetConnectAttr 関数

ヘルプおよび情報

SQL Server 2005 の参考資料の入手