PreparedStatement执行sql语句出错
出错代码:
//编写增删改公告方法
public static int excute(Connection connection,PreparedStatement preparedStatement,String sql,Object[] params ) throws SQLException {
preparedStatement = connection.prepareStatement(sql);
for (int i = 0; i < params.length; i++) {
// setObject,占位符从1开始,但是我们的数组从0开始
preparedStatement.setObject(i+1,params[i]);
}
int updateRows = preparedStatement.executeUpdate(sql);
return updateRows;
}
正确代码:
public static int excute(Connection connection,PreparedStatement preparedStatement,String sql,Object[] params ) throws SQLException {
preparedStatement = connection.prepareStatement(sql);
for (int i = 0; i < params.length; i++) {
// setObject,占位符从1开始,但是我们的数组从0开始
preparedStatement.setObject(i+1,params[i]);
}
int updateRows = preparedStatement.executeUpdate();
return updateRows;
}
解释:
可以查看jdk的api文档
preparedStatement.executeUpdate();执行sql语句括号里面不用加参数