JAVA SQL - 找不到适用于 jdbc 的驱动程序 :derby

标签 java sql

我是 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");

检查,

  1. 是否安装。
  2. 如果已安装,是否需要更新您的 .bashrc 文件。
  3. 或者,您是否已在 netBeans IDE 中导入 .jar 文件。

如果都不起作用,只需编写一个简单的 JDBC 程序,使用 notpad 连接到数据库并运行它,检查您的机器有什么问题。

关于JAVA SQL - 找不到适用于 jdbc 的驱动程序 :derby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20625040/

相关文章:

java - Neo4j 数据未显示在 Web 控制台中

java - @DiscriminatorColumn 的动态值

java - equals() 的实现 : compare against implemented interface or implementing class?

java - 如何运行 Endomondo 移动应用程序的 "Start tracking" Activity

sql - 数据库与 MATLAB 变量有何不同?

sql - MS Access - 对同名列执行 "full join"的替代方法

Java 1.5 ExitO OutOfMemory?

mysql将一行数据复制到多行

php - LARAVEL 5.4 中的 SQL SELECT 查询 UPPER

sql - 甲骨文 SQL : Most efficient way to calculate Z-score of grouped data