DB2Connection.ConnectionString プロパティー

データベース接続のオープンに使用されるストリングを取得または設定します。

名前空間:
IBM.Data.DB2
アセンブリー:
IBM.Data.DB2 ( IBM.Data.DB2.dll内)

構文

[Visual Basic]
Public Property ConnectionString As String  Implements _
   IDbConnection.ConnectionString
[C#]
public string ConnectionString {get; set;}
[C++]
public: __property String* get_ConnectionString();
public: __property void set_ConnectionString(String*);
[JScript]
public function get ConnectionString() : String;
public function set ConnectionString(String);
インプリメント:
IDbConnection.ConnectionString

プロパティー値

初期接続の確立のために必要な、データベース名など、設定値を含む接続ストリング。 デフォルト値は空ストリング ("") です。 最大長は 1024 文字です。

注釈

ConnectionString プロパティーを使用して、サポートされている任意のデータ・サーバーに接続できます。 ConnectionString プロパティーを設定できるのは、接続がクローズされているときだけです。

サポートされるキーワードは、以下のとおりです。

重要: pureQuery® キーワードのみが大/小文字の区別をします。
表 1. 共通キーワード
キーワード デフォルト 説明
Database   データベースの別名を指定します。 Database キーワードの値の最大サイズは、255 バイトです。
NewPWD   ユーザー ID に対する新規パスワードを指定します。
Password | PWD   パスワードを指定します。
Server   直接接続用のオプションのポート番号を伴うサーバー名を指定します。 IPv4 表記 (server_name|ip_address[:port]) または IPv6 表記のいずれかを使用します。
User ID | UID   ユーザー ID を指定します。
表 2. pureQuery キーワード
キーワード デフォルト 説明
allowDynamicSQL TRUE pureQueryXML ファイル内に取り込まれていない、または取り込まれてはいるがバインドされていない SQL ステートメントの動的な実行をアプリケーションが行えるようにするかどうかを指定します。
capturedOnly False pureQueryXML ファイル内にある SQL ステートメントのみを実行するかどうかを指定します。
captureMode OFF SQL ステートメントに関する情報を取り込むかどうかと、取り込む情報のタイプを指定します。 captureMode キーワードに onexecutionMode キーワードに static の両方を設定した場合、エラーがスローされます。
enableDynamicSQLReplacement False 元のステートメントと代替ステートメントの両方がバインドされなかった場合に pureQueryXML ファイルにある代替 SQL ステートメントを実行するかどうかを指定します。
executionMode ダイナミック (DYNAMIC) 以前にキャプチャーされたステートメントが pureQuery テクノロジーを使用して静的に実行されるかどうかを示します。 captureMode キーワードに onexecutionMode キーワードに static の両方を設定した場合、エラーがスローされます。
maxNonParmSQL -1 取り込む対象の、パラメーター化されていない SQL ステートメントの最大数を指定します。 このキーワードは、captureMode キーワードの値が ON である場合にのみ適用されます。 captureMode キーワードの値が OFFの場合、 maxNonParmSQL キーワード値は無視されます。
propertiesGroupId   データベース内に作成されたリポジトリー内のランタイム・グループ ID を指定します。
pureQueryXML   pureQuery キャプチャー・ファイルのファイル名とパスを指定します。
pureQueryXmlRepository   pureQuery クライアント最適化が有効になっている .NET アプリケーションで使用される pureQueryXML ファイル・データを格納するリポジトリーを指定します。
repositoryRequired いいえ pureQuery データの取得中または書き込み中にエラーが発生した場合の、pureQuery クライアント最適化の動作を指定します。
sqlLiteralSubstitution NOT_SET リテラル値の代わりに pureQuery クライアント置換パラメーター・マーカーを使用することによって、構文を共有し、リテラル値のみが異なる SQL ステートメントをキャプチャーして統合するかどうかを指定します。
traceFile pureQuery ログ・ファイルの名前を指定します。
traceLevel OFF ログ・ファイルに書き込む詳細情報のレベルを指定します。
表 3. 追加のキーワード
キーワード デフォルト 説明
Authentication   認証のタイプを指定します。 許容値は次のとおりです。
  • CERTIFICATE
  • DATA_ENCRYPT
  • GSSPLUGIN
  • KERBEROS
  • サーバー
  • SERVER_ENCRYPT
  • token
    注: このオプションは、 Db2® バージョン 11.5.4以降で使用可能です。
重要: DATA_ENCRYPT 認証タイプは非推奨になっており、将来のリリースで除去される可能性があります。 クライアントと Db2 データベースの間で転送中のデータを暗号化するには、 Transport Layer Security (TLS)Db2 データベース・システム・サポートを使用することをお勧めします。 詳しくは、「 転送中のデータの暗号化」を参照してください。
ClientAccountingString   データベースに送信されるクライアント・アカウンティング・ストリングを指定します。
ClientApplicationName   データベースに送信されるクライアント・アプリケーション名を指定します。
ClientEncAlg   Advanced Encryption Standard (AES) 暗号化を使用するかどうかを指定します。 許容値は AES です。
ClientUserID   データベースに送信されるクライアント・ユーザー ID を指定します。
ClientWorkStationName   データベースに送信されるクライアント・ワークステーション名を指定します。
CodePage 0 コード・ページ ID を指定します。
ConcurrentAccessResolution   並行アクセスの解決を表すストリング値を指定します。 許容値は次のとおりです。
CurrentlyCommitted
現在コミット済みバージョンのデータを使用します。
SkipLockedData
レコード・ロック競合の場合に行をスキップします。 SkipLockedData オプションは、 Db2 for z/OS® バージョン 10 以降のサーバーでのみサポートされます。
WaitForOutcome
ロックされた行が検出された場合にコミット・アクションまたはロールバック・アクションを待機します。

クライアントで ConcurrentAccessResolution キーワード値が指定されていない場合は、データベース・サーバーがデフォルトの動作を定義します。

Db2 for IBM® i サーバーの場合: ConcurrentAccessResolution プロパティーは、 Db2 for IBM i V7R1 以降のサーバーでのみサポートされます。

ConnectNodeNumber 0 から 999 接続先のデータベース・パーティション・サーバーを指定します。
Connection Lifetime 60 接続プール内で接続がアイドルのままであることが可能な時間の長さ (秒数) を指定します。
Connection Reset false 接続をクローズするとき、その接続を接続プールに入れるかどうかを指定します。 許容値は次のとおりです。
false
接続をクローズするとき、その接続を接続プールに入れます。
true
接続をクローズするとき、その接続を接続プールに入れません。
Connection Timeout | Connect Timeout | Timeout 0 データベース接続の確立を待機する時間 (秒単位) を指定します。 値 0 は、データベース接続の確立に関する時間制限がないことを示します。 クライアント・リルートが有効になっている場合、代替サーバーへの 2 回目の接続試行があるため、最大待機時間は、指定された接続タイムアウトの約 2 倍になります。

高可用性ソリューションが有効であるかどうかに関係なく、接続には接続タイムアウト値が適用されます。 接続タイムアウト値で指定された時間内に接続の試行が失敗した場合、SQL30081N エラーとともに制御がアプリケーションに返されます。 すべての代替サーバーでの試行の有無に関係なく、エラーと制御が返されます。

CurrentFunctionPath   動的 SQL ステートメント内の関数参照およびデータ・タイプ参照の解決で使用するスキーマ名のリストを指定します。
CurrentPackageSet   各接続の後で SET CURRENT PACKAGESET ステートメントを発行します。
CurrentSchema   現在の接続で使用する、非修飾のすべての SQL オブジェクトの修飾に使用するスキーマ名を指定します。
CurrentSQLID   Db2 for z/OS サーバーへの現行接続で使用されるすべての非修飾 SQL オブジェクトを修飾するために使用される SQLID を指定します。 Db2 for z/OS以外のサーバーでは、 CurrentSQLID キーワードを設定することは、 CurrentSchema キーワードを設定することと同等です。
DB2Explain OFF Explain スナップショットまたは Explain 表、あるいはその両方のタイプの情報をサーバーで生成するかどうかを決定します。 許容値は次のとおりです。
OFF
スナップショットおよび表に関する Explain 情報を生成しません。
スナップショット
スナップショットに関する Explain 情報を生成します。
SnapshotAndテーブル
スナップショットおよび表に関する Explain 情報を生成します。
テーブル
表に関する Explain 情報を生成します。
DBName データベース名を指定します。 このキーワードは、 Db2 for z/OS および OS/390® サーバーに接続する場合、およびアプリケーションが基本表カタログ情報を要求する場合にのみ使用されます。 z/OS または OS/390 サブシステムに多数の表が存在する場合は、 DBName キーワードを指定して、アプリケーションが表情報を照会する時間を短縮し、結果セット内の表情報の量を減らすことができます。
DelimIdent 接続された Informix® データベースサーバ が区切り文字付き SQL 識別子をサポートする必要があるかどうかを指定します。 DelimIdent キーワードには、以下のいずれかの値を設定することができます。
0
これは誤解です。 接続されている Informix データベースサーバ が、区切り文字で区切られている SQL 識別子をサポートする必要がないことを示します。
1
正解は「正」です。 接続された Informix データベースサーバ が、区切り文字で区切られている SQL 識別子をサポートする必要があることを示します。
DisableCursorHold false
サーバー上のオープン・カーソルが、トランザクションがコミットされた後、開いたままにするかどうかを指示します。 許容値は次のとおりです。
false
サーバー上のオープン・カーソルはトランザクションがコミットされた後、開いたままにされます。
true
サーバー上のオープン・カーソルはトランザクションがコミットされた後、閉じられます。
Enlist true 分散トランザクション・コーディネーター (DTC) への登録が許可されるかどうかを指示します。 許容値は次のとおりです。
false
DTC への登録は許可されません。
true
DTC への登録が許可されます。 登録は、接続時間に COM+ トランザクションが進行中の場合にのみ行われます。
FetchBufferSize 64K データ・フローを最適化するためにデフォルトの照会ブロック・サイズを指定します。 IBM Data Server Provider for .NET では、照会ブロック・サイズは 32K の倍数 (つまり、 64K、 96K、 128K、 160K、 192K、 224K、および 256K) でのみ許可されます。

32K の倍数ではない照会ブロック・サイズの FetchBufferSize 値は、64K から 256K の範囲内である場合は、最も近い次の 32K 境界に切り上げられます。 有効な範囲 (64K から 256K) 以外に設定された値は、次に最も近い有効な範囲内の 32K ブロック・サイズに丸められます。

FitHighPrecisionType ReturnException IBM Data Server Provider for .NET が高精度データを .NET システム・タイプに変換する方法を指定します。 許容値は次のとおりです。
AsString
列が .NET String 型に変換されます。
ReturnException
値が .NET システム型に適合しない場合、切り捨て例外が発生します。
WithTruncate
必要に応じて列値を通知なしで切り捨てた後、.NET システム型を返します。
HostVarParameter false ホスト変数 (:param) のサポートが使用可能かどうかを指示します。 許容値は次のとおりです。
false
ホスト変数サポートは使用不可です。
true
ホスト変数サポートは使用可能です。
Interrupt

バージョン 10.5 GA およびフィックスパック 1: 1

バージョン 10.5 フィックスパック 2 以降:
  • 1 ( Db2 for z/OS サーバー以外のすべてのデータベース・サーバーへの接続の場合)
  • 2 ( Db2 for z/OS サーバーへの接続の場合)
割り込み処理モードを指定します。 許容値は次のとおりです。
0
割り込み処理は無効です。
1
サーバーで割り込みがサポートされている場合は、割り込みが送信されます。 それ以外の場合は、接続がドロップされます。
※2
サーバーの割り込み機能に関係なく、割り込みによって接続がドロップされます。
Isolation Level | IsolationLevel   接続の分離レベルを指定します。 許容値は次のとおりです。
  • Chaos
  • ReadCommitted
  • ReadUncommitted
  • RepeatableRead
  • シリアライズ可能 (Serializable)
  • TRANSACTION
Chaos オプションは、 Db2 for IBM i サーバーに接続されているアプリケーションに対してのみサポートされます。

分離レベルを 「トランザクション」に設定すると、分離レベルは Transaction.Current.IsolationLevelの値に設定されます。

LibraryList   この接続のためにサーバーがロードする必要のあるライブラリーを指定します。
Max Pool Size No maximum 最大プール・サイズを指定します。
Min Pool Size 0 最小プール・サイズを指定します。
Persist Security Info false 機密性の高い情報を返すかどうかを指示します。 許容値は次のとおりです。
false
機密性の高い情報を接続ストリングの一部として返しません。 機密性の高い情報の公開を回避します。
true
接続のオープン後や、接続がずっとオープン状態のままのときに、パスワードなどの機密性の高い情報を接続ストリングの一部として返すことを許可します。
Pooling true 接続プールを使用不可にするかどうかを指示します。 許容値は次のとおりです。
false
接続プールは使用不可です。
true
接続プールは使用可能です。
ProgramId   データベースに送信されるプログラム ID を指定します。
ProgramName   データベースに送信されるプログラム名を指定します。
QueryTimeout SQL ステートメントまたは XQuery 式の完了を待機する秒数を指定します。 QueryTimeout キーワードは、実行を取り消してアプリケーションに制御を返す前に、SQL ステートメントまたは XQuery 式の実行完了を待機するデフォルトの秒数を示します。 このキーワードは、DB2Command.CommandTimeout プロパティーのデフォルト値 (30 秒) をオーバーライドします。
ResultArrayAsReturnValue false Informix ユーザ定義ルーチン (UDR) からの結果セットが、 ReturnValue型のパラメータとして戻されるかどうかを示します。 値は、次のとおりです。
false
結果セットは ReturnValue タイプのパラメーターとして返されません。
true
結果セットは ReturnValue タイプのパラメーターとして返されます。
ReturnValue パラメーターがパラメーターのコレクションにバインドされていない場合、このキーワードは無視されます。
RetrieveXMLInBinaryFormat false XML データをバイナリー・フォーマットで返すかどうかを指定します。 許容値は次のとおりです。
false
XML データをバイナリー・フォーマットで返しません。
true
XML データをバイナリー・フォーマットで返します。
RetryParameterBindingOnError true プロバイダーが失敗したステートメントを再実行するかどうかを示します。 許容値は次のとおりです。
false
IBM Data Server Provider for .NET は、失敗したステートメントを再実行しません。
true
IBM Data Server Provider for .NET は、失敗したステートメントを再実行します。
SchemaList   スキーマのリストが含まれているストリング値を指定します。 スキーマ・リストは、データベース内のすべての表をリストするアプリケーションに、より制限されたデフォルトを提供して、そのアプリケーションのパフォーマンス向上に役立たせるために使用されます。
Security   セキュア転送に SSL を使用するかどうかを指示します。 SSL は、Security キーワードに指定できる唯一の値です。
SessionTimeZone   z/OS サーバー上の SESSION TIMEZONE 特殊レジスターの値を設定します。
SkipSynonymProcessing false
IBM Data Server Provider for .NETDB2ConnectionStringBuilder クラスを介して接続ストリングを渡さずに DbPermission.Add メソッドに接続ストリングを送信できるかどうかを示します。 許容値は次のとおりです。
false
IBM Data Server Provider for .NET は、 DB2ConnectionStringBuilder クラスを介して接続ストリングを送信しません。
true
IBM Data Server Provider for .NET は、 DB2ConnectionStringBuilder クラスを介して接続ストリングを送信します。
SSLClientKeystash   SSL 接続に使用される SSL stash ファイルを指定します。
SSLClientKeystoredb   SSL 接続に使用される SSL 鍵データベース・ファイルを指定します。
SSLClientKeystoreDBPassword   CERTIFICATE 認証で使用する鍵ストア・データベース・パスワードを設定します。
SSLClientLabel   CERTIFICATE 認証で使用する特定の証明書にマップされる、固有のラベルを設定します。
SSLServerCertificate   自己署名サーバー証明書または認証局 (CA) 証明書の完全修飾名を指定します。
StatementConcentrator  
ステートメント集中を使用するかどうかを指示します。 許容値は次のとおりです。
リテラル
リテラルを伴うステートメント・コンセントレーターの動作は使用可能です。 サーバー・サイドのステートメント・コンセントレーター制約が適用されます。
OFF
ステートメント・コンセントレーターは使用不可です。
このキーワードを設定しない場合、リテラル置換の動作はサーバー構成によって決定されます。
TargetPrincipal  

ターゲット・サーバーの完全修飾 Kerberos プリンシパル名を指定します。 Db2 インスタンス所有者の完全修飾 Kerberos プリンシパル名 ( 名前@レルム または インスタンス@レルムの形式)。Windows オペレーティング・システムの場合、完全修飾 Kerberos プリンシパル名 は、 ユーザー ID@ドメインユーザー ID@xxx.xxx.xxx.com、または ドメイン¥ユーザー IDの形式の Db2 サーバー・サービスのログオン・アカウントです。

TLSVersion   TLS 接続に使用する Transport Layer Security (TLS) プロトコルの目的のバージョンを指定します。
TrustedContextSystemAccessToken | TCSAT
注: このオプションは、 Db2 バージョン 11.5.4以降で使用可能です。
  接続で使用するトラステッド・コンテキスト SYSTEM AUTHID のアクセス・トークンを指定します。
TrustedContextSystemPassword | TCSPWD  

接続に使用するトラステッド・コンテキスト SYSTEM AUTHID に対応するパスワードを指定します。

TrustedContextSystemUserID | TCSUID  

接続で使用するトラステッド・コンテキスト SYSTEM AUTHID を指定します。

db2dumpSQLCodes  

Db2 for z/OS サーバーへの接続で指定の SQLCODE が検出されたときに診断ログを収集するかどうかを指定します。

注: db2dumpSQLCodes および cfgRefreshInterval キーワードも db2dsdriver.cfgに指定されている場合、 cfgRefreshInterval に指定されている時間が経過すると、 db2dsdriver.cfg ファイルに指定されている db2dumpSQLCodes の値が優先されます。
Db2DumpSQLCodesInterval  

特定の SQLCODE のログ情報をキャプチャーしない時間を秒単位で指定します。

TrustedContextUserRegistryName| TCURN   トラステッド接続に切り替えるときに、接続ストリングでユーザー・レジストリー名を送信します。ID マッピング・サービスを使用する Db2 for z/OS サーバーでユーザーを認証する場合にのみ使用します。

ストリングで指定できる設定の多くには、対応する読み取り専用プロパティーがあります。 例えば、 DATABASE キーワードは DB2Connection.Database プロパティーに対応します。 接続ストリングが設定されると、エラーが検出された場合を除いて、これらすべての読み取り専用プロパティーが更新されます。 エラーが検出された場合には、どのプロパティーも更新されません。 DB2Connection プロパティー ( DB2Connection.Database など) は、デフォルト設定のみ、または ConnectionString プロパティーに指定した設定のみを返します。

接続ストリングを設定すると、その妥当性検査が行われます。

クローズした接続に ConnectionString プロパティーを再設定すると、パスワードを含むすべての接続ストリング値および関連したプロパティーが再設定されます。

[Visual Basic, C#] The following examples create a DB2Connection object and set some of its properties in the connection string:

[Visual Basic]
Public Sub CreateDB2Connection()
    Dim myConnString As String = _
       "DATABASE=SAMPLE;"
    Dim myConnection As New DB2Connection(myConnString)
    myConnection.Open()
    MessageBox.Show("ServerVersion: " + myConnection.ServerVersion _
       + ControlChars.Cr + "Database: " + myConnection.Database.ToString())
    myConnection.Close()
End Sub

[C#]
public void CreateDB2Connection()
{
   string myConnString = "DATABASE=SAMPLE;";
   DB2Connection myConnection = new DB2Connection(myConnString);
   myConnection.Open();
   MessageBox.Show("ServerVersion: " + myConnection.ServerVersion
      + "\nDatabase: " + myConnection.Database.ToString());
   myConnection.Close();
}