gpt4 book ai didi

java - 使用 Processing 连接到 Microsoft Access 数据库

转载 作者:搜寻专家 更新时间:2023-10-30 20:47:44 24 4
gpt4 key购买 nike

我正在尝试使用 Processing (v3.4 windows64) 连接到本地 Microsoft Access 数据库。

根据之前的回答 (Manipulating an Access database from Java without ODBC),我从这里 (http://ucanaccess.sourceforge.net/site.html) 下载了 UCanAccess 库,当前版本是 4.0.4

它包括 ucanaccess-4.0.4.jar 和在 lib 文件夹下:commons-lang-2.6.jar, commons-logging-1.1.3.jar, hsqldb.jar, jackcess-2.1.11.jar

这是我正在运行的简单草图代码:

import java.sql.*;

void setup() {
size(640, 360); // Size must be the first statement
stroke(255); // Set line drawing color to white
frameRate(30);

try{

Connection conn=DriverManager.getConnection("jdbc:ucanaccess://D:/Dati/Profili/M030098/Documents/Database1_test.accdb");
Statement s = conn.createStatement();
ResultSet rs = s.executeQuery("SELECT * FROM tab_one");
while (rs.next()) {
System.out.println(rs.getString(1));
}

}catch(Exception e){
e.printStackTrace();
}
}

我不确定是否在我的草图中正确导入了 5 个库。如果没有它们,catch block 将返回此消息:

java.sql.SQLException: No suitable driver found for jdbc:ucanaccess://C:/ ... path to my folder ... /Documents/Database1_test.accdb

如果我将 5 个 JAR 文件导入 Processing\libraries 文件夹,然后添加行 import hsqldb.jar;import hsqldb.*; 我的草图结果是这个控制台错误:

No library found for hsqldb
Libraries must be installed in a folder named 'libraries' inside the sketchbook folder (see the Preferences window).

我发现的唯一有线方式是在库中创建一个与 jar 同名的专用文件夹,包括一个包含 jar 的库子文件夹。所有这些都已重命名,删除了任何数字和破折号字符(见图)。通过这种方式,库名称在 sketch > import library 下可用,如果选择,则向草图添加几个新的包含行 (48)。

其中一个 (import org.apache.commons.lang.enum.*;) 导致错误: token “enum”上的语法错误,需要标识符。

enter image description here

我刚刚评论了考虑 import org.apache.commons.lang.*; 的那一行。

结果引用行出现了新的错误

Statement s = conn.createStatement();

: the type Statement is ambiguous

然后我查找了库冲突并评论了 import org.hsqldb.*;

现在它似乎可以正常工作了,我可以检索我的表信息,但是以一种非常困惑的方式。

是否有仅导入 5 个库的正确方法?

更新

根据 Kevin Workman 的建议也可以将 JAR 文件拖放到草图窗口中,并在草图文件夹中自动创建一个 code 文件夹,其中包括拖放的文件。

它包含了所有的包并且不需要更多的代码行,无论如何,这个过程有两个缺点:

  1. 由于在幕后它在草图文件夹中创建了一个 code 文件夹,因此只为一个草图而不是“全局”库文件夹导入包,并且需要为每个草图复制。

  2. 导入包后我注意到两个错误:一个是由于 org.apache.commons.lang.enum.* 使用专用词 enumorg.hsqldb.* 的 Statement 对象定义与另一个库冲突。为了解决这些错误,拖放技术不允许选择要排除的单个库。

最佳答案

我知道导入 .jar 的最简单方法文件到处理草图是拖动.jar文件到处理编辑器中。

dragging jar onto Processing editor

为您的 5 .jar 执行此操作文件。如果您想知道它在幕后做了什么,请在拖动后查看您的草图目录。

无耻的 self 推销:here是关于在 Processing 中使用库的教程。

关于java - 使用 Processing 连接到 Microsoft Access 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53169959/

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