mysql数据库100万条数据JDBC插入的各种方式效率对比。

mysql数据库100万条数据JDBC插入的各种方式效率对比

  下面测试四个方式:

   1 、一条一条插入  166秒/10万

   2、jdbc采用事务提交  135秒/10万

   3、batch方式(内部实现方式-拼接values) 12.73秒/10万

   4、事务+batch方式   9.99秒/10万

package test.jbdc;


import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

import org.junit.Test;

/**
 * 大数据量的插入---> 测试100万条数据  【一共5个字段的表】
 * 方法1、普通采用jdbc插入
 * 方法2、jdbc用事务进行提交  --> 事务提交是把语句一起执行
 * 方法3、batch语句   --> 内部实现是是把 values 后面的插入值变成成 values(,,,),(,,,,) :
 */
public class BigDataTest {
    
    /**
     * 一、普通方式
     * 时间:10万条:16672ms 折合100万条 = 166.72秒 
     */
    @Test
    public void test1(){
        Connection conn = JDBCUtil.getConnection();
        PreparedStatement stmt  = null;
        long t1 = System.currentTimeMillis();
        try {
            stmt = conn.prepareStatement("insert into test_yxtj
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值