哪一个是从DB中删除记录的最佳方法?
使用Spring JDBC 3.1.1
String SQL="DELETE FROM XXX WHERE USERNAME=?";
查询1:
getJdbcTemplate().execute(SQL, new PreparedStatementCallback<Boolean>() {
@Override
public Boolean doInPreparedStatement(PreparedStatement ps) throws SQLException, DataAccessException {
ps.setString(1, username);
return ps.execute();
}
});
查询2:
int deletedRecordSize = getJdbcTemplate().update(SQL, username);
答案 0 :(得分:0)
由于DELETE
是数据更改操作,您应该在第一个查询中调用executeUpdate
。然后,这将返回int
,同时减少代码长度和可读性的差异。
在哪种情况下查询2 看起来更短&amp;清洁剂。
答案 1 :(得分:0)
尝试在你删除方法中尝试catch块:
try{
String SQL="DELETE FROM XXX WHERE USERNAME=?";
ps = conn.prepareStatement(sql); //conn here is the usual object fro DB connection class
ps.setString(1, username);
ps.execute();
JOptionPane.showMessageDialog(null,"DONE DELETING", "DONE",1);
}catch(SQLException | HeadlessException e){
}
答案 2 :(得分:0)