gpt4 book ai didi

java - UCanAccess 找不到我的数据库

转载 作者:行者123 更新时间:2023-12-01 11:11:24 25 4
gpt4 key购买 nike

我正在尝试使用 UCanAccess 将我的 Java 代码连接到 access 中的表这是我的代码:

import java.sql.*;

public class HH {

public static void main(String[] args) throws SQLException {
// opens a connection to the database
Connection conn=DriverManager.getConnection("jdbc:ucanaccess://C:/Users/user/Documents/Database5.accdb‬");
Statement s = conn.createStatement();
}
}

由于某种原因它会抛出这个:

Exception in thread "main" net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::3.0.0 given file does not exist: C:\Users\user\Documents\Database5.accdb‬
at net.ucanaccess.jdbc.UcanaccessDriver.connect(UcanaccessDriver.java:258)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at HH.main(HH.java:8)
Caused by: java.io.FileNotFoundException: given file does not exist: C:\Users\user\Documents\Database5.accdb‬
at com.healthmarketscience.jackcess.impl.DatabaseImpl.open(DatabaseImpl.java:362)
at com.healthmarketscience.jackcess.DatabaseBuilder.open(DatabaseBuilder.java:248)
at net.ucanaccess.jdbc.DefaultJackcessOpener.open(DefaultJackcessOpener.java:35)
at net.ucanaccess.jdbc.DBReference.<init>(DBReference.java:160)
at net.ucanaccess.jdbc.DBReferenceSingleton.loadReference(DBReferenceSingleton.java:51)
at net.ucanaccess.jdbc.UcanaccessDriver.connect(UcanaccessDriver.java:96)
... 3 more

路径没问题,如果我将其输入到 Windows 资源管理器中,它将打开我的数据库。

最佳答案

根据我对 UCanAccess 等的经验,我认为您的代码 "jdbc:ucanaccess://C:/Users/user/Documents/Database5.accdb"

应该是

“jdbc:ucanaccess://C:\\Users\\user\\Documents\\Database5.accdb”

原因:在文件系统中它使用反斜杠而不是正斜杠,并且在 java 字符串中“\”字符是一种转义字符,因此要仅输入该字符之一,您需要对其本身进行转义: \\getConnection 方法中将显示为 \

关于java - UCanAccess 找不到我的数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32315094/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com