我编写了以下方法来在数据库中执行更新语句:
public boolean updateEmployee(int id){
try {
String update="UPDATE employee set name='updatedName' and address='updatedaddress' where id=(?)";
pst=connection.prepareStatement(update);
pst.setInt(1, id);
pst.executeUpdate();
} catch (SQLException ex) {
Logger.getLogger(DAO.class.getName()).log(Level.SEVERE, null, ex);
return false;
}
return true;
}
但是会出现以下异常:
java.sql.SQLException: Parameter index out of range (1 > number of parameters, which is 0).
并且还会抛出此异常:
com.mysql.jdbc.MysqlDataTruncation: Data truncation: Truncated incorrect DOUBLE value: 'UpdatedName'
这里有什么问题?此外,如何返回更新语句的结果(因为executeQuery
不适用于 DML 语句)?