【问题标题】:Connecting to an Access database in Classic ASP using an ADODB object使用 ADODB 对象连接到经典 ASP 中的 Access 数据库
【发布时间】:2012-03-24 15:15:06
【问题描述】:

我是经典 ASP 的新手。我宁愿提出问题也不愿花几个小时研究来解决我的问题。

我正在访问访问数据库并收到以下错误。

Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified    
/default1.asp, line 30

罪魁祸首是这个

Set MyConn = Server.CreateObject("ADODB.Connection")
MdbFilePath = Server.MapPath("c:\database\MyDatabase.mdb") 
  1. 好吧,我没有安装 Access,但是我将 .mdb 文件复制到了指定的文件夹,这样可以吗?我熟悉 SQL Server,它必须运行才能从中检索数据。

  2. 它使用 ADODB,但我无法归档 DLL。有人可以为我指定 DLL。我必须做些什么才能让它工作。只需注册即可使用regsvr32 my.dll

  3. 我找不到连接字符串(我通常使用连接字符串连接到我的 SQL Server)。在这种情况下,我需要一个用于 Access 数据库吗?

请帮忙

【问题讨论】:

    标签: ms-access asp-classic connection adodb


    【解决方案1】:

    对我来说已经有几年了,所以这个答案可能有点过时了。另外,由于 Access db 以 .mdb 结尾,我假设它是 2007 年之前的数据库。

    是的,只是文件应该可以工作。 Access 不需要运行,它只需要读取文件。但是,您可能需要安装某些组件才能与 Access 数据库(以前是 MDAC - http://www.microsoft.com/download/en/details.aspx?id=1953,如果它仍然是,则不是 100% 确定)。 MDAC 包含 JET 引擎,经典 ASP 使用该引擎与 Access 文件对话。

    关于连接字符串,这个网站提供了一些访问连接字符串的例子:http://connectionstrings.com/access

    编辑 - 添加更多信息

    以防我没有正确关注 cmets,下面是一个如何通过 Classic ASP 连接到 Access 数据库的示例:

    Set MyConn = Server.CreateObject("ADODB.Connection")
    MdbFilePath = "c:\database\MyDatabase.mdb" ''# Server.MapPath is not needed, since we are providing the whole path already
    MyConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & MdbFilePath
    

    在运行上面的代码时,你仍然收到错误吗?另外,您正在运行什么设置(IIS7、IIS6、32 位、64 位)?

    【讨论】:

    • 我还找到了this msft link。我向注册表添加了权限,并且还验证了 mdac 已安装但仍然无法正常工作。可能是我做错了什么
    • 好的,错误消失了。我现在让 CreateObject 失败
    • CreateObject 是在同一行还是其他地方失败?另外,你是如何打开连接的?如果您还没有这样做,这样的事情可能会起作用:MyConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & MdbFilePath
    • 真正的罪魁祸首是Set BACSE = Server.CreateObject("NAICSCodeSE2_1_0.Engine")。我确实注册了DLL。安装 MDAC,现在我再次收到上述错误。应用程序中没有数据库连接。
    • 如果您在 64 位服务器上运行并且使用 32 位对象,则需要为您的站点运行的应用程序池启用 32 位模式。阅读this question了解更多信息。
    猜你喜欢
    • 1970-01-01
    • 2011-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多