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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 如何批量修改一张表里面多条数据的某个字段的值,需要修改的字段值是自定义的。相关的知识,希望对你有一定的参考价值。

表名:dealers
字段1:did
字段2:buynum
要修改的是字段2,批量修改这个字段

参考技术A 直接数据库操作嘛 全部改一样的就用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();//提交

本回答被提问者采纳
参考技术B String sql = "update dealers set"+列名+" ="你想要的值";

列名和你想要的值都通过参数传过来 然后通过java 去执行这sql
参考技术C 可以通过prepareStatement 建立批次处理,只编译一次,参数要addBatch添加进去,最后提交一次,效率比较高吧,想一条SQL单独执行,是大不到你的要求的 参考技术D update dealers set buynum=“你想要的值”,用java执行这条sql追问

需要修改的字段值是不确定的,是自定义输入的,然后才可以到后台执行,你有实例的话可以给发一下吗?我可以追加分数 呵呵

追答

额。。。这个直接拼接sql语句,和拼接字符串是一样的,或者用占位符。。
public String getSql(String newBuynum)
String sql="update dealers set buynum=“+newBuynum;

return sql

oracle如何创建一个表 在表里添加数据 和如何修改某个数据

1 我想在oracle下创建一个表 叫baidu 里面要有 id 姓名 年龄 性别 工资
2 比如是 id 姓名 年龄 性别 工资
10 李四 20 男 3000
3 假设我 输入错了 如何修个一行数据
谢谢了老师 要是有好点的资料给留个地址

参考技术A 建表create table baidu (
id number,
xingming varchar(20),
nianling number,
xingbie BOOLEAN,
gongzi number
);

插入
insert into baidu values(....................);
commit;
修改
update baidu set xxxx=xxxx where xxxxxxxxxx
参考技术B 您是做什么的啊,问题挺逗的,呵呵

以上是关于java 如何批量修改一张表里面多条数据的某个字段的值,需要修改的字段值是自定义的。的主要内容,如果未能解决你的问题,请参考以下文章

mysql数据批量更新,谢谢

如何批量删除数据库里某个表里的多条记录

sql如何查询出一张表的的某个字段数据更换成另一张表的字段数据

mysql 3张表关联批量更新

db2如何实现用一张表的某个字段更新另一张表的相应字段。

SQL关联两张表查数据,结果只显示一条。