Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/322.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
java.lang.ClassNotFoundException:org.apach.derby.jdbc.ClientDriver_Java_Database_Jdbc_Derby - Fatal编程技术网

java.lang.ClassNotFoundException:org.apach.derby.jdbc.ClientDriver

java.lang.ClassNotFoundException:org.apach.derby.jdbc.ClientDriver,java,database,jdbc,derby,Java,Database,Jdbc,Derby,我想使用derby在netbeans中操作我的数据库,但出现以下错误: java.lang.ClassNotFoundException: org.apach.derby.jdbc.ClientDriver 要添加derby库,我已完成以下操作: 右键单击“库”,然后 在列表中,我选择了JavaDB驱动程序 下面是我的类ConnexionDB.java的代码 public class ConnexionDB { private Connection conx = null;

我想使用derby在netbeans中操作我的数据库,但出现以下错误:

java.lang.ClassNotFoundException: org.apach.derby.jdbc.ClientDriver
要添加derby库,我已完成以下操作:

  • 右键单击“库”,然后

  • 在列表中,我选择了JavaDB驱动程序

  • 下面是我的类ConnexionDB.java的代码

    public class ConnexionDB {
    
        private Connection conx = null;
        private final String urlBDD = "jdbc:derby://localhost:1527/tennis;create=true;user=tennis;password=tennis";
    
        private String MessageError = "No Errors ! ";
    
        public ConnexionDB() {
            this.openConnexion();
            this.createDataBase();
        }
    
        private String getMessageError() {
            return MessageError;
        }
    
        private void setMessageError(String MessageError) {
            this.MessageError = MessageError;
        }
    
        private void openConnexion() {
            try {
                Class.forName("org.apach.derby.jdbc.ClientDriver");
                this.conx = DriverManager.getConnection(urlBDD);
            } catch (Exception ex) {
                this.setMessageError("BD_Connexion:ouvrirConnexion:Erreur::: " + ex.getMessage());
                ex.printStackTrace();
            }
        }
    
        public void closeConnexion() {
            try {
                this.conx.close();
            } catch (SQLException ex) {
                this.setMessageErreur("BD_Connexion:fermerConnexion:Erreur::: " + ex.getMessage());
            }
        }
    
        public Object[][] selectExe(String requete) {
            Object[][] data = new Object[1][1];
    
            try {
                if (requete.toLowerCase().contains("select")) {
                    Statement ReqExe = this.conx.createStatement();
                    ResultSet ReqRes = ReqExe.executeQuery(requete);
    
                    int nbreColonne = ReqRes.getMetaData().getColumnCount();
                    int nbreLigne = this.nombreLigne(requete);
    
                    data = new Object[nbreLigne + 1][nbreColonne];
    
                    for (int i = 1; i <= nbreColonne; i++) {
                        data[0][i - 1] = ReqRes.getMetaData().getCatalogName(i);
                    }
    
                    int cmptr = 1;
                    while (ReqRes.next()) {
                        for (int i = 1; i <= nbreColonne; i++) {
                            data[cmptr][i - 1] = ReqRes.getString(i);
                        }
                        cmptr++;
                    }
                    ReqRes.close();
                    ReqExe.close();
                }
            } catch (Exception ex) {
                this.setMessageErreur("BD_Connexion:selectExe:Erreur::: " + ex.getMessage());
            }
    
            return data;
        }
    
        private int nombreLigne(String requete) {
            int nbreLigne = 0;
    
            try {
                if (requete.toLowerCase().contains("select")) {
    
                    Statement ReqExe = this.conx.createStatement();
                    ResultSet ReqRes = ReqExe.executeQuery(requete);
                    //
                    while (ReqRes.next()) {
                        nbreLigne++;
                    }
                    ReqRes.close();
                    ReqExe.close();
                }
            } catch (Exception ex) {
                this.setMessageErreur("BD_Connexion:nombreLigne:Erreur::: " + ex.getMessage());
            }
            return nbreLigne;
        }
    
        public boolean updateExe(String requete) {
            boolean data = false;
    
            try {
                if (!requete.toLowerCase().contains("select")) {
    
                    Statement ReqExe = this.conx.createStatement();
    
                    int reqInfo = ReqExe.executeUpdate(requete);
    
                    if (reqInfo > 0) {
                        data = true;
                    }
                    ReqExe.close();
                }
            } catch (Exception ex) {
                this.setMessageErreur("BD_Connexion:updateExe:Erreur::: " + ex.getMessage());
            }
            return data;
        }
    
        private void createDataBase() {
            try {
                Statement ReqExe = this.conx.createStatement();
    
                String tableAdherent = "CREATE TABLE IF NOT EXISTS ADHERENT\n"
                        + "(NUMEROADHERENT INTEGER PRIMARY KEY GENERATED ALWAYS AS IDENTITY\n"
                        + "(START WITH 1, INCREMENT BY 1),\n"
                        + "NOM VARCHAR(24) NOT NULL,\n"
                        + "PRENOM VARCHAR(24) NOT NULL,\n"
                        + "ADDRESSE VARCHAR(50),\n"
                        + "TELEPHONE VARCHAR(24),\n"
                        + "EMAIL VARCHAR(30) NOT NULL UNIQUE,\n"
                        + "PASSWORD VARCHAR(35) NOT NULL);";
                ReqExe.execute(tableAdherent);
    
                String tableTouroi = "CREATE TABLE IF NOT EXISTS TOURNOI\n"
                        + "(CODETOURNOI INTEGER PRIMARY KEY AUTOINCREMENT,\n"
                        + "NOM VARCHAR(24) NOT NULL,\n"
                        + "DATE VARCHAR(30) NOT NULL,\n"
                        + "LIEU VARCHAR(30));";
                ReqExe.execute(tableTouroi);
    
                String tableInscription = "CREATE TABLE IF NOT EXISTS INSCRIPTION\n"
                        + "(IDINSCRIPTION INTEGER PRIMARY KEY AUTOINCREMENT,\n"
                        + "NUMEROADHERENT INTEGER NOT NULL,\n"
                        + "CODETOURNOI INTEGER NOT NULL,\n"
                        + "DATEINSCRIPTION VARCHAR(30) NOT NULL,\n"
                        + "CONSTRAINT fk_numeroAdherent Foreign KEY (NUMEROADHERENT) references ADHERENT(NUMEROADHERENT),\n"
                        + "CONSTRAINT fk_codeTournoi Foreign KEY (CODETOURNOI) references TOURNOI(CODETOURNOI));";
                ReqExe.execute(tableInscription);
    
                ReqExe.close();
    
            } catch (SQLException ex) {
                System.out.println("Echecs : Creation des tables");
                Logger.getLogger(ConnexionDB.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }
    
    致:


    我总是出错

    您正在加载的类名中有一个输入错误

    请注意apache中的e:


    不再需要Class.forName。只需添加jar就可以添加JDBC驱动程序。只需注释掉这段代码

    您添加的库的名称是什么?不是derbyClient.jar吗?你从哪里得到的?derbyclient.jar
    Class.forName("org.apach.derby.jdbc.ClientDriver");
    
    Class.forName("org.apach.derby.jdbc.client");
    
    "org.apache.derby.jdbc.ClientDriver"