OdbcConnection.ConnectionString プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
データ ソースを開くために使用する文字列を取得または設定します。
public:
virtual property System::String ^ ConnectionString { System::String ^ get(); void set(System::String ^ value); };
public:
property System::String ^ ConnectionString { System::String ^ get(); void set(System::String ^ value); };
public override string ConnectionString { get; set; }
public string ConnectionString { get; set; }
[System.ComponentModel.SettingsBindable(true)]
public override string ConnectionString { get; set; }
member this.ConnectionString : string with get, set
[<System.ComponentModel.SettingsBindable(true)>]
member this.ConnectionString : string with get, set
Public Overrides Property ConnectionString As String
Public Property ConnectionString As String
プロパティ値
データ ソース名など、初期接続を確立するために必要な設定を含む ODBC ドライバー接続文字列。 既定値は空の文字列 ("") です。 最大長は 1024 文字です。
実装
- 属性
注釈
このプロパティは ConnectionString 、可能な限り ODBC 接続文字列の形式と一致するように設計されています。 接続 ConnectionString が閉じられた場合にのみ設定でき、設定されるとすぐに、ドライバー マネージャーと基になるドライバーにそのまま渡されます。 したがって、の構文 ConnectionString は、ドライバー マネージャーと基になるドライバーのサポートと完全に一致する必要があります。
このプロパティを ConnectionString 使用して、さまざまなデータ ソースに接続できます。 これには、ODBC データ ソース名 (DSN) が含まれます。 次の例は、考えられるいくつかの接続文字列を示しています。
"Driver={SQL Server};Server=(local);Trusted_Connection=Yes;Database=AdventureWorks;"
"Driver={Microsoft ODBC for Oracle};Server=ORACLE8i7;Persist Security Info=False;Trusted_Connection=Yes"
"Driver={Microsoft Access Driver (*.mdb)};DBQ=c:\bin\Northwind.mdb"
"Driver={Microsoft Excel Driver (*.xls)};DBQ=c:\bin\book1.xls"
"Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=c:\bin"
"DSN=dsnname"
注意
ODBC の.NET Framework Data Providerでは、他のPersist Security Info
.NET Framework データ プロバイダーでサポートされているキーワードはサポートされていません。 ただし、このプロパティは ConnectionString 設定されているかのように Persist Security Info
動作します false
。 つまり、接続が開かれている場合は、 ConnectionString プロパティからパスワードを取得できません。 ConnectionString開かれたオブジェクトからプロパティをOdbcConnection読み取ると、接続文字列からパスワードを引いた値が返されます。 この動作は変更できません。したがって、アプリケーションでパスワードが必要な場合は、呼び出す Open前に個別に保存してください。
文字列で指定された設定の多くは、対応する読み取り専用プロパティ (たとえば、 Server=(local)
プロパティに DataSource 対応) を持っています。 これらのプロパティは、エラーが検出された場合を除き、接続が開かれた後に更新されます。 この場合、どのプロパティも更新されません。 OdbcConnection プロパティ (など Database) は、既定の設定またはで指定された ConnectionString設定のみを返します。
Microsoft .NET Framework バージョン 1.0 では、アプリケーションがメソッドを呼び出Openすまで接続文字列の検証は行われません。 接続文字列を検証するのは、基になる ODBC ドライバーの役割です。 接続文字列に無効なプロパティまたはサポートされていないプロパティが含まれている場合、ドライバーは実行時に発生する OdbcException 可能性があります。
ただし、.NET Framework バージョン 1.1 以降のバージョンでは、プロパティを設定するとすぐに接続文字列の基本的な検証がConnectionString行われます。 その時点で、データ プロバイダーは接続文字列が "keyword=value;..." を満たしていることを確認します。形式ですが、キーワードまたは値が有効であるかどうかは確認されません。 残りの検証は、アプリケーションがメソッドを呼び出 Open すときに、基になる ODBC ドライバーによって実行されます。
ODBC 接続文字列の構文は次のとおりです。
connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string
empty-string ::=
attribute ::= attribute-keyword=attribute-value | DRIVER=[{]attribute-value[}]
attribute-keyword ::= DSN | UID | PWD
| driver-defined-attribute-keyword
attribute-value ::= character-string
driver-defined-attribute-keyword ::= identifier
character-string
0 個以上の文字を持ち、 identifier
1 つ以上の文字を持ち、attribute-keyword
大文字と小文字は区別されません。attribute-value
大文字と小文字を区別できます。DSN キーワードの値は空白のみで構成されるわけではありません。
接続文字列と初期化ファイルの文法により、文字 ,;を{}含むキーワードと属性値は避ける必要がありますか?*=!@ は中かっこで囲まれていません。 DSN キーワードの値はブランクのみで構成することはできません。先行ブランクを含めることはできません。 システム情報の文法により、キーワードとデータ ソース名に円記号 (\) 文字を含めることはできません。
属性にセミコロン (;)、中かっこが必要な場合を除き、アプリケーションは、Driver キーワードの後に属性値の周りに中かっこを追加する必要はありません。 ドライバーが受け取る属性値に中かっこが含まれている場合、ドライバーはそれらを削除しないでくださいが、返される接続文字列の一部である必要があります。
任意の文字 []{}(),;を含む中かっこ ({}) で囲まれた DSN または接続文字列の値。*=!@ はドライバーにそのまま渡されます。 ただし、キーワードでこれらの文字を使用すると、ファイル DSN を操作するときにドライバー マネージャーはエラーを返しますが、通常の接続文字列の接続文字列をドライバーに渡します。 キーワード値に埋め込み中かっこを使用しないでください。
接続文字列には、任意の数のドライバー定義キーワードを含めることができます。 DRIVER キーワードはシステムからの情報を使用しないため、ドライバーは、接続文字列内の情報のみを使用してデータ ソースに接続できるように、十分なキーワードを定義する必要があります。 ドライバーは、データ ソースに接続するために必要なキーワードを定義します。
接続文字列でキーワードが繰り返される場合、どの値が選択されるのかは保証されません。
注意
ODBC ドライバーで 1024 文字を超える接続文字列がサポートされている場合は、データ ソース名 (DSN) を使用して最大長の制限を超えることができます。