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"
Примечание
Поставщик данных платформа .NET Framework для ODBC не поддерживает 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 свойства . В это время поставщик данных проверяет, соответствует ли строка подключения "ключевое слово=значение;..." формат, но он не проверяет, являются ли ключевые слова или значения допустимыми. Оставшаяся проверка выполняется базовым драйвером 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
содержит ноль или несколько символов; identifier
имеет один или несколько символов; attribute-keyword
не учитывает регистр; attribute-value
может быть с учетом регистра; а значение dsN ключевое слово состоит не только из пустых значений.
Из-за строка подключения и грамматики файла инициализации следует избегать ключевых слов и значений атрибутов, содержащих символы []{}(),;? *=!@ не заключен в фигурные скобки. Значение имени DSN ключевое слово не может состоять только из пустых значений и не должно содержать пробелы в начале. Из-за грамматики системных сведений ключевые слова и имена источников данных не могут содержать символ обратной косой черты (\).
Приложениям не нужно добавлять фигурные скобки вокруг значения атрибута после ключевое слово Driver, если атрибут не содержит точку с запятой (;), в этом случае фигурные скобки являются обязательными. Если значение атрибута, получаемое драйвером, включает фигурные скобки, драйвер не должен удалять их, но они должны быть частью возвращаемого строка подключения.
DsN или строка подключения значение, заключенное в фигурные скобки ({}), которое содержит любой из символов []{}(),;? *=!@ передается драйверу без изменений. Однако при использовании этих символов в ключевое слово диспетчер драйверов возвращает ошибку при работе с именами DSN файлов, но передает строка подключения драйверу для обычных строк подключения. Избегайте использования встроенных фигурных скобок в ключевое слово значении.
Строка подключения может включать любое количество ключевых слов, определенных драйвером. Так как ключевое слово DRIVER не использует сведения из системы, драйвер должен определить достаточно ключевых слов, чтобы драйвер смог подключиться к источнику данных, используя только сведения из строка подключения. Драйвер определяет ключевые слова, необходимые для подключения к источнику данных.
Если в строка подключения повторяются какие-либо ключевые слова, нет никакой гарантии, какое значение будет выбрано.
Примечание
Если драйвер ODBC поддерживает строки подключения длиной более 1024 символов, можно использовать имя источника данных (DSN), чтобы превысить ограничение максимальной длины.