OleDbConnectionStringBuilder クラス

定義

OleDbConnection クラスで使用される接続文字列の内容を簡単に作成および管理するための手段を提供します。Provides a simple way to create and manage the contents of connection strings used by the OleDbConnection class.

public ref class OleDbConnectionStringBuilder sealed : System::Data::Common::DbConnectionStringBuilder
[System.ComponentModel.TypeConverter(typeof(System.Data.OleDb.OleDbConnectionStringBuilder/OleDbConnectionStringBuilderConverter))]
public sealed class OleDbConnectionStringBuilder : System.Data.Common.DbConnectionStringBuilder
type OleDbConnectionStringBuilder = class
    inherit DbConnectionStringBuilder
Public NotInheritable Class OleDbConnectionStringBuilder
Inherits DbConnectionStringBuilder
継承
OleDbConnectionStringBuilder
属性

次のコンソールアプリケーションでは、複数の OLE DB データベースの接続文字列を構築します。The following console application builds connection strings for several OLE DB databases. まず、Microsoft Access データベースの接続文字列を作成し、IBM DB2 データベース用の接続文字列を作成します。First, the example creates a connection string for a Microsoft Access database, and then creates a connection string for an IBM DB2 database. また、この例では、既存の接続文字列を解析し、接続文字列の内容を操作するさまざまな方法を示します。The example also parses an existing connection string, and demonstrates various ways of manipulating the connection string's contents.

注意

この例には、OleDbConnectionStringBuilder による接続文字列の操作方法を示すために、パスワードが含まれています。This example includes a password to demonstrate how OleDbConnectionStringBuilder works with connection strings. 実際のアプリケーションでは、Windows 認証を使用することをお勧めします。In your applications, we recommend that you use Windows Authentication. パスワードを使用する必要がある場合も、ハードコードされたパスワードをアプリケーションに含めないでください。If you must use a password, do not include a hard-coded password in your application.

using System.Data.OleDb;

class Program
{
    static void Main(string[] args)
    {
        OleDbConnectionStringBuilder builder = new OleDbConnectionStringBuilder();
        builder.ConnectionString = @"Data Source=C:\Sample.mdb";

        // Call the Add method to explicitly add key/value
        // pairs to the internal collection.
        builder.Add("Provider", "Microsoft.Jet.Oledb.4.0");
        builder.Add("Jet OLEDB:Database Password", "MyPassword!");
        builder.Add("Jet OLEDB:System Database", @"C:\Workgroup.mdb");

        // Set up row-level locking.
        builder.Add("Jet OLEDB:Database Locking Mode", 1);

        Console.WriteLine(builder.ConnectionString);
        Console.WriteLine();

        // Clear current values and reset known keys to their
        // default values.
        builder.Clear();

        // Pass the OleDbConnectionStringBuilder an existing 
        // connection string, and you can retrieve and
        // modify any of the elements.
        builder.ConnectionString =
            "Provider=DB2OLEDB;Network Transport Library=TCPIP;" +
            "Network Address=192.168.0.12;Initial Catalog=DbAdventures;" +
            "Package Collection=SamplePackage;Default Schema=SampleSchema;";

        Console.WriteLine("Network Address = " + builder["Network Address"].ToString());
        Console.WriteLine();

        // Modify existing items.
        builder["Package Collection"] = "NewPackage";
        builder["Default Schema"] = "NewSchema";

        // Call the Remove method to remove items from 
        // the collection of key/value pairs.
        builder.Remove("User ID");

        // Note that calling Remove on a nonexistent item does not
        // throw an exception.
        builder.Remove("BadItem");
        Console.WriteLine(builder.ConnectionString);
        Console.WriteLine();

        // Setting the indexer adds the value, if 
        // necessary.
        builder["User ID"] = "SampleUser";
        builder["Password"] = "SamplePassword";
        Console.WriteLine(builder.ConnectionString);

        Console.WriteLine("Press Enter to finish.");
        Console.ReadLine();
    }
}
Imports System.Data.OleDb    
Imports System.Collections

