【问题标题】:query run successful but database not updated java查询运行成功但数据库未更新 java
【发布时间】:2017-11-26 11:51:11
【问题描述】:

我正在尝试在数据库中添加Insertquery。一切正常,我没有收到任何错误。但是我插入数据库的数据不会反映在数据库中。在排序中,数据库没有更新。

  try{
    Database_Operation db = new Database_Operation();

    db.connection();

    db.cn.setAutoCommit(false);
    db.cn.commit();
    PreparedStatement  ps1=db.cn.prepareStatement("insert into product values(?,?,?)");



    Boolean status = true;

    ps1.setString(1,name.getText());
    ps1.setString(2, price.getText());
    ps1.setString(3, status.toString());

    db.cn.close();

        JOptionPane.showMessageDialog(this," Data saved ", "succsess" ,1);

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

这里有什么问题?

【问题讨论】:

  • 您忘记执行查询并且您应该事后提交。

标签: java sql database jdbc


【解决方案1】:

缺少您的执行语句。 您只是在形成查询而不是执行它。

在关闭您的数据库连接之前,将此行添加到您的代码中:

ps1.executeUpdate;

【讨论】:

  • DML 语句需要通过executeUpdate() 运行,而不是通过executeQuery()
【解决方案2】:

您缺少execution 语句。在 DB 关闭之前添加以下行。

ps1.executeUpdate();

【讨论】:

  • DML 语句需要通过executeUpdate() 运行,而不是通过executeQuery()
【解决方案3】:

您必须在 Database_Operation 中有一个执行方法,然后在初始化 prepareStatement 之后执行,如下所示:

try {


    // execute update SQL stetement
    ps1.executeUpdate();

    System.out.println("Record is updated to DBUSER table!");

} catch (SQLException e) {

    System.out.println(e.getMessage());

}

【讨论】:

    【解决方案4】:

    你还没有执行 PreparedStatement。添加下面这一行 ps1.execute();

     try{
        Database_Operation db = new Database_Operation();
    
        db.connection();
    
        db.cn.setAutoCommit(false);
        db.cn.commit();
        PreparedStatement  ps1=db.cn.prepareStatement("insert into product values(?,?,?)");
    
    
    
        Boolean status = true;
    
        ps1.setString(1,name.getText());
        ps1.setString(2, price.getText());
        ps1.setString(3, status.toString());
        ps1.execute();
        db.cn.close();
    
        JOptionPane.showMessageDialog(this," Data saved ", "succsess" ,1);
    
    }catch(Exception e){
        e.printStackTrace();
    }
    

    【讨论】:

      猜你喜欢
      • 2019-02-08
      • 2017-08-26
      • 1970-01-01
      • 1970-01-01
      • 2019-08-25
      • 1970-01-01
      • 2020-06-07
      • 2012-04-22
      • 2023-01-14
      相关资源
      最近更新 更多