我是 JAVA 和 SQL 的新手。
在一项练习中,我需要从 NetBeans 中的示例 SQL 表中读取数据。
在“服务”中,我启动了JAVA DB服务器。都好。出现以下消息:
Mon Dec 16 21:40:36 EST 2013 : Security manager installed using the Basic server security policy.
Mon Dec 16 21:40:37 EST 2013 : Apache Derby Network Server - 10.8.3.0 - (1405108) started and ready to accept connections on port 1527
但是当我运行这个程序(如下)时,出现以下错误:
SQL Error: java.sql.SQLException: No suitable driver found for jdbc:derby://localhost:1527/sample 0 08001
这里是代码..我如何确保找到正确的驱动程序?
import java.sql.*;
public class TableReporter {
public static void main(String[] args) {
String data = "jdbc:derby://localhost:1527/sample";
try (
Connection conn = DriverManager.getConnection(
data, "app", "APP");
Statement st = conn.createStatement()) {
Class.forName("org.apache.derby.jdbc.ClientDriver");
ResultSet rec =st.executeQuery(
"select * " +
"from SYS.SYSTABLES" +
"order by TABLENAME");
while(rec.next()){
System.out.println("TABLEID:\t" + rec.getString(1));
System.out.println("TABLENAME:\t" + rec.getString(2));
System.out.println("TABLETYPE:\t" + rec.getString(3));
System.out.println("SCHEMAID:\t" + rec.getString(4));
System.out.println();
}
st.close();
} catch (SQLException s){
System.out.println("SQL Error: " + s.toString() + " "
+ s.getErrorCode() + " " + s.getSQLState());
} catch (Exception e) {
System.out.println("Error: " + e.toString()
+e.getMessage());
}
}
}
最佳答案
问题出在 jar 文件上。
Class.forName("org.apache.derby.jdbc.ClientDriver");
检查,
- 是否安装。
- 如果已安装,是否需要更新您的 .bashrc 文件。
- 或者,您是否已在 netBeans IDE 中导入 .jar 文件。
如果都不起作用,只需编写一个简单的 JDBC 程序,使用 notpad 连接到数据库并运行它,检查您的机器有什么问题。
关于JAVA SQL - 找不到适用于 jdbc 的驱动程序 :derby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20625040/