Compartilhar via


OdbcConnection.ConnectionString Propriedade

Definição

Obtém ou define a cadeia de caracteres usada para abrir uma fonte de dados.

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

Valor da propriedade

A cadeia de conexão do driver ODBC que inclui configurações, como o nome da fonte de dados, necessária para estabelecer a conexão inicial. O valor padrão é uma cadeia de caracteres vazia (""). O tamanho máximo é 1024 caracteres.

Implementações

Atributos

Comentários

A ConnectionString propriedade foi projetada para corresponder ao formato de cadeia de conexão ODBC o mais próximo possível. A ConnectionString conexão pode ser definida somente quando a conexão for fechada e, assim que ela for definida, ela for passada, inalterada, para o Gerenciador de Driver e o driver subjacente. Portanto, a sintaxe do ConnectionString driver deve corresponder exatamente ao que o Gerenciador de Driver e o driver subjacente dão suporte.

Você pode usar a ConnectionString propriedade para se conectar a uma variedade de fontes de dados. Isso inclui um DSN (nome de fonte de dados) ODBC. O exemplo a seguir ilustra várias cadeias de conexão possíveis.

"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"

Observação

O Provedor de Dados do .NET Framework para ODBC não dá suporte à Persist Security Info palavra-chave compatível com outros provedores de dados do .NET Framework. No entanto, a ConnectionString propriedade se comporta como se Persist Security Info estivesse definida falsecomo . Isso significa que você não poderá recuperar a senha da ConnectionString propriedade se a conexão tiver sido aberta. Quando a ConnectionString propriedade é lida de um OdbcConnection objeto que foi aberto, a cadeia de conexão é retornada menos a senha. Você não pode alterar esse comportamento; portanto, se o aplicativo exigir a senha, armazene-a separadamente antes de chamar Open.

Muitas das configurações especificadas na cadeia de caracteres têm propriedades somente leitura correspondentes (por exemplo, Server=(local)que corresponde à DataSource propriedade). Essas propriedades são atualizadas depois que a conexão é aberta, exceto quando um erro é detectado. Nesse caso, nenhuma das propriedades é atualizada. OdbcConnection as propriedades (como Database) retornam apenas as configurações padrão ou as configurações especificadas no ConnectionString.

Alguma validação básica da cadeia de conexão ocorre assim que você define a ConnectionString propriedade. Nesse momento, o provedor de dados verifica se a cadeia de conexão atende à "palavra-chave=valor;..." formato, mas não verifica se palavras-chave ou valores são válidos. A verificação restante é executada pelo driver ODBC subjacente quando o aplicativo chama o Open método.

Uma cadeia de conexão ODBC tem a seguinte sintaxe:

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

onde character-string tem zero ou mais caracteres; identifier tem um ou mais caracteres; attribute-keyword não diferencia maiúsculas de minúsculas; attribute-value pode diferenciar maiúsculas de minúsculas; e o valor da palavra-chave DSN não consiste apenas em espaços em branco.

Devido à cadeia de conexão e à gramática do arquivo de inicialização, as palavras-chave e os valores de atributo devem ser evitados que contenham os caracteres []{}();? *=!@ não entre chaves. O valor da palavra-chave DSN não pode consistir apenas em espaços em branco e não deve conter espaços em branco à esquerda. Devido à gramática das informações do sistema, palavras-chave e nomes de fonte de dados não podem conter o caractere de barra invertida (\).

Os aplicativos não precisam adicionar chaves ao redor do valor do atributo após a palavra-chave Driver, a menos que o atributo contenha um ponto-e-vírgula (;), nesse caso, as chaves são necessárias. Se o valor do atributo que o driver recebe incluir chaves, o driver não deverá removê-los, mas deve fazer parte da cadeia de conexão retornada.

Um valor de cadeia de conexão ou DSN entre chaves ({}) que contém qualquer um dos caracteres []{}();? *=!@ é passado intacto para o driver. No entanto, quando você usa esses caracteres em uma palavra-chave, o Gerenciador de Driver retorna um erro quando você trabalha com DSNs de arquivo, mas passa a cadeia de conexão para o driver para cadeias de conexão regulares. Evite usar chaves inseridas em um valor de palavra-chave.

A cadeia de conexão pode incluir qualquer número de palavras-chave definidas pelo driver. Como a palavra-chave DRIVER não usa informações do sistema, o driver deve definir palavras-chave suficientes para que um driver possa se conectar a uma fonte de dados usando apenas as informações na cadeia de conexão. O driver define quais palavras-chave são necessárias para se conectar à fonte de dados.

Se as palavras-chave forem repetidas na cadeia de conexão, não haverá garantia de qual valor será selecionado.

Observação

Se um driver ODBC der suporte a cadeias de conexão com mais de 1.024 caracteres, você poderá usar um DSN (nome de fonte de dados) para exceder a limitação máxima de comprimento.

Aplica-se a

Confira também