Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法查询DB Eclipse,例如异常:java.sql.SQLException:未找到适合jdbc的驱动程序:derby:_Sql_Jdbc_Derby_Sqlexception_Eclipse Kepler - Fatal编程技术网

无法查询DB Eclipse,例如异常:java.sql.SQLException:未找到适合jdbc的驱动程序:derby:

无法查询DB Eclipse,例如异常:java.sql.SQLException:未找到适合jdbc的驱动程序:derby:,sql,jdbc,derby,sqlexception,eclipse-kepler,Sql,Jdbc,Derby,Sqlexception,Eclipse Kepler,我是在eclipse中使用DB的新手,遇到了一些问题。我能够创建一个db连接并因此创建一个表,但是当我尝试查询所述表时,我得到以下结果:线程main java.sql.SQLException中的异常:没有找到适合jdbc的驱动程序:derby: 我首先使用的是对JDBC_URL的静态调用,所以我不明白为什么会发生这种情况。下面显示了两个主要类。第一种方法在创建表时可以很好地工作,但第二种方法会抛出上述错误。注意,我的项目的lib文件夹中有derby.jar 甲级工作很好 public clas

我是在eclipse中使用DB的新手,遇到了一些问题。我能够创建一个db连接并因此创建一个表,但是当我尝试查询所述表时,我得到以下结果:线程main java.sql.SQLException中的异常:没有找到适合jdbc的驱动程序:derby:

我首先使用的是对JDBC_URL的静态调用,所以我不明白为什么会发生这种情况。下面显示了两个主要类。第一种方法在创建表时可以很好地工作,但第二种方法会抛出上述错误。注意,我的项目的lib文件夹中有derby.jar

甲级工作很好

public class CreateDB {

        public static final String DRIVER = "org.apache.derby.jdbc.EmbeddedDriver";
        public static final String JDBC_URL = "jdbc:derby:zadb;create=true";

    public static void main(String[] args) throws ClassNotFoundException,
            SQLException {
        Class.forName(DRIVER);
        Connection connection = DriverManager.getConnection(JDBC_URL);
        connection
                .createStatement()
                .execute(
                        "create table channels(channel varchar(20), topic varchar(20), videoclip varchar(20))");
        connection.createStatement().execute(
                "insert into channels values "
                        + "('oodp', 'creational', 'singleton'), "
                        + "('oodp', 'creational', 'factory method'), "
                        + "('oodp', 'creational', 'abstract factory')");
        System.out
                .println("Table was created and the records were successfully inserted...");
    }
}
引发了类B SQL异常

public class QueryDB {

    public static final String SQL_STATEMENT = "Select * from Channels";
    public static void main(String[] args) throws SQLException {

        Connection connection = DriverManager.getConnection(CreateDB.JDBC_URL);

        Statement statement = connection.createStatement();
        ResultSet resultSet = statement.executeQuery(SQL_STATEMENT);
        ResultSetMetaData resultSetMetaData = resultSet.getMetaData();
        int columnCount = resultSetMetaData.getColumnCount();

        for(int x = 1; x <= columnCount; x++){
            System.out.print(resultSetMetaData.getColumnName(x) + "|");
        }
        while(resultSet.next()){
            System.out.println();
            for(int x = 1; x <= columnCount; x++){ System.out.print(resultSet.getString(x) + "|");}
        }

        if(statement!=null) statement.close();
        if(connection!=null) connection.close();
    }

}

很可能您没有使用相同的类路径执行它们。检查Eclipse中的运行设置。