Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.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
无法在netbeans上将derby DB与我的java应用程序链接_Java_Jdbc_Derby - Fatal编程技术网

无法在netbeans上将derby DB与我的java应用程序链接

无法在netbeans上将derby DB与我的java应用程序链接,java,jdbc,derby,Java,Jdbc,Derby,我已经为一个应用程序项目创建了一个DB,我意识到应用程序的所有窗口,当我试图将derby DB链接到我的项目时,它不起作用!!我已经编写了两个代码来链接数据库,但仍然不起作用(起初我使用我创建的数据库,然后我尝试将嵌入式数据库链接到我的项目,但什么都没有),这里是我尝试过的!!我错过什么了吗 try { Class.forName("org.apache.derby.jdbc.EmbeddedDriver"); Connection cnx = DriverManager.getC

我已经为一个应用程序项目创建了一个DB,我意识到应用程序的所有窗口,当我试图将derby DB链接到我的项目时,它不起作用!!我已经编写了两个代码来链接数据库,但仍然不起作用(起初我使用我创建的数据库,然后我尝试将嵌入式数据库链接到我的项目,但什么都没有),这里是我尝试过的!!我错过什么了吗

  try {  Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
    Connection cnx = DriverManager.getConnection("jdbc:derby:C:\\Users\\user pc\\AppData\\Roaming\\NetBeans\\Derby\\projetihm","root","root");
    Statement stm= cnx.createStatement();
    String qst = "Select * from ROOT.USERAPP where username='"+uname.getText()+"'";
    ResultSet rst = stm.executeQuery(qst);
    if (rst.next())
         { JOptionPane.showMessageDialog(null, "Connexion successful");
                 }
    else {JOptionPane.showMessageDialog(null, "Wrong password or username"); }
 }
 catch (Exception e ) {};
我也试过这个

Try{  Connection cnx= DriverManager.getConnection("jdbc:derby://localhost:1527/projetihm","root","root");
Statement stm= cnx.newStatement();
ResultSet rst = stm.executeQuery("Select * From userapp ");
while (rst.next())
   if (rs.getString(1).equals(uname.getText()) && rst.getString(2).equals(pass.getText()))
        { JOptionPane.showMessageDialog(null, "Wrong password or username try again");
                 }
    else {JOptionPane.showMessageDialog(null, "Wrong password or username try again"); }
 }
 catch (Exception e ) {};

我是这样解决的,现在可以了

try {   
    Class.forName("org.apache.derby.jdbc.EmbeddedDriver").newInstance();
    Connection cnx = DriverManager.getConnection("jdbc:derby://localhost:1527/projetihm","root","root");
    Statement stm= cnx.createStatement();
    ResultSet rst = stm.executeQuery("Select * From userapp");
    while (rst.next())
       if (rst.getString(1).equals(uname.getText()) && rst.getString(4).equals(pass.getText()))
    {    this.setVisible(false);
        all a = new all(); a.setVisible(true);
             }
       else {JOptionPane.showMessageDialog(null, "Wrong password or username "); }

    } catch (Exception e) {  e.printStackTrace(); }

首先,请将
catch(Exception e){}
替换为
catch(Exception e){e.printStackTrace();}
以查看是否存在任何异常。它说数据库启动失败,但我不知道问题出在哪里,是url路径还是其他原因!!你能给你的问题添加堆栈跟踪吗?没关系,我已经解决了,我会在问题部分发布我使用的代码