java 如何批量修改一张表里面多条数据的某个字段的值,需要修改的字段值是自定义的。

表名:dealers字段1:did字段2:buynum要修改的是字段2,批量修改这个字段... 表名:dealers
字段1:did
字段2:buynum
要修改的是字段2,批量修改这个字段
展开
 我来答
狂派程序猿
推荐于2017-11-25 · 超过16用户采纳过TA的回答
知道答主
回答量:77
采纳率:0%
帮助的人:48.5万
展开全部
直接数据库操作嘛 全部改一样的就用update dealers set buynum where 。。
不一样的话就存储结构吧。
用java更新 最好用批处理PreparedStatement stamt.. "update ??????"

for(){ stamt.addBatch(); }
stamt.executeBatch();
追问
有详细的实例吗? 小弟刚入门 如果有的话请您发一下,感激不尽!
追答
Connection conn = DBUtil.getConnection();//获取数据库链接
PreparedStatement stat = conn.prepareStatement("insert into T_TE_WWW_MANBA (id,name,age) values(?,?,?)");//定义sql语句。
BasketBollPlayer player = null;
for(int i=1;i<100000;i++)
{
player = new BasketBollPlayer(new Integer(i),"kebi"+i,"age"+1);
stat.setInt(1, player.getId());
stat.setString(2, player.getName());
stat.setString(3, player.getAge());
stat.addBatch();
if(i%500==0)//500提交一次,避免数据量太大内存溢出。
{
int[] flag = stat.executeBatch();/提交
stat.clearBatch();//清除。
System.out.println(flag+"i");
}
}
stat.executeBatch();//提交
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
李晓健
2013-07-19 · TA获得超过183个赞
知道小有建树答主
回答量:293
采纳率:0%
帮助的人:192万
展开全部
String sql = "update dealers set"+列名+" ="你想要的值";

列名和你想要的值都通过参数传过来 然后通过java 去执行这sql
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sunjchg
2013-07-19 · TA获得超过266个赞
知道小有建树答主
回答量:274
采纳率:0%
帮助的人:235万
展开全部
可以通过prepareStatement 建立批次处理,只编译一次,参数要addBatch添加进去,最后提交一次,效率比较高吧,想一条SQL单独执行,是大不到你的要求的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
s136357491
2013-07-19 · TA获得超过223个赞
知道小有建树答主
回答量:295
采纳率:0%
帮助的人:147万
展开全部
update dealers set buynum=“你想要的值”,用java执行这条sql
追问
需要修改的字段值是不确定的,是自定义输入的,然后才可以到后台执行,你有实例的话可以给发一下吗?我可以追加分数 呵呵
追答
额。。。这个直接拼接sql语句,和拼接字符串是一样的,或者用占位符。。
public String getSql(String newBuynum){
String sql="update dealers set buynum=“+newBuynum;

return sql

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式