ASP连接ACCESS数据库失败,提示“未发现数据源名称并且未指定默认驱动程序”

小生刚开始学ASP,教材用的是清华大学出版社出版的《网站开发非常之旅ASP网络编程从入门到精通》一书,顼宇峰、马军编著。
今天学的是第八章第4节——使用Connection对象,学习过程中看到如下这样一道编程题:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Example4.asp</title>
</head>

<body>
<%
database="search.mdb"
Strconnect="Driver={Microsoft Access Driver(*.mdb)};DBQ="&Server.MapPath(database)
set Objconn=Server.CreateObject("Adodb.connection")
Objconn.open Strconnect
Objconn.Execute"Insert Into Record(name) values ('eawin')",RecordsAffected,adcmdtext
Response.write("The RecordsAffected is "&RecordsAffected)
Set rs=objconn.Execute("Select *form Record",RecordsAffected1,adCMDText)
Response.write("<br>The RecordsAffected is "&RecordsAffected1)
Objconn.close
%>
</body>
</html>

输入DreamWeaver后,预览时错误提示:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
/ASP/example4.asp, 第 12 行

在预览前,我创建了系统SDN的,我的ACCESS数据库存D盘根目录下的,数据库的文件名是search.mdb。我尝试过不使用MapPath()方法,直接用Strconnect="Driver={Microsoft Access Driver(*.mdb)};DBQ=d:/search.mdb"但还法无法成功预览,错误提示仍然是同上,说是“未发现数据源名称并且未指定默认驱动程序”

声明一下,在DreamWeaver中建立了站点了。

呵呵,你用变量database代替数据库 在连接数据的时候 因为 database 是变量 所以 Server.MapPath(database) 应写成 Server.MapPath("&database&") 这个你要参考字符串 数字 和 ID在连接时不同的格式,
我给你个我长用的正确而且简单的连接方法
<%
Set Conn=Server.CreateObject("ADODB.Connection")
Conn.open "Dbq="&Server.MapPath("date/date.mdb")&";Driver={Microsoft Access Driver (*.mdb)}"
%>
百适不爽,asp很好学的,以后有不懂的在问我.
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-04-24
数据调用地址不对!调用页当前地址要与数据库相对地址相同

ASP中五种连接数据库的方法
第一种 - 这种方法用在ACCESS中最多

strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & Server.MapPath("aspfree.mdb")

set conn = server.createobject("adodb.connection")

conn.open strconn

第二种-这种方法用在SQL SERVER中多

strconn = "Driver={SQL Server};Description=sqldemo;SERVER=127.0.0.1;UID=LoginID;PWD=Password;DATABASE=Database_Name

set conn = server.createobject("adodb.connection")

conn.open strconn

第三种

strconn="Driver={MicrosoftAccessDriver(*.mdb)};" &_

"DBQ=F:\Inetpub\wwwroot\somedir\db1.mdb;DefaultDir=f:\Inetpub\wwwroot\somedir;uid=LoginID;" &_

"pwd=Password;DriverId=25;FIL=MSAccess;" set conn = server.createobject("adodb.connection")

conn.open strconn

第四种运用系统数据源

The following uses a Data Source Name:

set conn = server.createobject("adodb.connection")

conn.open "Example"

第五种运用ODBC数据源,前提是你必须在控制面板的ODBC中设置数据源

set rs = server.createobject("adodb.recordset")

rs.open "tblname", "DSNName", 3, 3
第2个回答  2009-04-24
没有看见你的数据库在那里啊?是在目录文件里么?其实可以不声明的,直接指定就可以的。
这样简单些
<%
set conn=server.createobject("adodb.connection") '连接库
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("search.mdb")
%>
第3个回答  2009-04-23
1、数据库文件应该放在站点内,就是把search.mdb拷贝到你的站点根目录下。
2、确保你机子有Microsoft Access Driver(安装Access就可以了)

ASP连接ACCESS数据库失败,提示“未发现数据源名称并且未指定默认驱动...
呵呵,你用变量database代替数据库 在连接数据的时候 因为 database 是变量 所以 Server.MapPath(database) 应写成 Server.MapPath("&database&") 这个你要参考字符串 数字 和 ID在连接时不同的格式,我给你个我长用的正确而且简单的连接方法 < Set Conn=Server.CreateObject("ADODB.Connection")...

asp 连接ACCESS数据库 未发现数据源名称并且未指定默认驱动程序
你用的是ACCESS 2007的数据库,要注意比须安装对应的驱动程序,不能再使用ACCESS 2003的驱动程序,版本好像是Microsoft.ACE.OLEDB.12.0。Set conn=Server.CreateObject("adodb.connection")conn.Provider="microsoft.ACE.oledb.12.0"conn.Open Server.MapPath("db\/test.accdb")服务器为了支持access 2007 ...

未发现数据源名称并且未指定默认驱动程序怎么解决
1. 安装access2010的64位版问题就解决了,但是在asp中连接数据库的方法就得改了。2.iis中有个“应用程序池”,在右侧点击“设置应用程序池默认设置”,常规—启用32位应用程序。

...未发现数据源名称并且未指定默认驱动程序”
如果数据库和asp文件在下级目录,比如在d文件夹中 Strconn="driver={microsoft access driver (*.mdb)};dbq=" & server.mappath("d\/info.mdb")如果数据库和asp文件在上级目录 Strconn="driver={microsoft access driver (*.mdb)};dbq=" & server.mappath("..\/info.mdb")...

...未发现数据源名称并且未指定默认驱动程序”
driver={microsoft access driver (*.mdb)};dbq=d:\\asp\\xx.mdb 选择本地服务器,测试,就可以了,这个使用的是绝对路径(注意空格,千万别少,否则必错)或者 Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("xx.mdb")选择远程服务器,测试,就可以了。这个使用的是相对路径 ...

...未发现数据源名称并且未指定默认驱动程序”
可能是没有用 server.mappath,具体的看你字符串是什么了,直接用路径肯定不能用,更不能放到服务器上了,具体的我也不清楚。希望能帮到你

...未发现数据源名称并且未指定默认驱动程序”
set conn=server.createobject("adodb.connection")conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(FileName)

未发现数据源名称并且未指定默认驱动程序
在控制面板—管理工具——数据源 中设置ODBC数据源,或者你的ASP代码中连接数据库时用以下方式,则不需要ODBC数据源了:Set conn = Server.CreateObject("ADODB.Connection")Conn.Open "DRIVER=SQL Server;SERVER=(local);DATABASE=数据库;UID=用户名;password=密码"...

ASP未发现数据源名称并且未指定默认驱动程序
conn.open "provider=microsoft.jet.oledb.4.0; data source="&="& server.mappath("\/data\/LY.mdb") '这是打开对象,要两个参数,provider是数据驱动,data source是数据源。是另外一种语法,比你的driver=。。要适用。set rs=conn.execute("SELECT * FROM message")'创建一个数据集,从数据库...

未发现数据源名称并且未指定默认驱动程序 ASP连接数据库问题
没有说明使用什么驱动 。给你个连接字符串的例子 比如 连接SQL SERVER Recordset1.ActiveConnection ="PROVIDER=SQLOLEDB;DSN=hotel;UID=sa;PWD=pass"连接ACCESS Recordset1.ActiveConnection="Provider=Microsoft.Jet.OLEDB.4.0;DSN=hotel;Mode=ReadWrite;Persist Security Info=False"...

相似回答