Java 使用Processing连接到Microsoft Access数据库
我正在尝试使用Processing(v3.4 windows64)连接到本地Microsoft Access数据库 根据前面的回答()我已经从这里下载了UCanAccess库()当前版本是4.0.4 它包括Java 使用Processing连接到Microsoft Access数据库,java,database,ms-access,processing,Java,Database,Ms Access,Processing,我正在尝试使用Processing(v3.4 windows64)连接到本地Microsoft Access数据库 根据前面的回答()我已经从这里下载了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.*; voi
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块将返回以下消息:
java.sql.SQLException:找不到适合jdbc的驱动程序:ucanaccess://C:/。。。我的文件夹的路径/文件/数据库1_test.accdb
如果我将5个jar导入Processing\libraries
文件夹中,然后添加行importhsqldb.jar代码>或导入hsqldb.*代码>对于我的草图,结果是控制台错误:
未找到hsqldb的库
库必须安装在sketchbook文件夹中名为“Libraries”的文件夹中(请参见“首选项”窗口)
我发现的唯一有线方式是在库中创建一个与jar同名的专用文件夹,包括一个包含jar的库子文件夹。它们全部重命名,删除了任何数字和破折号字符(见图)。
这样,库名称在sketch>import library
下可用,如果选中,则向草图添加多条新的包含线(48)
其中一个(import org.apache.commons.lang.enum.*;
)导致错误:标记“enum”上的语法错误,需要标识符。
我刚刚评论了这一行,考虑到import org.apache.commons.lang.*代码>取而代之
因此,引用第行时会出现新的错误
Statement s = conn.createStatement();
:类型语句不明确
然后我查找了库冲突,并注释了import org.hsqldb.*代码>
现在,它似乎工作正常,我可以检索我的表信息,但方式非常混乱
是否有正确的方法仅导入5个库
更新
根据建议,也可以在草图窗口中拖放JARs文件,并在草图文件夹中自动创建一个code
文件夹,包括拖放的文件
它包括所有的包,不需要更多的代码行,无论如何,这个过程有两个缺点:
由于它在幕后在草图文件夹中创建了一个code
文件夹,因此仅为一个草图导入包,而不是“全局”库文件夹,并且需要为每个草图复制包
导入包后我注意到两个错误:一个是由于使用专用单词enum
的org.apache.commons.lang.enum.
和与另一个库冲突的org.hsqldb.
导致的。拖放技术不允许选择要排除的单个库来解决这些错误
我所知道的将.jar
文件导入处理草图的最简单方法是将.jar
文件拖到处理编辑器上。
对您的5.jar
文件执行此操作。如果您对它在幕后所做的事情感到好奇,请在拖动后查看草图目录
无耻的自我提升:是关于在处理过程中使用库的教程。谢谢您的建议。快速回答,很有效。我相信这是导入jar包的最快方法。无论如何,它有两个缺点:1)包仅适用于当前草图,而不适用于全局。2) 它包括所有包的类,如果发生冲突错误,是否不可能排除其中的一些类。@Mave751如果您需要全局可用的类,那么您的问题已经包含了如何做到这一点。我不确定你所说的包含所有类是什么意思:两种方法在类方面的作用完全相同。您需要使用显式导入语句(而不是通配符导入语句)来避免冲突。