经典ASP远程SQL连接字符串

时间:2011-08-19 15:28:56

标签: sql-server-2008 asp-classic database-connection connection-string

我有一个完全彻底困扰我的困境......

我们有一个已经运行了大约一年的经典ASP站点,它通过本地Win2008 SQL数据库提供动力(SQL Express引擎与IIS在同一台服务器上)。这是我们当前使用的连接字符串

Provider=SQLNCLI10;Server=SERVERNAME\SQLEXPRESS;Database=dbname;user id=username;password=password;

我们现在需要将数据库移动到专用数据库服务器,并远程连接到它 - 我们恢复了服务器上的数据库,并检查了一切看起来没问题(所有数据都出现在所有表中)

所以我们将服务器名称更改为IP地址并且无法连接它,最后我们可以使用此连接字符串来连接它的唯一方法。

driver={SQL Server Native Client 10.0};server=IPADDRESS\SQLEXPRESS,1433;uid=user;pwd=password;database=dbname;

HOWEVER ...现在它在前端和后端随机丢失了产品名称和SKU以及价格,即使数据存在于数据库并且它真的很慢显示网页?如果我在本地使用相同的DB与前一个连接字符串,那么它很好并且所有数据都出现了吗?

我知道这个数据库服务器很好,因为它通过远程连接为其他ASP.NET站点提供支持,并且连接速度非常快?

任何提示......或帮助解决为什么这个新的连接字符串导致从DB读取数据的问题???

1 个答案:

答案 0 :(得分:2)

要将Web服务器上的本机客户端更新为最新的公共版本,请转到此处:

http://support.microsoft.com/hotfix/KBHotfix.aspx?kbnum=2567714

如果您的Web服务器是X86计算机,请选中“2008R2_SP1_SNAC_CU2_2567714_10_50_2772_x86”框;如果是64位,请选中“2008R2_SP1_SNAC_CU2_2567714_10_50_2772_x64”。输入您的电子邮件地址,填写验证码,点击“请求修补程序”,下载链接将通过电子邮件发送给您。将其下载到Web服务器,运行安装程序(使用电子邮件中发送给您的密码)并重新启动Web服务器。现在再次尝试原始连接字符串。

修改

添加我过去使用的其他一些示例连接字符串(自90年代以来,我一直是一个经典的ASP人,在aspfaq.com创建和编写95%的内容,包括this article on connection strings )。根据对原始问题的评论中的要求。

请注意,“srv”可以是IP地址,localhostservername.,然后可以跟\INSTANCE_NAME(例如\SQLEXPRESS })。我会按照这个顺序尝试它们,并注意参数名称和值 - 你似乎将现代参数名称(例如Provider)与不太现代的参数名称(例如数据库)混合在一起。

Provider=SQLNCLI10;Data Source=srv;Initial Catalog=db;User ID=user;Password=pwd;

Provider=SQLOLEDB.1;Data Source=srv;Initial Catalog=db;User ID=user;Password=pwd;

Provider=SQLOLEDB;Data Source=srv;Initial Catalog=db;User ID=user;Password=pwd;

Driver={SQL Server};Server=srv;Database=db;UID=user;PWD=pwd;

有时,如果您遇到命名管道或共享内存问题,可以通过添加以下参数来帮助强制执行TCP / IP:

NETWORK=DBMSSOCN;

您可以在Carl Prothman's siteConnectionStrings.com获取更多信息。由于显而易见的原因,它们不再特别迎合传统ASP,但您仍然可以从他们为其他语言提供的样本中收集大量信息。