Module Module1
  Sub Main()
    Dim builder As New OleDbConnectionStringBuilder()
    builder.ConnectionString = "Data Source=C:\Sample.mdb"

    ' Call the Add method to explicitly add key/value
    ' pairs to the internal collection.
    builder.Add("Provider", "Microsoft.Jet.Oledb.4.0")
    builder.Add("Jet OLEDB:Database Password", "MyPassword!")
    builder.Add("Jet OLEDB:System Database", "C:\Workgroup.mdb")

    ' Set up row-level locking.
    builder.Add("Jet OLEDB:Database Locking Mode", 1)

    Console.WriteLine(builder.ConnectionString)
    Console.WriteLine()

    ' Clear current values and reset known keys to their
    ' default values.
    builder.Clear()

    ' Pass the OleDbConnectionStringBuilder an existing 
    ' connection string, and you can retrieve and
    ' modify any of the elements.
    builder.ConnectionString = _
        "Provider=DB2OLEDB;Network Transport Library=TCPIP;" & _
        "Network Address=192.168.0.12;Initial Catalog=DbAdventures;" & _
        "Package Collection=SamplePackage;Default Schema=SampleSchema;"

    Console.WriteLine("Network Address = " & builder("Network Address").ToString())
    Console.WriteLine()

    ' Modify existing items.
    builder("Package Collection") = "NewPackage"
    builder("Default Schema") = "NewSchema"

    ' Call the Remove method to remove items from 
    ' the collection of key/value pairs.
    builder.Remove("User ID")

    ' Note that calling Remove on a nonexistent item does not
    ' throw an exception.
    builder.Remove("BadItem")
    Console.WriteLine(builder.ConnectionString)
    Console.WriteLine()

    ' The Item property is the default for the class, 
    ' and setting the Item property adds the value, if 
    ' necessary.
    builder("User ID") = "SampleUser"
    builder("Password") = "SamplePassword"
    Console.WriteLine(builder.ConnectionString)

    Console.WriteLine("Press Enter to finish.")
    Console.ReadLine()
  End Sub
End Module

注釈

接続文字列ビルダーを使用すると、開発者はこのクラスのプロパティおよびメソッドを使用することによって、正しい構文の接続文字列をプログラムで作成し、既存の接続文字列の解析や再作成を行うことができます。The connection string builder lets developers programmatically create syntactically correct connection strings, and parse and rebuild existing connection strings, using properties and methods of the class. 接続文字列ビルダーは、OLE DB 接続で許可されている既知のキー/値ペアに対応する厳密に型指定されたプロパティを提供します。開発者は、その他の接続文字列値に対して任意のキー/値のペアを追加できます。The connection string builder provides strongly typed properties corresponding to the known key/value pairs allowed by OLE DB connections, and developers can add arbitrary key/value pairs for any other connection string values. OleDbConnectionStringBuilder クラスは、ICustomTypeDescriptor インターフェイスを実装します。The OleDbConnectionStringBuilder class implements the ICustomTypeDescriptor interface. これは、クラスがデザイン時に Visual Studio .NET デザイナーで動作することを意味します。This means that the class works with Visual Studio .NET designers at design time. 開発者がデザイナーを使用して、厳密に型指定されたデータセットと、Visual Studio .NET 内で厳密に型指定された接続を構築する場合、厳密に型指定された接続文字列ビルダークラスはその型に関連付けられているプロパティを表示し、コンバーターも既知のキーの共通値をマップできます。When developers use the designer to build strongly typed DataSets and strongly typed connections within Visual Studio .NET, the strongly typed connection string builder class will display the properties associated with its type and will also have converters that can map common values for known keys.

アプリケーションの一部として接続文字列を作成する必要がある開発者は、OleDbConnectionStringBuilder クラスを使用して接続文字列を作成および変更できます。Developers needing to create connection strings as part of applications can use the OleDbConnectionStringBuilder class to build and modify connection strings. また、このクラスを使用すると、アプリケーションの構成ファイルに保存された接続文字列を容易に管理することができます。The class also makes it easy to manage connection strings stored in an application configuration file. OleDbConnectionStringBuilder は、既知のキーと値のペアの限られたセットに対してのみチェックを実行します。The OleDbConnectionStringBuilder performs checks only for the limited set of known key/value pairs. したがって、このクラスを使用して無効な接続文字列を作成できます。Therefore, this class can be used to create invalid connection strings. 次の表に、OleDbConnectionStringBuilder クラス内の既知のキーとそれに対応するプロパティ、およびそれらの既定値を示します。The following table lists the known keys and their corresponding properties within the OleDbConnectionStringBuilder class, and their default values. 開発者は、これらの特定の値だけでなく、OleDbConnectionStringBuilder インスタンスに含まれるコレクションにキーと値のペアを追加できます。Besides these specific values, developers can add any key/value pairs to the collection that is contained within the OleDbConnectionStringBuilder instance:

