博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
20160322 javaweb 之jdbc-- mysql 批处理
阅读量:6604 次
发布时间:2019-06-24

本文共 2682 字,大约阅读时间需要 8 分钟。

package com.dzq.batch;import java.sql.Connection;import java.sql.Statement;import com.itheima.util.JDBCUtils;/*    create database day10batch;    use day10batch;    create table batchDemo(        id int primary key auto_increment,        name varchar(20)    );    insert into batchDemo values(null,'aaaa');    insert into batchDemo values(null,'bbb');    insert into batchDemo values(null,'cc');    insert into batchDemo values(null,'d'); *//*    Statement方式执行批处理:        优点:可以执行多条不同结构的sql语句        缺点:没有使用预编译机制,效率低下,如果要执行多条结构相同仅仅参数不同的sql时,仍然需要写多次sql语句的主干 */public class StatementBatch {    public static void main(String[] args) {        Connection conn = null;        Statement stat = null;        try{            conn = JDBCUtils.getConn();            stat = conn.createStatement();            stat.addBatch("create database day10batch");            stat.addBatch("use day10batch");            stat.addBatch("create table batchDemo("+                                "id int primary key auto_increment,"+                                "name varchar(20)"+                            ")");            stat.addBatch("insert into batchDemo values(null,'aaaa')");            stat.addBatch("insert into batchDemo values(null,'bbb')");            stat.addBatch("insert into batchDemo values(null,'cc')");            stat.addBatch("insert into batchDemo values(null,'d')");                        stat.executeBatch();        }catch (Exception e) {            e.printStackTrace();        }finally{            JDBCUtils.close(null, stat, conn);        }    }}

 

package com.dzq.batch;import java.sql.Connection;import java.sql.PreparedStatement;import com.itheima.util.JDBCUtils;/*     create table psbatch(         id int primary key auto_increment,         name varchar(30)     ); *//*    prparedStatement 方式实现的批处理:        优点:有预编译机制,效率比较高.执行多条结构相同,参数不同的sql时,不需要重复写sql的主干        缺点:只能执行主干相同参数不同的sql,没有办法在一个批中加入结构不同的sql */public class PSBatch {    public static void main(String[] args) {        Connection conn = null;        PreparedStatement ps = null;        try{            conn = JDBCUtils.getConn();            ps = conn.prepareStatement("insert into psbatch values(null,?)");                        for(int i=1;i<=100000;i++){                ps.setString(1, "name"+i);                ps.addBatch();                                if(i%1000==0){                    ps.executeBatch();                    ps.clearBatch();                }            }            ps.executeBatch();                    }catch (Exception e) {            e.printStackTrace();        }finally{            JDBCUtils.close(null, ps, conn);        }    }}

 

转载于:https://www.cnblogs.com/xiaoduc-org/p/5369632.html

你可能感兴趣的文章
使用OpenGrok搭建 可搜索可跳转的源码 阅读网站
查看>>
HTML5开发中的javascript闭包
查看>>
Android ContentProvider调用报错"Bad call:..."及相关Binder权限问题分析
查看>>
ionic3 教程(二)登录页制作
查看>>
Python正则表达式初识(四)
查看>>
不明恶意攻击致<搜狗搜索><搜索结果>跳转<百度搜索>技术原理分析
查看>>
不务正业的前端之SSO(单点登录)实践
查看>>
配置通过VLANIF实现跨设备VLAN内通信
查看>>
一站式计费解决方案——腾讯计费首次亮相昆明
查看>>
Linux-正则表达式
查看>>
文字转语音转换的方法有哪些?
查看>>
linux系统电视盒子到底是什么
查看>>
MySQL的root用户密码忘了 , 该怎么办?
查看>>
一次性可以导入多少首歌曲到NoteBurner Spotify Music Converter中?
查看>>
基本shell脚本的编辑及变量
查看>>
$ORACLE_HOME/bin/oracle执行文件
查看>>
免密码登陆
查看>>
加密和解密 tar
查看>>
我的友情链接
查看>>
[李景山php]每天TP5-20161216|thinkphp5-helper.php-1
查看>>