• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    教你如何6秒钟往MySQL插入100万条数据的实现

    一、思路

    往MySQL中插入1000000条数据只花了6秒钟!

    关键点:

    1.使用PreparedStatement对象


    2.rewriteBatchedStatements=true 开启批量插入,插入只执行一次,所有插入比较快。

    二、 代码

    package test0823.demo1;
    
    import java.sql.*;
    
    /**
     * @author : Bei-Zhen
     * @date : 2020-08-24 0:43
     */
    public class JDBC2 {
    
      //static int count = 0;
    
      public static void main(String[] args) {
    
        long start = System.currentTimeMillis();
        conn();
        long end = System.currentTimeMillis();
        System.out.println("耗时:" + (end - start)/1000 + "秒");
      }
    
      public static void conn(){
        //1.导入驱动jar包
        //2.注册驱动(mysql5之后的驱动jar包可以省略注册驱动的步骤)
        //Class.forName("com.mysql.jdbc.Driver");
        //3.获取数据库连接对象
        Connection conn = null;
        PreparedStatement pstmt = null;
        {
          try {
            //"rewriteBatchedStatements=true",一次插入多条数据,只插入一次
            conn = DriverManager.getConnection("jdbc:mysql:///test?" + "rewriteBatchedStatements=true","root","root");
            //4.定义sql语句
            String sql = "insert into user values(default,?,?)";
            //5.获取执行sql的对象PreparedStatement
            pstmt = conn.prepareStatement(sql);
            //6.不断产生sql
            for (int i = 0; i  1000000; i++) {
              pstmt.setString(1,(int)(Math.random()*1000000)+"");
              pstmt.setString(2,(int)(Math.random()*1000000)+"");
              pstmt.addBatch();
            }
            //7.往数据库插入一次数据
            pstmt.executeBatch();
            System.out.println("添加1000000条信息成功!");
    
          } catch (SQLException e) {
            e.printStackTrace();
          } finally {
            //8.释放资源
            //避免空指针异常
            if(pstmt != null) {
              try {
                pstmt.close();
              } catch (SQLException e) {
                e.printStackTrace();
              }
            }
    
            if(conn != null) {
              try {
                conn.close();
              } catch (SQLException e) {
                e.printStackTrace();
              }
            }
          }
        }
    
      }
    
    }
    
    

    三、运行结果

    添加1000000条信息成功!
    耗时:6秒


    到此这篇关于教你如何6秒钟往MySQL插入100万条数据的实现的文章就介绍到这了,更多相关MySQL插入100万条数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    您可能感兴趣的文章:
    • MySql 快速插入千万级大数据的方法示例
    • 88秒插入1000万条数据到MySQL数据库表的操作方法
    • java中JDBC实现往MySQL插入百万级数据的实例代码
    • mysql中迅速插入百万条测试数据的方法
    上一篇:MySQL如何优雅的备份账号相关信息
    下一篇:聊聊MySQL中的存储引擎
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    教你如何6秒钟往MySQL插入100万条数据的实现 教你,如何,6秒钟,往,MySQL,