다음을 통해 공유


OdbcConnection.ConnectionString 속성

정의

데이터 소스를 여는 데 사용되는 문자열을 가져오거나 설정합니다.

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 데이터 공급자는 다른 .NET Framework 데이터 공급자가 지원하는 키워드(keyword) 지원하지 Persist Security Info 않습니다. 그러나 속성은 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;..."를 충족하는지 확인합니다. 형식이지만 키워드 또는 값이 유효한지 여부는 확인하지 않습니다. 애플리케이션 호출 때 내부 ODBC 드라이버가 나머지 확인 수행을 Open 메서드.

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 가 있고, 하나 이상의 문자가 있고, attribute-keyword 대/소문자를 구분하지 않으며, attribute-value 대/소문자를 구분할 수 있으며, DSN 키워드(keyword) 값은 공백으로만 구성되지 않습니다.

연결 문자열 및 초기화 파일 문법으로 인해 []{}(),;문자가 포함된 키워드 및 특성 값을 피해야 합니다. *=!@ 중괄호로 묶지 않습니다. DSN 키워드(keyword) 값은 공백으로만 구성될 수 없으며 선행 공백을 포함해서는 안 됩니다. 시스템 정보의 문법 때문에 키워드 및 데이터 원본 이름은 백슬래시(\) 문자를 포함할 수 없습니다.

애플리케이션 특성을 세미콜론 (;)을 포함 하지 않는 한 특성 값을 묶는 중괄호는 Driver 키워드 뒤에 추가 하려면에 없는 경우 중괄호는 필요 합니다. 드라이버가 수신하는 특성 값에 중괄호가 포함된 경우 드라이버는 중괄호를 제거하면 안 되지만 반환된 연결 문자열 포함되어야 합니다.

문자 []{}()를 포함하는 중괄호({})로 묶인 DSN 또는 연결 문자열 값입니다.;? *=!@은 드라이버에 그대로 전달됩니다. 그러나 키워드(keyword) 이러한 문자를 사용하는 경우 드라이버 관리자는 파일 DSN을 사용할 때 오류를 반환하지만 일반 연결 문자열을 위해 드라이버에 연결 문자열 전달합니다. 키워드(keyword) 값에 포함된 중괄호를 사용하지 마세요.

연결 문자열 드라이버 정의 키워드의 수를 포함할 수 있습니다. DRIVER 키워드(keyword) 시스템의 정보를 사용하지 않으므로 드라이버는 연결 문자열 정보만 사용하여 데이터 원본에 연결할 수 있도록 충분한 키워드를 정의해야 합니다. 드라이버는 데이터 원본에 연결하는 데 필요한 키워드를 정의합니다.

연결 문자열 키워드가 반복되는 경우 어떤 값이 선택될지 보장할 수 없습니다.

참고

ODBC 드라이버가 1024자보다 긴 연결 문자열을 지원하는 경우 DSN(데이터 원본 이름)을 사용하여 최대 길이 제한을 초과할 수 있습니다.

적용 대상

추가 정보