我一直在考虑从Windows 2003服务器(SQL Server 2000和IIS 6)写在传统的ASP到端口的Web应用程序到Windows 2008服务器(SQL Server 2008和IIS 7.5)。
该网站使用GLOBAL.ASA
文件来定义全局变量,其中之一是连接字符串( cnn
)连接到SQL Server。
下面是从(旧)连接字符串GLOBAL.ASA
:
Sub Application_OnStart
Dim cnnDem, cnnString
Set cnnDem = Server.CreateObject("ADODB.Connection")
cnnDem.CommandTimeout = 60
cnnDem.Mode = admodeshareexclusive
cnnString = "Provider=SQLOLEDB; Data Source=192.xxx.x.xx; User Id=xxxx; Password=xxxxx; default catalog=xxxxxxx;"
Application("conString")=cnnString
Call cnnDem.Open(cnnString)
Application("cnn") = cnnDem
End Sub
该.ASP
页面然后使用cnn
值是这样的:
strSQL = "Select * From tblUtilities order by companyname"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open strSQL, Application("cnn"), adOpenKeyset
但是我不能让连接字符串连接 - 我又缩减到一个“登录失败”错误信息(不管我试了一下登录ID)。
我编辑的GLOBAL.ASA
文件,如下所示,它的工作原理。
Sub Application_OnStart
Dim cnnDem, cnnString
Set cnnDem = Server.CreateObject("ADODB.Connection")
cnnDem.CommandTimeout = 60
cnnString = "Provider=SQLNCLI10.1;User Id=xxxx; Password=xxxxx;Initial Catalog=xxxxxxx;Data Source=xxxxxx\SQLEXPRESS;"
Application("conString")=cnnString
Application("cnn")=cnnString
Call cnnDem.Open(cnnString)
End Sub
主要的区别是, cnn
现在包含连接字符串,其中如先前cnn
是参照对象ADOBD.Connection
。
我的问题是什么样的影响(如有)将在对应用程序。 我已经做了一些基本的(本地)的测试,一切看起来正常的时刻。 但我想知道是否有可能是多用户的问题(或类似这种事情)时,该网站再次部署可能出现的。