mysql preparedstatement 批量update,PreparedStatement的批量更新的有关问题(只执行最后一条插入语句)...
PreparedStatement的批量更新的问题(只执行最后一条插入语句)
本帖最后由 zhrubin 于 2014-07-07 10:47:41 编辑
后台是MySql,大家有没有碰到添加了很多addBatch,但是最终commit完,只
执行最后一条的情况。
conn = BaseDaoLocalImpl.getBase().getConn();
conn.setAutoCommit(false);
sql = "insert into course_charge_standard (big_num,course_name,course_level,course_type,course_std,charge_type," +//6列
"start_date,course_object,course_info,course_memo,branch_num) values(?,?,?,?,?,?,?,?,?,?,?)";//5列
for(int i =0; i
Course_charge_standard ccs = ccsList.get(i);
pstmt = conn.prepareStatement(sql);
pstmt.setLong(1, ccs.getBig_num());
pstmt.setString(2, ccs.getCourse_name());
pstmt.setString(3, ccs.getCourse_level());
pstmt.setString(4,ccs.getCourse_type());
pstmt.setBigDecimal(5, ccs.getCourse_std());
pstmt.setString(6, ccs.getCharge_type());
pstmt.setString(7, ccs.getStart_date());
pstmt.setString(8, ccs.getCourse_object());
pstmt.setString(9, ccs.getCourse_info());
pstmt.setString(10, ccs.getCourse_memo());
pstmt.setInt(11, ccs.getBranch_num());
pstmt.addBatch();
}
int[] executeBatch = pstmt.executeBatch();//这里只返回了1
for (int j : executeBatch) {
System.out.println(" j="+j);
}
conn.commit();
但是如果在
pstmt.addBatch();后面紧跟一句 pstmt.executeBatch();,即每addBatch一次,就executeBatch一次,就没有问题。
------解决方案--------------------
把pstmt = conn.prepareStatement(sql);移到for 循环外面。
------解决方案--------------------
pstmt = conn.prepareStatement(sql); 这个 问题了, 你放循环外面。
mysql preparedstatement 批量update,PreparedStatement的批量更新的有关问题(只执行最后一条插入语句)...相关推荐
- mysql更新两表所有记录语句怎么写_mysql 一条sql语句update更新两个表
mysql 一条sql语句update更新两个表 你写过一条sql语句来修改两个表的数据吗? UPDATE test.table1 t1,test.table2 t2 SET t1.aa='a',t1 ...
- mysql 索引 死锁,由不同的索引更新解决MySQL死锁套路
前几篇文章介绍了用源码的方式来调试锁相关的信息,这里同样用这个工具来解决一个线上实际的死锁案例,下面小编来简单介绍下 前几篇文章介绍了用源码的方式来调试锁相关的信息,这里同样用这个工具来解决一个线上实 ...
- 面试题:一条 sql 语句是如何经过 MySQL 的体系结构的?
点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:有了这 4 款工具,老板再也不怕我写烂SQL了个人原创+1博客:点击前往,查看更多 作者:李福春 来源:http ...
- mysql导入多条数据语句_MySQL插入多条记录和REPLACE语句
今天遇到样一个问题,在使用Mysql数据库时,新建一个表,并设置主键为自增长,结果当我一次执行多条插入语句时悲剧了,它竟然报错了,信息如下: 错误码: 1064 You have an error i ...
- linux sql命令行查询语句不要换行_面试刷题mysql1:一条sql语句是如何经过mysql的体系结构的?...
mysql执行一条sql查询语句背后发生了什么呢? 我是李福春,我在准备面试,今天的题目是: mysql的体系结构是怎样的?一条sql语句在mysql的体系结构中经历了什么? 答: mysql体系结构 ...
- kettle 常用输出(插入更新、表输出、执行 SQL 脚本)
上一篇 文章 ,主要讲了 kettle 的原理.安装及简单的使用.其中用到了一种输出方式:插入更新. 这篇文章,主要介绍下常用的输出方式:插入更新.表输出.执行 SQL 脚本. 插入更新 插入更新,顾 ...
- Mysql 一条SQL语句实现批量更新数据,update结合case、when和then的使用案例
如何用一条sql语句实现批量更新?mysql并没有提供直接的方法来实现批量更新,但是可以用点小技巧来实现. 代码如下: UPDATE mytable SET myfield = CASE id WHE ...
- mysql update多条件批量更新_Mybatis中进行批量更新(updateBatch)
更新多条数据,每条数据都不一样 背景描述:通常如果需要一次更新多条数据有两个方式,(1)在业务代码中循环遍历逐条更新.(2)一次性更新所有数据(更准确的说是一条sql语句来更新所有数据,逐条更新的操作 ...
- 【MySQL】 update 大量数据批量更新
文章目录 更新字段,多种操作 更新一条数据的某个字段,一般这样写: 更新同一字段为同一个值,mysql也很简单,修改下where即可: 更新多条数据为不同的值,可能很多人会这样写: 那么能不能一条sq ...
最新文章
- linux c 函数 link symlink unlink 链接相关功能
- “网红” WebAssembly 与 K8s 如何实现双剑合璧?
- MyBatisPlus条件构造器带条件删除delete使用
- 在JavaScript中遭遇级联表达式陷阱
- RESTful API接口文档规范小坑
- Scilab 求解线性方程组示例(linsolve)
- 判断release模式_AbstractQueuedSynchronizer共享模式与基于Condition的等待/通知
- oracle导致的负载高,oracle服务器负载过高_停止RMAN备份任务
- 自动划分-------训练集+验证集+测试集(code,自己设置比例)
- 2017 Multi-University Training Contest - Team 7:1003. Color the chessboard(...)
- Java传参是字节还是字符串好_深入分析java传参
- Tomcat安装步骤及详细配置教程(2022最新版)
- Cisco Packet Tracer思科模拟器路由器系统的备份与恢复
- 半导体储存器例题小试--十安辰
- 手机屏幕取词翻译软件哪个比较好?快看这篇文章,它能告诉你
- 哈工大计算机网络期末复习资料知识点总结
- 圆角装饰条_护角条是圆角好还是直角好
- JSONObject、JSONArray
- .net mvc 在 cshtml 中输出 html 格式问题
- 基于Javaweb的小项目(类似于qqzone) 7 —— 日志相关操作
热门文章
- 一秒完成充电,超级量子电池即将问世
- php开发以太坊无法连接到远程Geth,connect: permission denied.
- sql之left join、right join、inner join的区别,连接自己时的查询结果测试
- python3--装饰器
- Eclipse的SVN插件移动中文名称文件提示org.tigris.subversion.javahl.ClientException: Bogus URL...
- 经常使用的时间同步server地址
- 美国康普SYSTIMAX iPatch智能配线系统介绍
- 供应链攻击已成全球企业的“心腹大患”
- linux shell 计算时间差
- java maven项目构建ssh工程 父工程与子模块的拆分与聚合