Podemos ter a string de conexão generalizada para o SQL Server e o SQL Server Express?
-
06-07-2019 - |
Pergunta
Eu tenho um serviço WCF implantado em uma máquina. Este serviço WCF pode ser configurado para o SQL Server ou o SQL Server Express.
NOTA : O local do banco de dados SQL pode ser outra máquina, além do serviço WCF é implantado.
Coloquei as seguintes informações no arquivo XML:
- ID do usuário
- senha
- Nome do servidor
- Nome da maquina
No caso do SQL Server Express
o Nome do servidor A propriedade é "sqlexpress". Internamente, anexo o nome do servidor com o nome do MachineNen, para que o nome do servidor seja:
MACHINENName sqlexpress
que é passado para a string de conexão.
No caso de SQL Server
Quando eu passo Nome do servidor Para o SQL Server, ele lança exceção.
Por favor, me guie para a melhor abordagem !!
Solução
Qual é a exceção? Também não tenho certeza de qual é a diferença entre o nome do servidor e o nome do MachineNe. Talvez você quis dizer servername e instanceName? Você deve construir sua string dessa maneira (código pseudo, não tenho idéia de qual idioma você está usando):
DataSource = ServerName
If (InstanceName != "")
DataSource += "\" + InstanceName
Outras dicas
Você pode usar o mesmo formato de string de conexão para conectar -se às edições SQL Server Express e completas.
Apenas certifique -se de que você esteja passando com a sequência adequada, algo assim seria comum, para instalações padrão.
Data Source=MachineName\SQLExpress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;
e para o servidor SQL completo
Data Source=MachineName;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;
A razão mais provável é porque sua instância do MSSQLServer está em execução sob a instância padrão, em vez de uma instância nomeada (que é o que o SQL Express faz). Uma contorna é configurar um arquivo de propriedades locais que mantém a sequência de conexão específica para o ambiente. Em seguida, faça referência ao arquivo no próprio arquivo de configuração ou faça parte do seu processo de compilação incorporar as informações no arquivo de configuração.