【问题标题】:[Microsoft][ODBC Microsoft Access Driver] '(unknown)' is not a valid path[Microsoft][ODBC Microsoft Access Driver]“(未知)”不是有效路径
【发布时间】:2014-08-09 19:09:24
【问题描述】:

我已经为映射驱动器创建了 DSN,如下所示:-

 Y:\\192.168.2.5\data\db.accdb

现在我正在使用 sun jdbc odbc 驱动程序从 java 应用程序访问这个数据库。应用在 Window 2008 64 位系统上运行,数据库在 Window Server 2012 64 位系统上运行。

当我使用 Java 64 位运行此应用程序时,它会抛出架构不匹配的错误。

然后我安装了32位的java,上面的问题就解决了。但是遇到另一个问题

  java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] '(unknown)' is
  not a valid path. Make sure that the path name is spelled correctly and that yo
  u are connected to the server on which the file resides. 

如何解决这个问题?

查看数据库路径对我的程序无效。此路径与 Y:\192.168.2.5\shared 驱动器映射。

【问题讨论】:

    标签: java ms-access-2007 jdbc-odbc


    【解决方案1】:

    我发现,IIS 似乎无法使用映射的网络驱动器,因为它作为服务运行。此外,我无法使用 UNC 路径创建 DSN 条目。因此,我使用本地数据库创建了 DSN,然后在 Regedit 中更改了路径。多么痛苦。请务必提供正确的凭据(UID 和 PWD)。

    【讨论】:

      【解决方案2】:

      使用有效的 PATH,这个问题

      Y:\\192.168.2.5\data\db.accdb
      

      \ 是不是一个特殊字符。你需要,

      Y:\\192.168.2.5\\data\\db.accdb
      

      Y:/192.168.2.5/data/db.accdb
      

      【讨论】:

      • 如何用\\替换特殊字符\。我正在“ODBC 数据源管理器”窗口下创建系统 DSN。
      • 您不会从 Microsoft 控制面板获得 Java 异常。请澄清您的问题,并指定您的 java 版本。
      • 我创建了一个简单的 java 程序来访问 *.accdb 数据库。当这个数据库在同一台机器上时,没有错误。但是当远程系统中的数据库抛出 '[Microsoft][ODBC Microsoft Access Driver] '(unknown)' is not a valid path' 异常。为了访问远程数据库,我为 *.accdb 文件创建了一个映射驱动器。然后我为这个映射文件创建了 dsn。请查看我附上这个问题的图片。
      【解决方案3】:

      总而言之,我敢打赌这是一个权限问题。

      收到完全相同的错误消息并且感到困惑,因为它之前工作过。这是因为我正在更改 Tomcat 的版本,并且它在未经允许访问我的数据库资源的情况下运行。

      【讨论】:

        【解决方案4】:

        所以我有一个类似的问题,如果不一样的话。

        已经安装了 wamp。 正在使用 php 访问网络上的 mdb 文件。我得到消息说找不到路径。

        所以我所做的是,创建了一个正常的 dsn 配置,然后它看起来是这样的: Y:\mydata.mdb

        我在 regedit 上搜索“y:\mydata.mdb”并找到它。 将其更改为完整路径,例如“\serverip\serverfolder\mydata.mdb”

        这是在管理用户上完成的。

        我刷新了网页,它工作了。 希望这可以帮助某人。

        附言 匆匆写下。抱歉,如果我不清楚。

        【讨论】:

          【解决方案5】:

          我只是通过拼写完全限定的 dns 名称来修复此连接字符串,而不是使用映射的驱动器名称 "H:":

          不好

          sCN_ODBC = @"Driver={Microsoft Access Driver (*.mdb)}; Dbq=H:\vol01\IIT\Apps\Applications\MFG\User.mdb;Trusted_Connection=yes";
          

          sCN_ODBC = @"Driver={Microsoft Access Driver (*.mdb)}; Dbq=\\tstorage.iit.edu\depts$\vol01\IIT\Apps\Applications\MFG\User.mdb;Trusted_Connection=yes";
          

          我正在使用 C# dotnet ,此线程上的其他帖子是 java 和 php

          【讨论】:

            猜你喜欢
            • 2014-04-25
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多