OracleConnectionStringBuilder クラス
アセンブリ: System.Data.OracleClient (system.data.oracleclient.dll 内)


接続文字列ビルダにより、クラスのプロパティとメソッドを使用して、構文的に正確な接続文字列をプログラムで作成したり、既存の接続文字列を解析および再構築したりできます。接続文字列ビルダは、Oracle がサポートする既知のキー/値ペアに対応した、厳密に型指定されたプロパティを提供します。OracleConnectionStringBuilder クラスは、ICustomTypeDescriptor インターフェイスを実装します。つまり、このクラスは、Visual Studio .NET デザイナでデザイン時に使用されます。Visual Studio .NET で、開発者がデザイナを使用して厳密に型指定された DataSets と厳密に型指定された接続をビルドした場合、厳密に型指定された接続文字列のビルダ クラスは、その型に関連付けられたプロパティを表示します。また、このクラスは、コンバータを使用して既知のキーの共通値を割り当てることもできます。
接続文字列をアプリケーション内で生成する必要がある場合、OracleConnectionStringBuilder クラスを使用して、接続文字列を生成および修正できます。また、OracleConnectionStringBuilder クラスを利用することで、アプリケーションの構成ファイルに格納される接続文字列の管理が容易になります。
OracleConnectionStringBuilder では、キー/値ペアが有効であるかどうかのチェックが実行されます。そのため、このクラスは、無効な接続文字列の作成には使用できません。無効なペアを追加しようとすると、例外がスローされます。OracleConnectionStringBuilder クラスは、一連のシノニムに対する固定のコレクションを保持しており、必要がある場合は、シノニムから対応する既知のキー名への変換を実行できます。Item プロパティで、必要なキーに対応するシノニムを含んだ文字列を指定することによって値を取得できます。サポートされるすべてのシノニムの一覧については、Item プロパティのトピックを参照してください。
OracleConnectionStringBuilder は、不正なエントリの挿入が試みられた場合も、適切に処理します。たとえば、次のコードでは、既定の Item プロパティ (C# ではインデクサ) を使用することで、入れ子になったキー/値ペアが適切にエスケープされています。
Dim builder As New System.Data. _ OracleClient.OracleConnectionStringBuilder builder("Data Source") = "OracleDemo" builder("Integrated Security") = True builder("User ID") = "Mary;NewValue=Bad" System.Diagnostics.Debug.WriteLine(builder.ConnectionString)
[C#]
System.Data.OracleClient.OracleConnectionStringBuilder builder = new System.Data.OracleClient.OracleConnectionStringBuilder(); builder["Data Source"] = "OracleDemo"; builder["integrated Security"] = true; builder["User ID"] = "Mary;NewValue=Bad"; System.Diagnostics.Debug.WriteLine(builder.ConnectionString);

次のコンソール アプリケーションでは、Oracle データベースで使用される接続文字列を作成します。このコードでは、OracleConnectionStringBuilder クラスを使用して接続文字列を作成し、OracleConnectionStringBuilder インスタンスの ConnectionString プロパティを、接続クラスのコンストラクタに渡しています。また、既存の接続文字列を解析し、接続文字列の内容に対して各種の操作を行う例が示されています。
![]() |
---|
この例には、OracleConnectionStringBuilder と接続文字列がどのように連携するかを示すパスワードが含まれています。アプリケーションでは、Windows 認証の使用をお勧めします。パスワードを使用する必要がある場合は、ハードコーディングされたパスワードをアプリケーションに組み込まないでください。 |
' You may need to set a reference to the System.Data.OracleClient ' assembly before running this example. Imports System.Data.OracleClient Module Module1 Sub Main() ' Create a new OracleConnectionStringBuilder and ' initialize it with a few name/value pairs. Dim builder As New OracleConnectionStringBuilder(GetConnectionString()) ' Note that the input connection string used the ' Server key, but the new connection string uses ' the well-known Data Source key instead. Console.WriteLine(builder.ConnectionString) ' Pass the OracleConnectionStringBuilder an existing ' connection string, and you can retrieve and ' modify any of the elements. builder.ConnectionString = _ "server=OracleDemo;user id=Mary;" & _ "password=*****" ' Now that the connection string has been parsed, ' you can work with individual items. Console.WriteLine(builder.Password) builder.Password = "newPassword" builder.PersistSecurityInfo = True ' You can refer to connection keys using strings, ' as well. When you use this technique (the default ' Item property in Visual Basic, or the indexer in C#), ' you can specify any synonym for the connection string key ' name. builder("Server") = "NewDemo" builder("Load Balance Timeout") = 1000 ' The Item property is the default for the class, ' and setting the Item property adds the value to the ' dictionary, if necessary. builder.Item("Integrated Security") = True Console.WriteLine(builder.ConnectionString) Console.WriteLine("Press Enter to finish.") Console.ReadLine() End Sub Private Function GetConnectionString() As String ' To avoid storing the connection string in your code, ' you can retrieve it from a configuration file. Return "Server=OracleDemo;Integrated Security=True;" & _ "Unicode=True" End Function End Module
// You may need to set a reference to the System.Data.OracleClient // assembly before you can run this sample. using System.Data.OracleClient; class Program { static void Main() { // Create a new OracleConnectionStringBuilder and // initialize it with a few name/value pairs. OracleConnectionStringBuilder builder = new OracleConnectionStringBuilder(GetConnectionString()); // Note that the input connection string used the // Server key, but the new connection string uses // the well-known Data Source key instead. Console.WriteLine(builder.ConnectionString); // Pass the OracleConnectionStringBuilder an existing // connection string, and you can retrieve and // modify any of the elements. builder.ConnectionString = "server=OracleDemo;user id=maryc;" + "password=pass@word1"; // Now that the connection string has been parsed, // you can work with individual items. Console.WriteLine(builder.Password); builder.Password = "newPassword"; builder.PersistSecurityInfo = true; // You can refer to connection keys using strings, // as well. When you use this technique (the default // Item property in Visual Basic, or the indexer in C#), // you can specify any synonym for the connection string key // name. builder["Server"] = "."; builder["Load Balance Timeout"] = 1000; builder["Integrated Security"] = true; Console.WriteLine(builder.ConnectionString); Console.WriteLine("Press Enter to finish."); Console.ReadLine(); } private static string GetConnectionString() { // To avoid storing the connection string in your code, // you can retrieve it from a configuration file. return "Server=OracleDemo;Integrated Security=true"; } }

System.Data.Common.DbConnectionStringBuilder
System.Data.OracleClient.OracleConnectionStringBuilder


Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- OracleConnectionStringBuilder クラスのページへのリンク