我的应用程序中有一个部分需要同时更新两个表(WORKTR和BRTR)。
但是,该程序仅对第一个表更新查询有效,而第二个查询不起作用,从而仅更新了一个表。记录错误时没有错误提示。
这是我的jdbc代码,用于更新两个表:
String query=("UPDATE WORKTR SET status = ? WHERE Pf_no = ? AND status = ? AND Scan_by= ? AND Start_date= ?");
PreparedStatement ps = con.prepareStatement(query);
// set the preparedstatement parameters
ps.setString(1,a_status);
ps.setString(2,OperatorPF);
ps.setString(3,b_status);
ps.setString(4,PIC);
ps.setString(5,dates);
// call executeUpdate to execute our sql update statement
ps.executeUpdate();
if (ps.executeUpdate()==1) {
String queryBRTR= ("Update BRTR set end_break = ?, status= ? where and PF_No= ? and work_date= ?");
PreparedStatement br = con.prepareStatement(queryBRTR);
// set the preparedstatement parameters
br.setString(1,currentTime);
br.setString(2,a_status);
// br.setString(3,b_status);
br.setString(3,OperatorPF);
br.setString(4,dates);
// call executeUpdate to execute our sql update statement
br.executeUpdate();
if( br.executeUpdate()==1){
z="You may resume your work now";
}
else{
ps.close();
br.close();
}
请突出显示是否有任何错误,或提出另一种更新两个表的方法。
答案 0 :(得分:0)
更改为
int rowsChanged = ps.executeUpdate();
if (rowsChanged >= 1) {
您两次致电executeUpdate
。