Oracle

未插入準備好的語句

  • December 26, 2013

我是 JDBC 新手並嘗試以下程式碼。找不到其中的錯誤

try{     
       Connection con = ConnectionProvider.getCon();
       stmt=con.prepareStatement("insert into create_request values((select count(reqno) from create_request)+1,?,?,?,?,?");
       stmt.setString(1,obj_Leaverequest.getUser_name());
       stmt.setString(2,obj_Leaverequest.getLeave_Type());
       stmt.setInt(3,obj_Leaverequest.getLeave_Units());
       stmt.setString(4,obj_Leaverequest.getLeave_Reason());
       stmt.setString(5,"pending");
       count=stmt.executeUpdate();
       if(count>0){
           status=true;
       }
   }

吸氣劑工作正常,我可以列印它們的值。我想我的查詢有誤。請指出我的錯誤。提前致謝!!

指定列並使用 SELECT:

"insert into create_request (col1,col2,etc..col6) 
select ?,?,?,?,?, count(reqno) +1 from create_request"

只需確保值和列匹配。

我猜你忘記了一個’)’。

嘗試這個:

stmt=con.prepareStatement("insert into create_request values((select count(reqno) from create_request)+1),?,?,?,?,?");

引用自:https://dba.stackexchange.com/questions/55554