错误java sql.SQLException:参数索引超出范围(1>)

时间:2019-03-09 03:26:52

标签: java mysql

我的代码有错误,但是我不知道是什么... (Java + MySQL)

public void deleteClientes(int nit){
   sql = "DELETE FROM `clientes` WHERE `clientes`.`nit` =  ";
   delete(sql,nit);

}

接收方法:

 public void delete(String sql,int id){
    final QueryRunner qr = new QueryRunner(true); 
    try {
        qr.update(conexion(),sql,"%"+id+"%");
    } catch (SQLException ex) {
       System.err.println("Error"+ex);
    }
}

2 个答案:

答案 0 :(得分:0)

您的查询没有占位符?。应该是:

"DELETE FROM `clientes` WHERE `clientes`.`nit` =  ?"

答案 1 :(得分:0)

需要将?添加到将根据参数

放置数据的sql语句中
sql = "DELETE FROM `clientes` WHERE `clientes`.`nit` =  ?";

 qr.update(conexion(),sql,id);