当前位置: 代码迷 >> java >> sqlite-jdbc用Java代码打开数据库
  详细解决方案

sqlite-jdbc用Java代码打开数据库

热度:64   发布时间:2023-07-25 19:51:29.0

我尝试用Java代码打开一个数据库(由sqlite管理器建立的YouTube.sqlite)。 路径应该没问题; 司机是

   sqlite-jdbc-3.8.11.1.jar.

但这不起作用。 运行时,它显示为“ Class.forName(“ org.sqlite.jdbc.Driver”);' 错误。 有人可以帮助我吗? 谢谢。

    package mysqltest;

    import java.sql.Connection; 
    import java.sql.DriverManager; 
    import java.sql.ResultSet; 
    import java.sql.SQLException; 
    import java.sql.Statement; 
    import java.util.logging.Level; 
    import java.util.logging.Logger; 

    public class MySQLTest{
    public static void main(String args[]) throws ClassNotFoundException {   

    String dbURL; 
    dbURL = "jdbc:sqlite://C://Users//13149//Desktop//YouTube.sqlite";

    Connection dbCon = null; 
    Statement stmt = null; 
    ResultSet rs = null;
    String query ="select * from CM";

    try { 
    //getting database connection to MySQL server
    Class.forName("org.sqlite.jdbc.Driver");
    dbCon = DriverManager.getConnection(dbURL);    

    //getting PreparedStatment to execute query
    stmt = dbCon.prepareStatement(query);

    //Resultset returned by query
    rs = stmt.executeQuery(query);

    while(rs.next()){
    int count = rs.getInt(1); 
    System.out.println("count of stock : " + count);
    }
    } catch (SQLException ex) {
    ex.printStackTrace();
    }
    //finally{
    //    dbCon.commit();
    //    //System.out.println("ex   ");
    //    }
    }  
    }

SQLite的正确Class.forName()驱动程序名称是

Class.forName("org.sqlite.JDBC");

但是您应该尝试完全省略该语句,因为它不是必需的,除非您在非常老的JDK / JVM(JDBC_4.0之前)下运行代码。

  相关解决方案