0

这是错误:

[DBNETLIB][ConnectionOpen (Connect()).]SQL Server does not exist or access denied.

我使用的是 32 位,服务器配置为接受远程访问,我什至可以使用 management studio 远程打开它。

我的应用程序在本地运行良好,但在远程运行不正常。

这是我的连接字符串:

Provider=SQLOLEDB;Password=1234;Persist Security Info=True;User ID=sa;Initial Catalog=test;Data Source=127.0.0.1

我只是将 ip 更改为远程服务器的 ip,但是如果不使用 ODBC 并将 mssql 安装到客户端单元,我需要什么 dll?

4

2 回答 2

1

仅当您将 SQL Server 安装为默认实例时,您的连接字符串才会起作用(因为它将默认为端口 1433)。如果 SQL Server 作为命名实例安装(SQL Express 的默认设置),那么它将使用随机端口号。

这样做...在服务器上,

Click Programs -> 
      Microsoft SQL Server 2008 -> 
      Configuration Tools -> 
      Microsoft SQL Server Configuration Manager

Expand SQL Server Network Configuration
Click on Protocols
Make sure TCP/IP is enabled
Right click on TCP/IP
Click Properties
Click IP Addresses
Scroll down to IPAll.
Take note of the TCP Dynamic Ports.

一旦确定要使用的端口,就可以修改连接字符串。

Provider=SQLOLEDB;Password=1234;Persist Security Info=True;User ID=sa;Initial Catalog=test;Data Source=127.0.0.1, 12345

当然,将 12345 更改为您在上一步中发现的实际端口号。

于 2013-09-12T15:00:26.877 回答
0

我将我的 mssql 服务器 express 更改为 mssql 服务器标准,它成功了,不需要更改 DLL 或代码。

于 2013-09-12T16:59:21.120 回答