Tôi đang sử dụng Java để kết nối với cơ sở dữ liệu MySQL. Tôi đang cố chèn hoặc cập nhật dữ liệu vào cơ sở dữ liệu.Làm thế nào để bạn xác định xem một chèn hoặc cập nhật đã thành công bằng cách sử dụng Java và MySQL?
Mặc dù tôi khá chắc chắn chèn đã thành công, nó trả về false.
Theo API "thực thi", giá trị trả lại là "true nếu kết quả đầu tiên là đối tượng ResultSet; false nếu đó là số cập nhật hoặc không có kết quả".
Làm cách nào để xác định việc chèn hoặc cập nhật của tôi có thành công hay không?
public boolean insertSelections(String selection, String name){
String sql ="INSERT INTO WORKREPORT VALUES (?,?,?,?,?)";
boolean action = false;
try {
PreparedStatement stmt = conn.prepareStatement(sql);
SimpleDateFormat dateFormat = new java.text.SimpleDateFormat("yyyy:MM:dd hh:mm:ss");
String formatDate = dateFormat.format(new java.util.Date(System.currentTimeMillis()));
java.util.Date mDate = dateFormat.parse(formatDate);
java.sql.Timestamp timeStamp = new java.sql.Timestamp(System.currentTimeMillis());
// Date time= new Date(mDate.getTime());
stmt.setInt(1, Integer.parseInt(getNumberByName(name).trim()));
stmt.setString(2, name);
// stmt.setDate(3, time);
stmt.setTimestamp(3, timeStamp);
stmt.setString(4, selection);
stmt.setString(5, "N/A");
action = stmt.execute();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return action;
}
Hãy thử với 'stmt.executeUpdate();' cho loại 'Cập nhật op (INSERT, UPDATE, DELETE)'. –