向数据库添加100W 条数据 性能测试
来源:互联网 发布:php addoption 编辑:程序博客网 时间:2024/05/01 17:00
向数据库添加100W 条数据 性能测试 ;
参考的相关网站目录:
JDBC实现往MySQL插入百万级数据
https://www.cnblogs.com/fnz0/p/5713102.html
MySql 的批量操作,要加rewriteBatchedStatements参数
http://blog.csdn.net/ptzrbin/article/details/21024207
JDBC事务控制管理
http://blog.csdn.net/caomiao2006/article/details/22412755
测试代码:
import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.text.SimpleDateFormat;import java.util.Date;import java.util.Random;import java.util.UUID;public class Test { private String url = "jdbc:oracle:thin:@XXXXXX:1521:XXXX"; private String user = "XXXX"; private String password = "XXXX"; public void Test(){ Connection conn = null; PreparedStatement pstm =null; ResultSet rt = null; UUID uuid = UUID.randomUUID(); try { Class.forName("oracle.jdbc.driver.OracleDriver"); conn = DriverManager.getConnection(url, user, password); String sql = "INSERT INTO XXXXX(XX,XX,XXX) VALUES(?,?,?)"; pstm = conn.prepareStatement(sql); conn.setAutoCommit(false); Date start_time = new Date(); SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式 String s_start_time = df.format(start_time); System.out.println("\n************************start_time : " + s_start_time + "************************");// new Date()为获取当前系统时间 Random rand = new Random(); int a,b,c,d; for (int i = 1; i <= 1000000; i++) { pstm.setInt(1, i); pstm.setInt(2, i); /* a = rand.nextInt(10); b = rand.nextInt(10); c = rand.nextInt(10); d = rand.nextInt(10);*/ pstm.setString(3, uuid+"11111111111111111111111111111111111111111111111111" +"11111111111111111111111111111111111111111111111111111111111111111111" ); pstm.addBatch(); } pstm.executeBatch(); conn.commit(); Date end_time = new Date(); String s_end_time = df.format(end_time);// 时间差 long time_diff = end_time.getTime() - start_time.getTime(); System.out.println("Succeed!" + " It Takes times : " + time_diff + " ms ;\n\n*************************end_time : " + s_end_time + "*************************");//record /*Long endTime = System.currentTimeMillis();*/ /* System.out.println("OK,用时:" + (endTime - startTime)); */ } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); }finally{ if(pstm!=null){ try { pstm.close(); } catch (SQLException e) { e.printStackTrace(); throw new RuntimeException(e); } } if(conn!=null){ try { conn.close(); } catch (SQLException e) { e.printStackTrace(); throw new RuntimeException(e); } } } } public static void main(String[] args) { Test test = new Test(); test.Test(); }}
阅读全文
0 0
- 向数据库添加100W 条数据 性能测试
- 使用JDBC向MySQL数据库批次插入10W条数据测试效率
- 一次向数据库中添加N条相同数据
- 数据库增加100w条数据的优化
- MySQL像数据库批量插入100w条数据
- Android sqlite 数据库性能测试10万条数据
- SQL Server数据库添加100条数据
- mysql生成了100w条文章数据(2G数据)做测试用
- sql优化:SQL Server与Oracle性能对比(插入100w条数据时)
- 向数据库批量添加数据
- 向数据库中添加数据
- 循环向数据库添加数据
- 0-Oracle测试插入10W条数据
- 100w条数据如何插入
- 14-mysql优化之使用存储过程向mysql数据库中添加4000000条数据
- 对四千W条数据的数据库进行更新
- 向数据库中插入多条数据
- 使用ADO对象向数据库添加数据
- 【JavaEE学习笔记】设计模式_单例模式
- html <span>标签的取值和赋值
- AngularJs异常:TypeError: v2.showAddGroupPanel is not a function
- python实现二叉树的遍历
- jquery之常用插件
- 向数据库添加100W 条数据 性能测试
- springboot学习(1)springboot介绍及入门例子
- 解决Fiddler不能抓取chrome浏览器的数据包问题
- JAVA 8 In Action 读书笔记 (五) : MultiThreads
- 选择排序java实现
- toLowerCase()把字符变为小写 ,toUpperCase()把字符变为大写
- java web常用注解
- 使用PopupWindow实现Spinner的下拉列表
- angular入门