Acessando SQL em um número de porta diferente (string clássico conexão ASP)
-
06-07-2019 - |
Pergunta
Eu tenho um site antigo e clássico ASP que se conecta a uma instância local do servidor SQL 2000. Nós estamos movendo o db para uma nova caixa, ea porta é não padrão para sql (fora do meu controle). seqüências de conexão NET lidar com o número de porta bem, adicionando-o com, 1999, após o nome do servidor / IP. A string clássico conexão ASP não está trabalhando com a mesma sintaxe. Eu verifiquei connectionstrings.com e não poderia encontrar um que trabalhou.
seqüência de conexão atual (definida como uma variável de aplicação em Global.asa):
Driver={SQL Server};Server=xxx.xxx.xxx.xxx;Database=dbname;Uid=dbuser;Pwd=dbpassword
Eu instalei o SQL Native Client e não conseguia que o trabalho seja (ainda trabalhando nisso)
Todas as idéias?
Solução
A solução foi instalar o driver SQL nativo de MS, em seguida, atualizar a seqüência de conexão para o seguinte:
Driver={SQL Native Client};Server=xxx.xxx.xxx.xxx,port;Database=dbname;Uid=dbuser;Pwd=dbpassword
Inicialmente eu não poderia fazê-lo funcionar com o SQL Native Client por causa de um problema de firewall que mais tarde foi resolvido.
Outras dicas
Eu acho que precisamos de mais informações. O que você está usando para se conectar ao banco de dados? ODBC? OLE DB? Você está se conectando através de e ODBC DSN? É a seqüência de conexão em seu código ASP, ou é o seu acesso a dados através de um VB ou DLL?
cst = "Provider=SQLOLEDB;" & _
"Data Source=<x.x.x.x>,<port number>;" & _
"Initial Catalog=<dbname>;" & _
"Network=DBMSSOCN;" & _
"User Id=<uid>;" & _
"Password=<pwd>"
set conn = CreateObject("ADODB.Connection")
conn.open cst