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 de driver ODBC que inclui configurações, como o nome da fonte de dados, necessárias para estabelecer a conexão inicial. O valor padrão é uma cadeia de caracteres vazia (""). O tamanho máximo é de 1.024 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. O ConnectionString pode ser definido somente quando a conexão é fechada e, assim que ela é definida, é passada, inalterada, para o Gerenciador de Driver e o driver subjacente. Portanto, a sintaxe do ConnectionString 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 da 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 .NET Framework para ODBC não dá suporte ao Persist Security Info palavra-chave com suporte de outros provedores de dados .NET Framework. No entanto, a ConnectionString propriedade se comporta como se Persist Security Info fosse 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, o cadeia de conexão é retornado 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.

No Microsoft .NET Framework versão 1.0, a validação do cadeia de conexão não ocorre até que um aplicativo chame o Open método . É responsabilidade do driver ODBC subjacente validar o cadeia de conexão. Se o cadeia de conexão contiver propriedades inválidas ou sem suporte, o driver poderá gerar um em tempo de execuçãoOdbcException.

No entanto, no .NET Framework versão 1.1 e versões posteriores, ocorre alguma validação básica do cadeia de conexão assim que você define a ConnectionString propriedade. Nesse momento, o provedor de dados verifica se o cadeia de conexão atende ao "palavra-chave=value;..." 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

em character-string que 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 do palavra-chave DSN não consiste apenas em espaços em branco.

Devido ao cadeia de conexão e à gramática do arquivo de inicialização, devem ser evitadas palavras-chave e valores de atributo que contenham os caracteres []{}();? *=!@ não entre chaves. O valor do 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 depois que o Driver palavra-chave, 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 do cadeia de conexão retornado.

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

O cadeia de conexão pode incluir qualquer número de palavras-chave definidas pelo driver. Como o driver palavra-chave 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 no cadeia de conexão. O driver define quais palavras-chave são necessárias para se conectar à fonte de dados.

Se alguma palavra-chave for repetida no 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 1024 caracteres, você poderá usar um DSN (nome da fonte de dados) para exceder a limitação de comprimento máximo.

Aplica-se a

Confira também