Java对Oracle数据库中的信息进行增删改后, 要进行commit提交吗? 要的话怎么执行? //删除图书分类, 但不删除已存在数据库中的该类图书
public boolean delete(int aid) throws Exception {
   sqlStr = "delete from LC_BOOKCLASS where ID = "  + aid ;
   try
   {
 DataBase db = new DataBase();
     db.connect();
     stmt =db.conn.createStatement ();
     stmt.execute(sqlStr);
在这里插入对吗?      stmt.execute("commit");
     return true;
   }
   catch (SQLException e)
   {
       System.out.println(e);
       return false;
   }
}

解决方案 »

  1.   

    db.conn.setAutoCommit(false);db.conn.rollback();
    db.conn.commit();db.conn.setAutoCommit(true);
      

  2.   

    pdvv(我爱花猫)  拜托说的具体些好吗
      

  3.   

    //删除图书分类, 但不删除已存在数据库中的该类图书
    public boolean delete(int aid) throws Exception {
       sqlStr = "delete from LC_BOOKCLASS where ID = "  + aid ;
       try
       {
     DataBase db = new DataBase();
         db.connect();
         stmt =db.conn.createStatement ();
         stmt.execute(sqlStr);
    db.conn.commit();  // 这么做对吗?
         return true;
       }
       catch (SQLException e)
       {
           System.out.println(e);
           return false;
       }
    }
      

  4.   

    db.conn.setAutoCommit(false); 
    db.conn.rollback();
    db.conn.commit();
    db.conn.setAutoCommit(true);表示不自动事务处理,这是由JDBC驱动来控制的,默认情况下是
    db.conn.setAutoCommit(true);表示可以自动提交,如果你设置了  db.conn.setAutoCommit(false); 你就得必须要用db.conn.setAutoCommit(true);
    语句才把记录保存到数据库