我正在使用 NetBeans IDE 8.2,并且希望与 UCanAccess 建立连接以访问我的数据库文件。最初我使用jdbc:odbc
,但我发现Java 8以上不再支持这种方法
这是我的初始编码:
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection("jdbc:odbc:vABCD");
这是更改后的代码:
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
con = DriverManager.getConnection ("jdbc:ucanaccess://C:\\Users\\questionasker\\Desktop\\database");
但我收到错误:
net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::4.0.2 C:\Users\questionasker\Desktop\database (Access is denied)
at net.ucanaccess.jdbc.UcanaccessDriver.connect(UcanaccessDriver.java:264)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:270)
at vhrmsrptgen.AnnualAppraisal.connect(AnnualAppraisal.java:41)
at vhrmsrptgen.AnnualAppraisal.generate(AnnualAppraisal.java:90)
at vhrmsrptgen.MainFrame.btnGenerate_actionPerformed(MainFrame.java:368)
at vhrmsrptgen.MainFrame_btnGenerate_actionAdapter.actionPerformed(MainFrame.java:583)
我的数据库文件都是.DBF格式(这是非常旧的文件),所有文件都在这个目录下:
C:\\Users\\questionasker\\Desktop\\database
如何才能使编码正确以连接数据库?
最佳答案
My database file all is in .DBF format
UCanAccess 不是 JDBC-ODBC 桥的通用替代品。它是专门用于处理 Microsoft Access 数据库文件(.mdb
、.accdb
和相关变体)的 JDBC 驱动程序。它不适用于 .dbf
(dBASE) 文件。
关于java - 使用 UCanAccess 而不是 JDBC-ODBC Bridge 来处理 DBF 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44238575/