SQL Server Native Client 10.0 OLE DB Provider

Strings de conexão para SQL Server Native Client 10.0 OLE DB Provider

SQL Server

Segurança padrão

Provider=SQLNCLI10;Server=Servidor;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;

Você está usando SQL Server 2008 Express? Não esqueça da sintaxe do nome do servidor Servidor\SQLEXPRESS onde você substitui Servidor pelo nome do computador onde a instalação do SQL Server 2008 Express reside.

Quando usar o SQL Native Client?

Conexão Confiável

Provider=SQLNCLI10;Server=Servidor;Database=BancoDeDados;Trusted_Connection=yes;

Estes parâmetros são equivalentes: "Integrated Security=SSPI" é igual a "Trusted_Connection=yes"

Usar uma porta diferente

Se o seu SQL Server escuta em uma porta não padrão, você pode especificar isso usando a sintaxe Servidor,Porta (note a vírgula, não é um dois pontos).

Provider=SQLNCLI10;Server=Servidor,Porta;Database=BancoDeDados;Uid=Usuario;Pwd=Senha;

A porta padrão do SQL Server é 1433 e não há necessidade de especificá-la na string de conexão.

Anexar um arquivo de banco de dados ao conectar a uma instância local do SQL Server Express

Provider=SQLNCLI10;Server=.\SQLExpress;AttachDbFilename=C:\Diretorio\Arquivo.mdf;Database=BancoDeDados;Trusted_Connection=Yes;

Por que o parâmetro Database é necessário? Se o banco de dados nomeado já foi anexado, o SQL Server não o anexa novamente. Ele usa o banco de dados anexado como padrão para a conexão.

Anexar um arquivo de banco de dados, localizado no diretório de dados, ao conectar a uma instância local do SQL Server Express

Provider=SQLNCLI10;Server=.\SQLExpress;AttachDbFilename=Arquivo.mdf;Database=BancoDeDados;Trusted_Connection=Yes;

Por que o parâmetro Database é necessário? Se o banco de dados nomeado já foi anexado, o SQL Server não o anexa novamente. Ele usa o banco de dados anexado como padrão para a conexão.

Conectando a uma instância do SQL Server

A sintaxe para especificar a instância do servidor no valor da chave do servidor é a mesma para todas as strings de conexão para o SQL Server.

Provider=SQLNCLI10;Server=Servidor\Instancia;Database=BancoDeDados;Trusted_Connection=yes;

Criptografar dados enviados pela rede

Provider=SQLNCLI10;Server=Servidor;Database=BancoDeDados;Trusted_Connection=yes;Encrypt=yes;

Espelhamento de Banco de Dados

Se você se conectar com ADO.NET ou o SQL Native Client a um banco de dados que está sendo espelhado, sua aplicação pode aproveitar a capacidade do driver de redirecionar automaticamente as conexões quando ocorre uma falha no espelhamento do banco de dados. Você deve especificar o servidor principal inicial e o banco de dados na string de conexão e o servidor parceiro de failover.

Provider=SQLNCLI10;Data Source=BancoDeDados;Failover Partner=Servidor2;Initial Catalog=BancoDeDados;Integrated Security=True;

Existem, claro, muitas outras maneiras de escrever a string de conexão usando o espelhamento de banco de dados, este é apenas um exemplo destacando a funcionalidade de failover. Você pode combinar isso com as outras opções de string de conexão disponíveis.

Habilitar MARS

Provider=SQLNCLI10;Server=Servidor;Database=BancoDeDados;Trusted_Connection=yes;MARS Connection=True;

Prompt para nome de usuário e senha

Este é um pouco complicado. Primeiro, defina a propriedade Prompt do objeto de conexão para adPromptAlways. Em seguida, use a string de conexão para se conectar ao banco de dados.

oConn.Properties("Prompt") = adPromptAlways
oConn.Open "Provider=SQLNCLI10
;Server=Servidor;DataBase=BancoDeDados;"

Azure SQL Database

Padrão

A Microsoft não anuncia suporte para conexões OLE DB para Azure e há limitações. Alguns esquemas de linha OLE DB necessários não estão disponíveis a partir de uma conexão Azure, e algumas propriedades que identificam recursos no SQL Server não são ajustadas para representar as limitações do SQL Azure. Para a maioria das tarefas comuns de conectar/consultar/atualizar, parece funcionar bem.

Provider=SQLNCLI10;Password=Senha;User ID=Usuario@Servidor;Initial Catalog=databasename;Data Source=tcp:Servidor.database.windows.net;