日常食物英语单词大全:asp与数据库连接

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/28 16:22:59
打开网站出现"数据库连接出错,请打开conn.asp文件检查连接字串。"的错误.
检查conn.asp文件,其中有余下代码:
<%@ LANGUAGE = VBScript CodePage = 936%>
<%
Option Explicit
Dim startime,Conn,db
Response.Buffer = True
startime = Timer()
Dim NowString
Dim ConnStr

Sub ConnectionDatabase()
On Error Resume Next
'-----------------------ACCESS数据库连接----------------------------------------
NowString = "Now()"
'ACCESS数据库连接,请使用根路径或者绝对路径
db = "\database\#newasp.mdb"
Connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ChkMapPath(db)
'-------------------------------------------------------------------------------
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open Connstr
If Err Then
Err.Clear
Set Conn = Nothing
Response.Write "数据库连接出错,请打开conn.asp文件检查连接字串。"
Response.End
End If
End Sub

Dim DBPath
'-- 采集数据库连接路径
DBPath = "/database/#Collection.mdb" '-- 请用根相对路径

Sub CloseConn()
On Error Resume Next
If IsObject(Conn) Then
Conn.Close
Set Conn = Nothing
End If
Set Newasp = Nothing
End Sub
%>

我的数据库放位置为根目录下的\database\#newasp.mdb中,请问这是什么原因呢?
感谢大家的热心帮助,最后检查是数据库本身出了点小问题,那下来修复压缩一次就好了.caoy的回答告诉了我们一种解决问题的途径,那就挑他了

建议要自己掌握好调试的方法。你可以把Connstr response.write出来,看看路径对不对。加上response.write Connstr response.end来调试。要掌握好这个方法。

ChkMapPath函数的问题!


Connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ChkMapPath(db)

改成

Connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(db)

这样就可以了!

你用的是绝对路径,应该改为相对路径兄弟,将db="\database\#newasp.mdb"改为 db="database/#newasp.mdb"

Connstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ChkMapPath(db)

你有 ChkMapPath 这个函数吗

没有的话
改成 Server.MapPath(db)

ACCESS数据库连接,请使用根路径或者绝对路径
db = "\database\#newasp.mdb"

请问你是网站是直接运行在主目录下面的吗?

如果你的网站运行在虚拟目录下面,比如
http://aaa.aaa.aaa/username/
这样,那么你的数据库路径就不正确。

如果你的网站的是虚拟目录为 abc
那么可以这样来设置你的数据库路径
db = Server.MapPath( "/abc" ) + "\database\#newasp.mdb"
试试