ConnectionString
このプロパティは、Oracleデータベースへの接続に使用される接続情報を指定します。
宣言
// C# public override string ConnectionString{get; set;}
プロパティ値
接続文字列がコンストラクタを介して指定される場合、このプロパティはその文字列に設定されます。
実装
IDbConnection
例外
ArgumentException
- 無効な構文が接続文字列に指定されました。
InvalidOperationException
- ConnectionString
が接続がオープン中に設定されました。
備考
デフォルト値が空の文字列です。
ConnectionString
は、セミコロンで区切られた属性名と値のペアにする必要があります。次に例を示します。
"User Id=scott;password=tiger;data source=oracle"
ConnectionString
の形式が正しくない場合、例外がスローされます。二重引用符で囲まれていない場合、すべてのスペースは無視されます。
ConnectionString
プロパティが設定されている場合、OracleConnection
オブジェクトはすぐに文字列のエラーを解析します。ArgumentException
は、ConnectionString
に無効な属性または無効な値が含まれている場合に、スローされます。User
Id
、Password
、Proxy
User
Id
、Proxy
Password
、およびData
Source
(提供されている場合)の属性値は、Open
メソッドがコールされるまで検証されません。
接続はクローズして、ConnectionString
プロパティに設定する必要があります。ConnectionString
プロパティがリセットされる場合、事前に設定された値は、新しい値が適用される前にそれぞれのデフォルト値に再初期化されます。
ODP.NET 11.1で開始する場合、パスワードおよびプロキシ・パスワードの接続文字列属性の値は大/小文字が区別されます。そのため、接続文字列に指定された大文字または小文字が認証用としてデータベースに渡されます。したがって、データベースが大/小文字が区別されているパスワードをサポートするよう構成されている場合、パスワードは正しい大/小文字で渡される必要があります。
接続文字列属性が2回以上設定されている場合、最新の設定が実行され、例外はスローされません。
ブール接続文字列属性は、true
、false
、yes
またはno
のいずれかに設定できます。
備考(.NETストアド・プロシージャ)
暗黙的なデータベース接続を表すOracleConnection
オブジェクトを.NETストアド・プロシージャで取得するには、OracleConnection
オブジェクトのConnectionString
プロパティを"context
connection=true"
に設定し、Open
メソッドを起動します。"context
connection"
がtrueに設定されている場合、その他の接続文字列属性を一緒に使用することはできません。
サポートされている接続文字列属性
表7-47には、サポートされている接続文字列属性をリストします。
表7-47 サポートされている接続文字列属性
接続文字列属性 | 説明 | デフォルト値 |
---|---|---|
|
データベース・セッションが切断され、リカバリ可能なエラーになった場合に、トランザクションおよび非トランザクション操作を、データベース・リクエストで自動的に非破壊的かつ迅速にリプレイできます。 ODP.NET管理対象ドライバおよびODP.NET Coreでは使用できません |
|
|
接続の最小存続時間(秒)。 この属性は、接続の存続期間を秒単位で指定します。 |
|
|
接続タイムアウト・エラーが発生する前に、新しい接続または接続プールからのアイドル接続を待機する時間(秒)。 この属性では、 この属性値はプールされた接続要求に対して有効となりますが、新規接続要求に対しては有効にはなりません。 (.NETストアド・プロシージャにおける暗黙的なデータベース接続のデフォルト値は |
|
|
暗黙的なデータベース接続は、.NETストアド・プロシージャ内からのみ取得できます。 .NETストアド・プロシージャでのみサポートされています。 |
|
|
接続するデータベースを識別するOracle Netサービス名、接続記述子または簡易接続ネーミング。 |
空の文字列 |
|
管理者権限 この接続文字列属性は、属性値として |
空の文字列 |
|
未使用の確立済接続量が過剰となり、クローズされる接続数。 この接続文字列の属性は、プール・レギュレータが定期的なチェックを行う場合、クローズされる未使用の最大接続数を制御します。このレギュレータ・スレッドは3分ごとに生成され、プールされた接続が使用されていない場合、その接続の |
|
|
COM+トランザクションまたは この属性が |
|
|
ODP.NET接続プールを使用して、Oracleデータベース・サービス、サービス・メンバーまたはノードの停止時に、プールから接続を事前に削除できます。 この機能は、Oracle RAC、Data Guard、GoldenGateおよび単一インスタンスへのデプロイを含め、Global Data Servicesで使用できます。" この属性は、 |
|
|
ODP.NET接続プールを使用して、ロード・バランシング・アドバイザリおよびサービスの目的に基づき、Oracleデータベース・インスタンス間の作業要求のバランスを調整できます。 この機能は、Oracle RAC、Active Data Guard、GoldenGateを含め、Global Data Servicesで使用できます。" この属性は、 |
|
|
プール内のすべての接続が使用された場合に作成される新しい接続の数。 この接続文字列属性は、プールされた接続が要求されたときに確立される新規接続の数を決定しますが、未使用の接続は使用不可であり、 |
|
|
プール内の接続の最大数。 この属性は、 |
|
|
メタデータ情報をキャッシュします。 この属性は、実行した問合せのメタデータ情報をパフォーマンス向上のためにキャッシュするかどうかを示します。 |
|
|
プール内の接続の最小数。 この属性は、プールのすべての存続期間中、プールにより保持される接続の最少数を指定します。接続文字列でこの属性を変更するだけでは、現在すでに存在するプールの |
|
|
この属性はOracleユーザーのパスワードを指定します。Oracle Database 11gリリース1(11.1)以降では、デフォルトでは |
空の文字列 |
|
接続文字列でのパスワード検索。 この属性が |
|
|
接続プーリング。 この属性は、接続プーリングを使用する必要があるかどうかを指定します。プールは、属性値が一致するアルゴリズムを使用して作成されます。つまり、接続文字列内で単にスペースの数が異なる接続文字列は、同じプールを使用することを意味します。一方の接続文字列では属性をデフォルト値に設定し、もう一方の接続文字列でその属性を設定しないという点を除いて、2つの接続文字列が一致する場合、両方の要求とも同じプールから接続を取得します。この属性は、 |
|
|
プロキシ・ユーザーのユーザー名。 この接続文字列属性は、 プロキシ・ユーザーがオペレーティング・システム認証を使用してOracle Databaseに接続するには、 |
空の文字列 |
|
プロキシ・ユーザーのパスワード。 この接続文字列属性は、中間層のユーザーまたはプロキシ・ユーザーのパスワードを指定します。このユーザーは、 二重引用符によりこの属性値が囲まれている場合、この場合の属性値は保持されます。 |
空の文字列 |
|
接続がプールに戻るときの文キャッシュの消去。 文キャッシングが有効な場合、この属性を |
|
|
文キャッシュを有効にして、キャッシュ・サイズ、つまりキャッシュ可能な文の最大数のサイズを設定します。 文キャッシングはゼロより大きい値で可能で、キャッシュ・サイズはその値に設定されます。この値は、 |
0 |
|
接続の自動チューニングを有効化または無効化します。 自動チューニングが有効な場合、レジストリ、構成ファイルおよび接続文字列の 自動チューニングが無効な場合、レジストリ、構成ファイルまたは接続文字列で |
|
|
ODP.NETが ODP.NET管理対象外ドライバでは使用できません |
空の文字列 |
|
Oracleユーザー名。 この属性は、Oracleユーザー名を指定します。二重引用符によりこの属性値が囲まれている場合、この場合の属性値は保持されます。ユーザーがオペレーティング・システム認証を使用してOracle Databaseに接続するには、 |
空の文字列 |
|
プールから発生した接続の検証。 検証により、各接続に対してデータベースにラウンドトリップが発生します。このため、必要な場合のみ使用してください。 |
|
|
ODP.NETウォレット・ディレクトリ ODP.NET管理対象外ドライバでは使用できません |
空の文字列 |