access97不能增删改

hite w 0 信誉分
2024-11-25T06:55:46.8+00:00

在我代码中连接Access97数据库我只可以做查询操作,但是增删改却不行。报错信息为:net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::3.0.1 Access 97 is supported in read-only.

Microsoft Configuration Manager 应用程序
Microsoft Configuration Manager 应用程序
Microsoft Configuration Manager: 用于管理大量个人计算机和服务器的集成解决方案。应用程序: 一种计算机程序,旨在执行与计算机本身的操作不相关的特定任务,通常由最终用户使用。
28 个问题
0 个注释 无注释
{count} 票

1 个答案

排序依据: 非常有帮助
  1. AlexZhu-MSFT 5,956 信誉分 Microsoft 供应商
    2024-11-25T07:46:55.95+00:00

    Hi,

    如果理解无误,这是用 Java 连接 Access 数据库。正如提示所说,对于 97 版本的支持,就是限定在“只读”模式,这是正常现象。您需要升级数据库到较新版本,哪怕2000也行。下面的代码可用于侦测版本信息。

    String dbFileSpec = "C:/Users/Public/test/sample.mdb";
    try (FileInputStream fis = new FileInputStream(dbFileSpec)) {
        String fmt = "(unknown)";
        byte[] bytes = new byte[21];
        fis.read(bytes, 0, 21);
        switch (bytes[20]) {
            case 0x0:
                fmt = "Jet 3.0 (Access 97)";
                break;
            case 0x1:
                fmt = "Jet 4.0 (Access 2000/2003)";
                break;
            case 0x2:
                fmt = "ACE 12.0 (Access 2007)";
                break;
            case 0x3:
                fmt = "ACE 14.0 (Access 2010)";
                break;
        }
        System.out.println("File format: " + fmt);
    } catch (Exception e) {
        System.err.println(e.getMessage());
    }
    

    Regards,

    Alex


你的答案

问题作者可以将答案标记为“接受的答案”,这有助于用户了解已解决作者问题的答案。