Oracle® Data Provider for .NET開発者ガイド ODAC 12c リリース4 (12.1.0.2) for Microsoft Windows E72575-01 |
|
前 |
次 |
OracleConnectionStringBuilder
オブジェクトによって、アプリケーションは接続文字列を作成し変更できます。
クラスの継承
System.Object
System.Data.Common.DbConnectionStringBuilder
Oracle.DataAccess.Client.OracleConnectionStringBuilder
宣言
// C# public sealed class OracleConnectionStringBuilder : DbConnectionStringBuilder
要件
プロバイダ | ODP.NET管理対象外ドライバ | ODP.NET管理対象ドライバ |
アセンブリ | Oracle.DataAccess.dll |
Oracle.ManagedDataAccess.dll |
ネームスペース | Oracle.DataAccess.Client |
Oracle.ManagedDataAccess.Client |
.NET Framework | 3.5, 4.0, 4.5, 4.6 | 4.0, 4.5, 4.6 |
スレッド安全性
パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。
備考
予約文字を使用して値を設定する場合には、次のルールに従う必要があります。
一重引用符で囲まれた文字を含む値
値に一重引用符で囲まれた文字が含まれる場合、値全体を二重引用符で囲む必要があります。
たとえば、値が'scoTT'
の場合、password =
"'scoTT'"
とします。
二重引用符で囲まれた文字を含む値
値は二重引用符で囲み、大/小文字の区別を順守して、値が大文字にならないようにする必要があります。
値に二重引用符で囲まれた文字が含まれる場合、値を一重引用符で囲む必要があります。
たとえば、値が"scoTT"
の場合、password =
'"scoTT"'
とします。
一重引用符と二重引用符の両方で囲まれた文字を含む値
値が一重引用符と二重引用符の両方で囲まれている場合、値を囲む引用符は、その値を使用するたびに二重に囲む必要があります。
たとえば、値が"sco'TT"
の場合、password =
'"sco''TT"'
とします。
スペースを含む値
先頭および末尾にあるすべてのスペースは無視されますが、値の間にあるスペースは認識されます。値の先頭または末尾にスペースが必要な場合、二重引用符で囲む必要があります。
たとえば、値が<Sco
TT>
の場合、User ID =
Sco
TT
とします。
たとえば、値が<Sco
TT>
の場合、User ID =
"Sco
TT "
とします。
接続文字列内で複数回表示されるキーワード
指定したキーワードが接続文字列で複数回表示される場合、リストされた最後のキーワードが値セットで使用されます。
たとえば、"User ID = scott; password = tiger; User ID = david"
接続文字列の場合、User ID
の値はdavid
です。
例
// C# using System; using System.Data; using System.Data.Common; using Oracle.DataAccess.Client; using System.Collections; class ConnectionStringBuilderSample { static void Main(string[] args) { bool bRet = false; // Create an instance of OracleConnectionStringBuilder OracleConnectionStringBuilder connStrBuilder = new OracleConnectionStringBuilder(); // Add new key/value pairs to the connection string connStrBuilder.Add("User Id", "scott"); connStrBuilder.Add("Password", "tiger"); connStrBuilder.Add("Data Source", "oracle"); connStrBuilder.Add("pooling", false); // Modify the existing value connStrBuilder["Data source"] = "inst1"; // Remove an entry from the connection string bRet = connStrBuilder.Remove("pooling"); //ContainsKey indicates whether or not the specific key exist //returns true even if the user has not specified it explicitly Console.WriteLine("Enlist exist: " + connStrBuilder.ContainsKey("Enlist")); //returns false connStrBuilder.ContainsKey("Invalid"); // ShouldSerialize indicates whether or not a specific key // exists in connection string inherited from DbConnectionStringBuilder. // returns true if the key is explicitly added the user otherwise false; // this will return false as this key doesn't exists. connStrBuilder.ShouldSerialize("user"); // returns false because this key is nott added by user explicitly. connStrBuilder.ShouldSerialize("Enlist"); // IsFixedSize [read-only property] Console.WriteLine("Connection String is fixed size only: " + connStrBuilder.IsFixedSize); Console.WriteLine("Key/Value Pair Count: " + connStrBuilder.Count); //adding a new key which is not supported by the provider //is not allowed. try { //this will throw an exception. connStrBuilder.Add("NewKey", "newValue"); } catch (Exception ex) { Console.WriteLine(ex.Message); } Console.WriteLine("Key/Value Pair Count: " + connStrBuilder.Count); //modifying a existing key is allowed. connStrBuilder.Add("Enlist", false); Console.WriteLine("Key/Value Pair Count: " + connStrBuilder.Count); // Get all the keys and values supported by the provider. ICollection keyCollection = connStrBuilder.Keys; ICollection valueCollection = connStrBuilder.Values; IEnumerator keys = keyCollection.GetEnumerator(); IEnumerator values = valueCollection.GetEnumerator(); while (keys.MoveNext()) { values.MoveNext(); Console.WriteLine("Key: {0} Value: {1} \n" ,keys.Current ,values.Current); } } }
OracleConnectionStringBuilder
メンバーを次の表にリストします。
OracleConnectionStringBuilderコンストラクタ
OracleConnectionStringBuilder
コンストラクタを、表6-36にリストします。
表6-36 OracleConnectionStringBuilderコンストラクタ
コンストラクタ | 説明 |
---|---|
|
OracleConnectionStringBuilderパブリック・プロパティ
OracleConnectionStringBuilder
インスタンス・プロパティを、表6-37にリストします。
表6-37 OracleConnectionStringBuilderパブリック・プロパティ
プロパティ | 説明 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Connection String Builderに固定サイズがあるかどうかを示します。 |
|
|
|
指定された属性に関連した値を指定します。 |
|
Connection String Builder内に含まれる属性のコレクションを指定します。 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Connection String Builder内に含まれる値のコレクションを指定します。 |
OracleConnectionStringBuilderパブリック・メソッド
OracleConnectionStringBuilder
インスタンス・メソッドを、表6-38にリストします。
表6-38 OracleConnectionStringBuilderパブリック・メソッド
メソッド | 説明 |
---|---|
|
|
|
接続文字列のコンテンツをクリアします。 |
|
ODP.NETが接続文字列内の特定の属性をサポートしているかどうかを示します。 |
|
|
|
接続文字列から指定された属性に対応するエントリを削除します。 |
|
|
|
|
|
指定された属性に対応する値を出力パラメータとして戻します。 |
OracleConnectionStringBuilder
コンストラクタはOracleConnectionStringBuilder
クラスの新規インスタンスをインスタンス化します。
オーバーロード・リスト:
OracleConnectionStringBuilder()
このコンストラクタでは、OracleConnectionStringBuilder
クラスの新規インスタンスがインスタンス化されます。
OracleConnectionStringBuilder(string)
このコンストラクタは、指定された接続文字列とともにOracleConnectionStringBuilder
クラスの新規インスタンスをインスタンス化します。
このコンストラクタでは、OracleConnectionStringBuilder
クラスの新規インスタンスがインスタンス化されます。
宣言
// C# public OracleConnectionStringBuilder();
備考
ConnectionString
プロパティは、オブジェクト作成後に空にされます。
このコンストラクタは、指定された接続文字列とともにOracleConnectionStringBuilder
クラスの新規インスタンスをインスタンス化します。
宣言
// C#
public OracleConnectionStringBuilder(string connectionString);
パラメータ
connectionString
接続情報。
例外
ArgumentNullException
- connectionString
パラメータがNullです。
ArgumentException
- connectionString
パラメータが無効です。
備考
このインスタンスのConnectionString
プロパティは、指定された接続文字列に設定されます。
OracleConnectionStringBuilder
パブリック・プロパティを、表6-39にリストします。
表6-39 OracleConnectionStringBuilderパブリック・プロパティ
プロパティ | 説明 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Connection String Builderに固定サイズがあるかどうかを示します。 |
|
|
|
指定された属性に関連した値を指定します。 |
|
Connection String Builder内に含まれる属性のコレクションを指定します。 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Connection String Builder内に含まれる値のコレクションを指定します。 |
このプロパティは、ConnectionString
プロパティ内のConnection
LifeTime
属性に対応する値を指定します。
宣言
// C# public int ConnectionLifeTime{get; set;}
プロパティ値
指定された属性の値を表すint
例外
OracleException
- 指定された値が0未満です。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のConnection
Timeout
属性に対応する値を指定します。
宣言
// C# public int ConnectionTimeout{get; set;}
プロパティ値
指定された属性の値を表すint
例外
OracleException
- 指定された値が0未満です。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のContext
Connection
属性に対応する値を指定します。
宣言
// C# public bool ContextConnection {get; set;}
プロパティ値
指定された属性の値を表すbool
。
このプロパティは、ConnectionString
プロパティ内のData
Source
属性に対応する値を指定します。
宣言
// C# public string DataSource{get; set;}
プロパティ値
指定された属性の値を表す文字列。
例外
ArgumentNullException
- 指定値はNullです。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のDBA
Privilege
属性に対応する値を指定します。
宣言
// C# public string DBAPrivilege{get; set;}
プロパティ値
指定された属性の値を表す文字列。
可能な値は、SYSDBA
またはSYSOPER
です。
例外
ArgumentNullException
- 指定値はNullです。
OracleException
- 指定値が無効です。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のDecr
Pool
Size
属性に対応する値を指定します。
宣言
// C# public int DecrPoolSize{get; set;}
プロパティ値
指定された属性の値を表すint
例外
OracleException
- 指定された値が1
未満です。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のEnlist
属性に対応する値を指定します。
宣言
// C# public string Enlist{get; set;};
プロパティ値
指定された属性の値を表す文字列。値は大文字小文字が区別されます。可能な値はdynamic、true、false、yesおよびnoです。
例外
ArgumentNullException
- 指定値はNullです。
OracleException
: 指定された値が、dynamic
、true
、false
、yes
またはno
のうち1つではありません。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のHA
Events
属性に対応する値を指定します。
宣言
// C# public bool HAEvents{get; set;}
プロパティ値
指定された属性の値を表すbool
。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のIncr
Pool
Size
属性に対応する値を指定します。
宣言
// C# public int IncrPoolSize{get; set;}
プロパティ値
指定された属性の値を表すint
例外
OracleException
- 指定された値が1
未満です。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
Connection String Builderに固定サイズがあるかどうかを示します。
宣言
// C# public override bool IsFixedSize{get;}
プロパティ値
Connection String Builderに固定サイズがある場合はtrue
、それ以外の場合はfalse
を戻します。
備考
属性は追加または削除できません。これらは固定サイズの接続文字列に対してのみ変更できます。
このプロパティは、指定された属性に関連した値を指定します。
宣言
// C# public override object this[string keyword]{get; set;}
プロパティ値
属性に対応するオブジェクト値。
例外
ArgumentNullException
- 指定属性はNullです。
OracleException
- 指定値がサポートされていないか、無効です。
このプロパティでは、Connection String Builder内に含まれる属性のコレクションを指定します。
宣言
// C# public override ICollection Keys{get;}
プロパティ値
Connection String Builder内の属性を表すICollection
を戻します。
このプロパティは、ConnectionString
プロパティ内のLoad
Balancing
属性に対応する値を指定します。
宣言
// C# public bool LoadBalancing {get; set;}
プロパティ値
指定された属性の値を含むbool
。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のMax
Pool
Size
属性に対応する値を指定します。
宣言
// C# public int MaxPoolSize{get; set;}
プロパティ値
指定された属性の値を表すint
例外
OracleException
- 指定された値が1
未満です。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のMetadata
Pooling
属性に対応する値を指定します。
宣言
// C# public bool MetadataPooling{get; set;};
プロパティ値
指定された属性の値を含むbool
。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のMin
Pool
Size
属性に対応する値を指定します。
宣言
// C# public int MinPoolSize{get; set;}
プロパティ値
指定された属性の値を含むint
。
例外
OracleException
- 指定された値が0
未満です。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のPassword
属性に対応する値を指定します。
宣言
// C# public string Password{get; set;}
プロパティ値
指定された属性の値を含む文字列。
例外
ArgumentNullException
- 指定値はNullです。
このプロパティは、ConnectionString
プロパティ内のPersist
Security
Info
属性に対応する値を指定します。
宣言
// C# public bool PersistSecurityInfo{get; set;}
プロパティ値
指定された属性の値を表すbool
。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のPooling
属性に対応する値を指定します。
宣言
// C# public bool Pooling {get; set;}
プロパティ値
指定された属性の値を表すbool
。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のPromotableTransaction
属性に対応する値を指定します。
宣言
// C# public string PromotableTransaction {get; set;}
プロパティ値
指定された属性の値を表す文字列
このプロパティは、ConnectionString
プロパティ内のProxy
Password
属性に対応する値を指定します。
宣言
// C# public string ProxyPassword {get; set;}
プロパティ値
指定された属性の値を表す文字列。
例外
ArgumentNullException
- 指定値はNullです。
このプロパティは、ConnectionString
プロパティ内のProxy
User
Id
属性に対応する値を指定します。
宣言
// C# public string ProxyUserId {get; set;}
プロパティ値
指定された属性の値を表す文字列。
例外
ArgumentNullException
- 指定値はNullです。
このプロパティは、ConnectionString
プロパティ内のSelf Tuning
属性に対応する値を指定します。
宣言
// C# public bool SelfTuning {get; set;}
プロパティ値
指定された属性の値を表すbool
。
このプロパティは、ConnectionString
プロパティ内のStatement
Cache
Purge
属性に対応する値を指定します。
宣言
// C# public bool StatementCachePurge {get; set;}
プロパティ値
指定された属性の値を表すbool
。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のStatement
Cache
Size
属性に対応する値を指定します。
宣言
// C# public int StatementCacheSize{get; set;}
プロパティ値
指定された属性の値を表すint
例外
OracleException
- 指定された値が0未満です。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
このプロパティは、ConnectionString
プロパティ内のUser
Id
属性に対応する値を指定します。
宣言
// C# public string UserID{get; set;}
プロパティ値
指定された属性の値を表す文字列。
例外
ArgumentNullException
- 指定値はNullです。
このプロパティは、ConnectionString
プロパティ内のValidate
Connection
属性に対応する値を指定します。
宣言
// C# public bool ValidateConnection{get; set;}
プロパティ値
指定された属性の値を表すbool
。
備考
OracleConnectionStringBuilder
インスタンスが作成されると、このプロパティは接続文字列属性に対応するデフォルト値に設定されます。
OracleConnectionStringBuilder
パブリック・メソッドを、表6-40にリストします。
表6-40 OracleConnectionStringBuilderパブリック・メソッド
メソッド | 説明 |
---|---|
|
|
|
接続文字列のコンテンツをクリアします。 |
|
ODP.NETが接続文字列内の特定の属性をサポートしているかどうかを示します。 |
|
|
|
接続文字列から指定された属性に対応するエントリを削除します。 |
|
|
|
|
|
指定された属性に対応する値を出力パラメータとして戻します。 |
このメソッドは、接続文字列のコンテンツをクリアします。
宣言
// C# public override void Clear();
備考
すべてのキー/値ペアがOracleConnectionStringBuilder
オブジェクトから削除され、ConnectionString
プロパティはEmptyに設定されます。
このメソッドは、ODP.NETが接続文字列内の特定の属性をサポートしているかどうかを示します。
宣言
// C#
public override bool ContainsKey(string keyword);
パラメータ
keyword
検証される属性。
戻り値
指定された属性が存在する場合はtrue
を戻し、それ以外の場合はfalse
を戻します。
例外
ArgumentNullException
- 指定属性はNullです。
備考
このメソッドは、属性がプロバイダ・サポート属性の一部かどうかを示します。ユーザーが接続文字列に追加した属性かどうかは示しません。
このメソッドは、接続文字列から指定された属性に対応するエントリを削除します。
宣言
// C#
public override bool Remove(string keyword);
パラメータ
keyword
削除するエントリを指定する属性。
戻り値
接続文字列内に存在する属性および対応するエントリが削除された場合はtrue
、それ以外の場合はfalse
を戻します。
例外
ArgumentNullException
- 指定属性はNullです。
このメソッドは、指定された属性に対応する値を出力パラメータとして戻します。
宣言
// C# public override bool TryGetValue(string keyword, out object value);
パラメータ
keyword
取得される値の属性。
value
指定属性の値。
属性が接続文字列にない場合、value
をデフォルト値に設定します。
戻り値
属性に対応する値が正常に取得された場合はtrue
、それ以外の場合はfalse
を戻します。接続文字列内に属性がない場合はfalse
を戻し、value
をNullに設定します。
例外
ArgumentNullException
- 指定属性はNullです。
備考
関数がfalse
を戻す場合、value
をnull
に設定します。
属性が接続文字列にない場合、value
をデフォルト値に設定します。