SQL2000数据库放在SQL2005后的ASP连接语句(Provider的值要变为:SQLNCLI.1)
成功志
SQL2000数据库放在SQL2005后的ASP连接语句(Provider的值要变为:SQLNCLI.1)
2012-4-21 ok12

SQL2000数据库放在SQL2005后的ASP连接语句(Provider的值要变为:SQLNCLI.1)


问题起因:原来是SQL2000数据库,后来移到 SQL2005 后出错

SQL SERVER2005的数据源类型和2000的是不一样的,需要在连接字符串里要更改一下Provider的值

如下:

Provider=SQLNCLI.1;

其它的没有需要改的地方。

以下为一个完整的连接字符串示例

Provider=SQLNCLI.1;Password=pass;Persist Security Info=True;User ID=sa;Initial Catalog=dbname;Data Source=local


附上 asp与sql2000,sql2005,access数据库连接字串:


1、与sql2000连接字串:


Set Conn = Server.CreateObject("ADODB.Connection")


connstr="Provider=SqlOLEDB;Data Source=服务器IP(本地为local);initial catalog=数据库名;user ID=用户名;password=密码;"


Conn.Open connstr


2、与sql2005连接字串:


Set Conn = Server.CreateObject("ADODB.Connection")


connstr="Provider=SQLNCLI.1;Data Source=服务器IP(本地为local);initial catalog=数据库名;user ID=用户名;password=密码;"


Conn.Open connstr


3、与access连接字串:


Set Conn = Server.CreateObject("ADODB.Connection")


db="数据库路径"


connstr="Provider=Microsoft.Jet.OLEDB.4.0; Data Source="&server.mappath(""&db&"")


Conn.Open connstr




4.一个在用的连接SQL2005的实例


Const SqlDatabaseName = "mdb" ' 数据库名字'

Const SqlPassword = "pass" '数据库密码'

Const SqlUsername = "user" '数据库帐户'

Const SqlLocalName = "local" '数据库地址'


'数据库连接

Sub ConnectionDatabase

   Dim ConnStr

   ConnStr = "Provider = SQLNCLI.1; User ID = " & SqlUsername & "; Password = " & SqlPassword & "; Initial Catalog = " & SqlDatabaseName & "; Data Source = " & SqlLocalName & ";"

   On Error Resume Next '屏蔽出错显示路径(安全考虑)

   Set conn = Server.CreateObject("ADODB.Connection")   

   conn.open ConnStr

   If Err Then

    err.Clear

    Set Conn = Nothing

    Response.Write "数据库连接出错,请检查连接字串!"

    Response.End

   End If

End Sub


'打开数据库连接

call ConnectionDatabase()

发表评论:
昵称

邮件地址 (选填)

个人主页 (选填)

内容