OracleConnection.ConnectionString プロパティ
メモ : この名前空間、クラス、およびメンバは、.NET Framework Version 1.1 だけでサポートされています。
Oracle データベースを開くために使用する文字列を取得または設定します。
Public Overridable Property ConnectionString As String Implements _ IDbConnection.ConnectionString
[C#]
public virtual string ConnectionString {get; set;}
[C++]
public: __property virtual String* get_ConnectionString();public: __property virtual void set_ConnectionString(String*);
[JScript]
public function get ConnectionString() : String;public function set ConnectionString(String);
プロパティ値
サーバー名など、初期接続を確立するために必要な設定を含んだ Oracle 接続文字列。既定値は空の文字列 ("") です。
実装
IDbConnection.ConnectionString
解説
ConnectionString を設定できるのは、接続が閉じているときだけです。
ConnectionString プロパティを使用すると、データベースに接続できます。一般的な接続文字列の例を次に示します。
"Data Source=Oracle8i;Integrated Security=yes"
接続文字列で指定する設定の多くには、それぞれに対応する読み取り専用プロパティが存在します (DataSource プロパティに対応する Data Source=MyServer など)。接続文字列を設定すると、エラーが検出された場合を除いて、これらのプロパティがすべて更新されます。エラーが発生した場合は、いずれのプロパティも更新されません。 OracleConnection のプロパティは、既定の設定、または ConnectionString で指定されている設定だけを返します。
閉じた接続に対して ConnectionString をリセットすると、パスワードを含むすべての接続文字列値および関連プロパティがリセットされます。
接続文字列は、設定した直後に解析されます。解析中に構文のエラーが検出された場合は、 ArgumentException などのランタイム例外が生成されます。その他のエラーは、接続を開くときにだけ検出されます。
接続文字列の基本的な書式は、一連のキーワード/値のペアをセミコロンで区切った形となります。等号記号 (=) は、各キーワードとその値を結合します。セミコロン、単一引用符文字、または二重引用符文字を含む値を指定するには、二重引用符で値を囲む必要があります。セミコロンと二重引用符の両方が値に含まれている場合は、単一引用符を使用して値を囲むことができます。単一引用符は、値の先頭が二重引用符文字の場合にも、使用できます。逆に、値の先頭が単一引用符の場合は、二重引用符を使用できます。単一引用符と二重引用符の両方が値に含まれている場合、値を囲むために使用する引用符文字は、値の中ですべて 2 つずつ使用する必要があります。
文字列値の先頭または末尾の空白を含めるには、単一引用符または二重引用符で値を囲む必要があります。整数値、ブール値、列挙値の先頭または末尾の空白は無視されます。引用符で囲まれている場合も同様に無視されます。ただし、リテラル キーワード文字列や文字列値内の空白は、予約済みです。単一引用符または二重引用符は、引用符が値の先頭または末尾の文字でない限り、接続文字列内で区切り文字を付けずに使用できます (たとえば、Data Source= my'Server、または Data Source= my"Server など)。
キーワードまたは値の中で等号記号 (=) を使用する場合は、等号記号を 2 つ記述する必要があります。たとえば、次のような接続文字列がある場合、
"key==word=value"
キーワードは "key=word" で値は "value" です。
キーワード = 値のペアで特定のキーワードが接続文字列の中に複数回出現する場合、値セットでは最後のペアが使用されます。
キーワードの大文字と小文字は区別されません。
ConnectionString 内の値として有効な名前の一覧を次の表に示します。
名前 | 既定値 | 説明 |
---|---|---|
Data Source
または Server |
接続する Oracle のインスタンスの名前またはネットワーク アドレス。 | |
Integrated Security | false | 接続をセキュリティ保護するかどうかを指定します。
使用できる値は、 true (推奨)、 false 、 yes 、および no です。 |
Password | ログオンに使用する Oracle アカウントのパスワード (お勧めしません。高度なセキュリティ レベルを維持するために、代わりに Integrated Security キーワードを使用することをお勧めします)。 | |
Persist Security Info | false | false または no に設定すると (推奨)、接続が開いているか、開いている State になったことがある場合に、パスワードなどの機密性の高い情報が接続文字列の一部として返されません。接続文字列をリセットすると、パスワードを含むすべての接続文字列値がリセットされます。
認識される値は、 true 、 false 、 yes 、および no です。 |
Unicode | false | .NET Framework Data Provider for Oracle で、UTF16 モードの API 呼び出しを使用するかどうかを指定します。このキーワードは、Oracle 9i クライアント ソフトウェアで分散トランザクションを使用する場合以外は無視されます。Oracle 9i のクライアント ソフトウェアを使用せずに Oracle 9i サーバーに接続した場合は、Unicode が true に設定されていると予測できない結果が発生する可能性があります。 |
User ID | Oracle のログイン アカウント (お勧めしません)。高度なセキュリティ レベルを維持するために、代わりに Integrated Security キーワードを使用することをお勧めします)。 |
ConnectionString 内の接続プール値として有効な名前の一覧を次の表に示します。
名前 | 既定値 | 説明 |
---|---|---|
Connection Lifetime | 0 | 接続がプールに返されるときに、作成時刻と現在の時刻が比較され、この時間 (秒単位) が Connection Lifetime で指定された値を超えていた場合は、接続が破棄されます。この機能は、クラスタ構成の場合に、実行中のサーバーとオンライン状態になったばかりのサーバーとの間で負荷分散を強制的に行うときに役立ちます。
値が 0 の場合は、プールされた接続のタイムアウトには最大値が設定されます。 |
Enlist | true | true または yes の場合、接続は、プールに追加されたときに、作成スレッドの現在のトランザクション コンテキストに自動的に加えられます。
認識される値は、 true 、 false 、 yes 、および no です。 |
Max Pool Size | 100 | プールで許可される最大接続数。 ConnectionString の Max Pool Size 値を設定すると、パフォーマンスに影響する可能性があります。100 以上の接続を作成して使用する予定がある場合は、アプリケーションが安定した接続状態を維持できる値まで Max Pool Size を増やす必要があります。 |
Min Pool Size | 0 | プールで許可される最小接続数。 |
Pooling | true | true または yes に設定すると、 OracleConnection オブジェクトは、適切なプールから引き出されます。または、必要に応じて作成され、適切なプールに追加されます。
認識される値は、 true 、 false 、 yes 、および no です。 |
ブール値を必要とするキーワードまたは接続プール値を指定する場合は、true の代わりに yes、false の代わりに no を使用できます。整数値は文字列として表されます。
使用例
[Visual Basic, C#, C++] OracleConnection を作成し、そのプロパティの一部を接続文字列に設定する例を次に示します。
Public Sub CreateOracleConnection()
Dim myConnString As String = _
"Data Source=Oracle8i;Integrated Security=yes"
Dim myConnection As New OracleConnection(myConnString)
myConnection.Open()
MessageBox.Show("ServerVersion: " + myConnection.ServerVersion _
+ ControlChars.NewLine + "DataSource: " + myConnection.DataSource)
myConnection.Close()
End Sub
[C#]
public void CreateOracleConnection()
{
string myConnString = "Data Source=Oracle8i;Integrated Security=yes";
OracleConnection myConnection = new OracleConnection(myConnString);
myConnection.Open();
MessageBox.Show("ServerVersion: " + myConnection.ServerVersion
+ "\nDataSource: " + myConnection.DataSource);
myConnection.Close();
}
[C++]
public:
void CreateOracleConnection()
{
String* myConnString = S"Data Source=Oracle8i;Integrated Security=yes";
OracleConnection* myConnection = new OracleConnection(myConnString);
myConnection->Open();
MessageBox::Show(String::Format( S"ServerVersion: {0}\nDataSource: {1}",
myConnection->ServerVersion, myConnection->DataSource ));
myConnection->Close();
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
.NET Framework セキュリティ:
- 直前の呼び出し元の完全信頼。このメンバは、部分的に信頼されているコードから使用することはできません。詳細の参照先 : 部分信頼コードからのライブラリの使用
参照
OracleConnection クラス | OracleConnection メンバ | System.Data.OracleClient 名前空間