操作数据库之批量删除

import java.sql.SQLException;
import java.util.List;

import org.apache.commons.dbutils.QueryRunner;

import com.itheima.C3P0Utils.C3P0Utils;

/**
* 操作数据库之批量删除
* 实现思路:
* 将需要删除的元素的主键存储在一个集合中
* 将集合遍历
* 使用拼接sql语句的思路
* 将SQL语句拼接加入到循环中,实现可变的数据操作
* @author Ginfer
* @virsion
* HP
* com.itheima.Day23
* HP
*/
public class DeleteAll {
/*
* 集合多长,问号多少个
*/
public void delete2(List<Integer> list) throws SQLException{
//创建数据库操作对象
QueryRunner qr = new QueryRunner();
//获取数据库操作语句,使用字符串拼接,将sql语句拼接完成
//常见字符串缓冲区
StringBuilder sb = new StringBuilder("DELETE FROM products WHERE pid in(");
for (int i = 0; i < list.size(); i++) {
if(i!=list.size()-1)
sb.append("?,");
else
sb.append("?");
}
qr.update(C3P0Utils.getConnection(), sb.toString(), list.toArray());

//执行数据库操作
}
}

原文地址:https://www.cnblogs.com/Flyrun/p/7999314.html