キーKey propertyProperty 既定値Default value
ファイル名File Name FileName """"
プロバイダーProvider Provider """"
データ ソースData Source DataSource """"
Persist Security InfoPersist Security Info PersistSecurityInfo FalseFalse
OLE DB サービスOLE DB Services OleDbServices -13-13

Item[String] プロパティは、悪意のあるエントリを挿入する試行を処理します。The Item[String] property handles attempts to insert malicious entries. たとえば、次のコードでは、既定の Item[String] プロパティ (のC#インデクサー) を使用して、入れ子になったキーと値のペアを正しくエスケープしています。For example, the following code, using the default Item[String] property (the indexer, in C#) correctly escapes the nested key/value pair:

Dim builder As _  
    New System.Data.OleDb.OleDbConnectionStringBuilder  
builder("Provider") = "Microsoft.Jet.OLEDB.4.0"  
builder("Data Source") = "C:\Sample.mdb"  
builder("User Id") = "Admin;NewValue=Bad"  
System.Data.OleDb.OleDbConnectionStringBuilder builder =   
    new System.Data.OleDb.OleDbConnectionStringBuilder();  
builder["Provider"] = "Microsoft.Jet.OLEDB.4.0";  
builder["Data Source"] = "C:\\Sample.mdb";  
builder["User Id"] = "Admin;NewValue=Bad";  

結果は、無効な値が安全に処理される、次の接続文字列になります。The result is the following connection string that handles the invalid value in a safe manner:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Sample.mdb;User ID="Admin;NewValue=Bad"  

コンストラクター

OleDbConnectionStringBuilder()

OleDbConnectionStringBuilder クラスの新しいインスタンスを初期化します。Initializes a new instance of the OleDbConnectionStringBuilder class.

OleDbConnectionStringBuilder(String)

OleDbConnectionStringBuilder クラスの新しいインスタンスを初期化します。Initializes a new instance of the OleDbConnectionStringBuilder class. 指定された接続文字列によって、インスタンスの内部的な接続情報のデータが提供されます。The provided connection string provides the data for the instance's internal connection information.

プロパティ

BrowsableConnectionString

ConnectionString プロパティを Visual Studio デザイナーに表示するかどうかを示す値を取得または設定します。Gets or sets a value that indicates whether the ConnectionString property is visible in Visual Studio designers.

(継承元 DbConnectionStringBuilder)
ConnectionString

DbConnectionStringBuilder に関連付けられた接続文字列を取得または設定します。Gets or sets the connection string associated with the DbConnectionStringBuilder.

(継承元 DbConnectionStringBuilder)
Count

ConnectionString プロパティ内に含まれる現在のキー数を取得します。Gets the current number of keys that are contained within the ConnectionString property.

(継承元 DbConnectionStringBuilder)
DataSource

接続先のデータ ソースの名前を取得または設定します。Gets or sets the name of the data source to connect to.

FileName

データ ソースへの接続に使用する汎用データ リンク (UDL) ファイルの名前を取得または設定します。Gets or sets the name of the Universal Data Link (UDL) file for connecting to the data source.

IsFixedSize

DbConnectionStringBuilder が固定サイズかどうかを示す値を取得します。Gets a value that indicates whether the DbConnectionStringBuilder has a fixed size.

(継承元 DbConnectionStringBuilder)
IsReadOnly

DbConnectionStringBuilder が読み取り専用かどうかを示す値を取得します。Gets a value that indicates whether the DbConnectionStringBuilder is read-only.

(継承元 DbConnectionStringBuilder)
Item[String]

指定されたキーに関連付けられている値を取得または設定します。Gets or sets the value associated with the specified key. C# の場合、このプロパティはインデクサーです。In C#, this property is the indexer.

Keys

ICollection 内のキーが格納されている OleDbConnectionStringBuilder を取得します。Gets an ICollection that contains the keys in the OleDbConnectionStringBuilder.

OleDbServices

接続文字列の中で OLE DB Services キーに対応する値を取得または設定します。Gets or sets the value to be passed for the OLE DB Services key within the connection string.

PersistSecurityInfo

接続が開いているか、開いている状態になったことがある場合に、パスワードなどの機密性の高い情報を接続文字列の一部として返すかどうかを示すブール値を取得または設定します。Gets or sets a Boolean value that indicates whether security-sensitive information, such as the password, is returned as part of the connection if the connection is open or has ever been in an open state.

Provider

接続文字列に関連付けられたデータ プロバイダーの名前を内部的に保持する文字列を取得または設定します。Gets or sets a string that contains the name of the data provider associated with the internal connection string.

Values

ICollection 内の値を格納している DbConnectionStringBuilder を取得します。Gets an ICollection that contains the values in the DbConnectionStringBuilder.

(継承元 DbConnectionStringBuilder)

メソッド

Add(String, Object)

指定したキーおよび値を持つエントリを DbConnectionStringBuilder に追加します。Adds an entry with the specified key and value into the DbConnectionStringBuilder.

(継承元 DbConnectionStringBuilder)
Clear()

OleDbConnectionStringBuilder インスタンスの内容を消去します。Clears the contents of the OleDbConnectionStringBuilder instance.

ClearPropertyDescriptors()

関連する PropertyDescriptor 上の DbConnectionStringBuilder オブジェクトのコレクションをクリアします。Clears the collection of PropertyDescriptor objects on the associated DbConnectionStringBuilder.

(継承元 DbConnectionStringBuilder)
ContainsKey(String)

OleDbConnectionStringBuilder に特定のキーが格納されているかどうかを判断します。Determines whether the OleDbConnectionStringBuilder contains a specific key.

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判定します。Determines whether the specified object is equal to the current object.

(継承元 Object)
EquivalentTo(DbConnectionStringBuilder)

この DbConnectionStringBuilder オブジェクトの接続情報を、提供されたオブジェクトの接続情報を比較します。Compares the connection information in this DbConnectionStringBuilder object with the connection information in the supplied object.

(継承元 DbConnectionStringBuilder)
GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(継承元 Object)
GetProperties(Hashtable)

指定された Hashtable に、この DbConnectionStringBuilder のすべてのプロパティに関する情報を格納します。Fills a supplied Hashtable with information about all the properties of this DbConnectionStringBuilder.

(継承元 DbConnectionStringBuilder)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
Remove(String)

指定されたキーを持つエントリを OleDbConnectionStringBuilder インスタンスから削除します。Removes the entry with the specified key from the OleDbConnectionStringBuilder instance.

ShouldSerialize(String)

指定されたキーが、この DbConnectionStringBuilder インスタンスに存在するかどうかを示します。Indicates whether the specified key exists in this DbConnectionStringBuilder instance.

(継承元 DbConnectionStringBuilder)
ToString()

DbConnectionStringBuilder に関連付けられた接続文字列を返します。Returns the connection string associated with this DbConnectionStringBuilder.

(継承元 DbConnectionStringBuilder)
TryGetValue(String, Object)

指定されたキーに対応する値を OleDbConnectionStringBuilder のインスタンスから取得します。Retrieves a value corresponding to the supplied key from the OleDbConnectionStringBuilder instance.

明示的なインターフェイスの実装

ICollection.CopyTo(Array, Int32)

ICollection の要素を Array にコピーします。Array の特定のインデックスからコピーが開始されます。Copies the elements of the ICollection to an Array, starting at a particular Array index.

(継承元 DbConnectionStringBuilder)
ICollection.IsSynchronized

ICollection へのアクセスが同期されている (スレッド セーフである) かどうかを示す値を取得します。Gets a value indicating whether access to the ICollection is synchronized (thread safe).

(継承元 DbConnectionStringBuilder)
ICollection.SyncRoot

ICollection へのアクセスを同期するために使用できるオブジェクトを取得します。Gets an object that can be used to synchronize access to the ICollection.

(継承元 DbConnectionStringBuilder)
ICustomTypeDescriptor.GetAttributes()

コンポーネントのこのインスタンスのカスタム属性のコレクションを返します。Returns a collection of custom attributes for this instance of a component.

(継承元 DbConnectionStringBuilder)
ICustomTypeDescriptor.GetClassName()

コンポーネントのこのインスタンスのクラス名を返します。Returns the class name of this instance of a component.

(継承元 DbConnectionStringBuilder)
ICustomTypeDescriptor.GetComponentName()

コンポーネントのこのインスタンスの名前を返します。Returns the name of this instance of a component.

(継承元 DbConnectionStringBuilder)
ICustomTypeDescriptor.GetConverter()

コンポーネントのこのインスタンスの型コンバーターを返します。Returns a type converter for this instance of a component.

(継承元 DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultEvent()

コンポーネントのこのインスタンスの既定のイベントを返します。Returns the default event for this instance of a component.

(継承元 DbConnectionStringBuilder)
ICustomTypeDescriptor.GetDefaultProperty()

コンポーネントのこのインスタンスの既定のプロパティを返します。Returns the default property for this instance of a component.

(継承元 DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEditor(Type)

コンポーネントのこのインスタンスに対して指定されている型のエディターを返します。Returns an editor of the specified type for this instance of a component.

(継承元 DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents()

コンポーネントのこのインスタンスのイベントを返します。Returns the events for this instance of a component.

(継承元 DbConnectionStringBuilder)
ICustomTypeDescriptor.GetEvents(Attribute[])

フィルターとして指定された属性配列を使用して、コンポーネントのこのインスタンスのイベントを返します。Returns the events for this instance of a component using the specified attribute array as a filter.

(継承元 DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties()

コンポーネントのこのインスタンスのプロパティを返します。Returns the properties for this instance of a component.

(継承元 DbConnectionStringBuilder)
ICustomTypeDescriptor.GetProperties(Attribute[])

属性配列をフィルターとして使用して、コンポーネントのこのインスタンスのプロパティを返します。Returns the properties for this instance of a component using the attribute array as a filter.

(継承元 DbConnectionStringBuilder)
ICustomTypeDescriptor.GetPropertyOwner(PropertyDescriptor)

指定したプロパティ記述子によって記述されたプロパティを含むオブジェクトを返します。Returns an object that contains the property described by the specified property descriptor.

(継承元 DbConnectionStringBuilder)
IDictionary.Add(Object, Object)

指定したキーおよび値を持つ要素を IDictionary オブジェクトに追加します。Adds an element with the provided key and value to the IDictionary object.

(継承元 DbConnectionStringBuilder)
IDictionary.Contains(Object)

指定したキーを持つ要素が IDictionary オブジェクトに格納されているかどうかを確認します。Determines whether the IDictionary object contains an element with the specified key.

(継承元 DbConnectionStringBuilder)
IDictionary.GetEnumerator()

IDictionaryEnumerator オブジェクトの IDictionary オブジェクトを返します。Returns an IDictionaryEnumerator object for the IDictionary object.

(継承元 DbConnectionStringBuilder)
IDictionary.IsFixedSize (継承元 DbConnectionStringBuilder)
IDictionary.IsReadOnly (継承元 DbConnectionStringBuilder)
IDictionary.Item[Object]

指定したキーを持つ要素を取得または設定します。Gets or sets the element with the specified key.

(継承元 DbConnectionStringBuilder)
IDictionary.Remove(Object)

指定したキーを持つ要素を IDictionary オブジェクトから削除します。Removes the element with the specified key from the IDictionary object.

(継承元 DbConnectionStringBuilder)
IEnumerable.GetEnumerator()

コレクションを反復処理する列挙子を返します。Returns an enumerator that iterates through a collection.

(継承元 DbConnectionStringBuilder)

拡張メソッド

Cast<TResult>(IEnumerable)

IEnumerable の要素を、指定した型にキャストします。Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable)

指定された型に基づいて IEnumerable の要素をフィルター処理します。Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable)

クエリの並列化を有効にします。Enables parallelization of a query.

AsQueryable(IEnumerable)

IEnumerableIQueryable に変換します。Converts an IEnumerable to an IQueryable.

適用対象

こちらもご覧ください