`
carrey360
  • 浏览: 1798 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

mysql 连接

阅读更多
1.package jdbc2;  
2.import java.sql.Connection;  
3.import java.sql.DriverManager;  
4.import java.sql.PreparedStatement;  
5.import java.sql.SQLException;  
6. 
7.public class Mysql {  
8.    public static void main(String[] args) {  
9.        test_mysql();  
10.        //test_mysql_batch();  
11.        //test_oracle();  
12.        //test_oracle_batch();  
13.    }  
14.    /** 
15.     * mysql非批量插入10万条记录 
16.     * 第1次:17437 ms 
17.     * 第2次:17422 ms 
18.     * 第3次:17046 ms 
19.     */ 
20.    public static void test_mysql(){  
21.        String url="jdbc:mysql://192.168.10.139:3306/test";  
22.        String userName="root";  
23.        String password="1234";  
24.        Connection conn=null;  
25.        try {        
26.              Class.forName("com.mysql.jdbc.Driver");        
27.              conn =  DriverManager.getConnection(url, userName, password);        
28.              conn.setAutoCommit(false);        
29.              String sql = "insert into t_user(id,uname) values(?,?)";        
30.              PreparedStatement prest = conn.prepareStatement(sql);        
31.              long a=System.currentTimeMillis();  
32.              for(int x = 0; x < 100000; x++){        
33.                 prest.setInt(1, x);        
34.                 prest.setString(2, "张三");        
35.                 prest.execute();  
36.              }        
37.              conn.commit();        
38.              long b=System.currentTimeMillis();  
39.              System.out.println("MySql非批量插入10万条记录用时"+ (b-a)+" ms");  
40.        } catch (Exception ex) {  
41.            ex.printStackTrace();  
42.        }finally{  
43.            try {  
44.                if(conn!=null)conn.close();  
45.            } catch (SQLException e) {  
46.                e.printStackTrace();  
47.            }     
48.        }  
49.    }  
50.    /** 
51.     * mysql批量插入10万条记录 
52.     * 第1次:17437 ms 
53.     * 第2次:17562 ms 
54.     * 第3次:17140 ms 
55.     */ 
56.    public static void test_mysql_batch(){  
57.        String url="jdbc:mysql://192.168.10.139:3306/test";  
58.        String userName="root";  
59.        String password="1234";  
60.        Connection conn=null;  
61.        try {        
62.            Class.forName("com.mysql.jdbc.Driver");        
63.            conn =  DriverManager.getConnection(url, userName, password);        
64.            conn.setAutoCommit(false);        
65.            String sql = "insert into t_user(id,uname) values(?,?)";        
66.            PreparedStatement prest = conn.prepareStatement(sql);        
67.            long a=System.currentTimeMillis();  
68.            for(int x = 0; x < 100000; x++){        
69.                prest.setInt(1, x);        
70.                prest.setString(2, "张三");        
71.                prest.addBatch();      
72.            }        
73.            prest.executeBatch();        
74.            conn.commit();        
75.            long b=System.currentTimeMillis();  
76.            System.out.println("MySql批量插入10万条记录用时"+ (b-a)+" ms");  
77.        } catch (Exception ex) {  
78.            ex.printStackTrace();  
79.        }finally{  
80.            try {  
81.                if(conn!=null)conn.close();  
82.            } catch (SQLException e) {  
83.                e.printStackTrace();  
84.            }     
85.        }  
86.    }  
87.    /** 
88.     * oracle非批量插入10万条记录 
89.     * 第1次:22391 ms 
90.     * 第2次:22297 ms 
91.     * 第3次:22703 ms 
92.     */ 
93.    public static void test_oracle(){  
94.        String url="jdbc:oracle:thin:@192.168.10.139:1521:orcl";  
95.        String userName="scott";  
96.        String password="tiger";      
97.        Connection conn=null;  
98.        try {        
99.            Class.forName("oracle.jdbc.OracleDriver");        
100.            conn =  DriverManager.getConnection(url, userName, password);        
101.            conn.setAutoCommit(false);        
102.            String sql = "insert into t_user(id,uname) values(?,?)";        
103.            PreparedStatement prest = conn.prepareStatement(sql);        
104.            long a=System.currentTimeMillis();  
105.            for(int x = 0; x < 100000; x++){        
106.                prest.setInt(1, x);        
107.                prest.setString(2, "张三");        
108.                prest.execute();  
109.            }  
110.            conn.commit();        
111.            long b=System.currentTimeMillis();  
112.            System.out.println("Oracle非批量插入10万记录用时"+ (b-a)+" ms");  
113.            conn.close();      
114.        } catch (Exception ex) {  
115.            ex.printStackTrace();  
116.        }finally{  
117.            try {  
118.                if(conn!=null)conn.close();  
119.            } catch (SQLException e) {  
120.                e.printStackTrace();  
121.            }     
122.        }  
123.    }  
124.    /** 
125.     * oracle批量插入10万条记录 
126.     * 第1次:360 ms 
127.     * 第2次:328 ms 
128.     * 第3次:359 ms 
129.     */ 
130.    public static void test_oracle_batch(){  
131.        String url="jdbc:oracle:thin:@192.168.10.139:1521:orcl";  
132.        String userName="scott";  
133.        String password="tiger";      
134.        Connection conn=null;  
135.        try {        
136.            Class.forName("oracle.jdbc.OracleDriver");        
137.            conn =  DriverManager.getConnection(url, userName, password);        
138.            conn.setAutoCommit(false);        
139.            String sql = "insert into t_user(id,uname) values(?,?)";        
140.            PreparedStatement prest = conn.prepareStatement(sql);        
141.            long a=System.currentTimeMillis();  
142.            for(int x = 0; x < 100000; x++){        
143.                prest.setInt(1, x);        
144.                prest.setString(2, "张三");        
145.                prest.addBatch();  
146.            }  
147.            prest.executeBatch();        
148.            conn.commit();        
149.            long b=System.currentTimeMillis();  
150.            System.out.println("Oracle批量插入10万记录用时"+ (b-a)+" ms");  
151.            conn.close();      
152.        } catch (Exception ex) {  
153.            ex.printStackTrace();  
154.        }finally{  
155.            try {  
156.                if(conn!=null)conn.close();  
157.            } catch (SQLException e) {  
158.                e.printStackTrace();  
159.            }     
160.        }  
161.    }  
162.} 
分享到:
评论

相关推荐

    MySQL连接工具 绿色版

    MySQL连接工具是数据库管理员和开发人员用来与MySQL服务器交互的重要应用程序。绿色版通常指的是免安装、便携式的版本,可以直接运行而无需在计算机上进行正式的安装过程,这对于需要在不同设备间移动工作或者不想...

    mysql连接驱动包

    MySQL连接驱动包是Java应用程序与MySQL数据库进行交互的关键组件,它允许Java开发者通过JDBC(Java Database Connectivity)接口执行SQL语句,管理数据库事务,以及处理数据库结果集。本压缩包包含了两个不同版本的...

    Mysql 连接资源Jar

    是MySQL连接器的类名,通过`Class.forName()`方法加载。 3. 创建数据库连接: ```java String url = "jdbc:mysql://localhost:3306/mydatabase"; String user = "username"; String password = "password"; ...

    mysql连接驱动jar包

    MySQL连接驱动jar包是Java应用程序与MySQL数据库进行交互的关键组件。在Java中,我们使用JDBC(Java Database Connectivity)API来实现数据库操作,而MySQL连接驱动则是JDBC的一部分,它负责建立Java应用程序与MySQL...

    nodejs封装好的mysql数据库模块,带mysql连接池以及百万测试数据

    本模块基于Node.js实现了对MySQL数据库的封装,利用了mysql连接池来优化性能,并且包含了用于测试的百万级数据,确保了在大数据量场景下的稳定性和效率。以下将详细介绍该模块的关键知识点: 1. **Node.js与MySQL**...

    OPC服务器软件KEPServer实现与MySQL连接

    OPC 服务器软件 KEPServer 实现与 MySQL 连接 OPC 服务器软件 KEPServer 是一种工业自动化领域中的数据交换协议,以实现实时数据交换和远程监控。通过 KEPServer 软件,可以实现与 MySQL 数据库之间的数据交互,...

    mysql连接数据库。。jar架包

    这个"mysql连接数据库..jar架包"正是这样的一个驱动包,它包含了MySQL JDBC(Java Database Connectivity)驱动,使得Java程序能够通过标准的JDBC API与MySQL服务器进行通信。 JDBC是Java语言中用来规范客户端程序...

    网络收集 C++ MYSQL 连接池 可编译运行

    本资源包含了一个可编译运行的C++ MySQL连接池示例,这对于理解和实践C++中的数据库管理是非常有价值的。 首先,连接池的概念是这样的:它是一组预先初始化的数据库连接,程序在需要时可以从池中获取一个已存在的...

    MySql连接数据库(方法、代码、用到的所有组件)

    以下是对MySQL连接数据库涉及的知识点的详细说明: 1. **连接方式**: - **命令行客户端**:这是最基础的连接方式,通过MySQL的命令行界面输入SQL语句与数据库交互。 - **图形化界面工具**:如MySQL Workbench、...

    易语言MYSQL连接池模块

    易语言MYSQL连接池模块源码,MYSQL连接池模块,GetThis,初始化,关闭类线程,线程_测试,其他_附加文本,连接池初始化,取mysql句柄,释放mysql句柄,取空闲句柄数,销毁连接池,取_类_函数地址,取指针内容_整数,取变量地址_...

    Mysql连接池

    MySQL连接池是数据库管理中的一个重要概念,主要用于优化数据库应用程序的性能和资源管理。在高并发的Web应用中,频繁地创建和销毁数据库连接会消耗大量系统资源,增加延迟,而连接池通过复用已建立的数据库连接来...

    mysql连接工具nav150

    mysql连接工具nav150

    CH07MySQL连接器JDBC和连接池.ppt

    CH07MySQL连接器JDBC和连接池.ppt

    mysql连接工具

    MySQL连接工具是数据库管理员、开发人员以及数据分析师用于与MySQL数据库进行交互的软件应用程序。MySQL是一种流行的开源关系型数据库管理系统(RDBMS),它在Web应用程序、数据分析和各种业务系统中广泛使用。为了...

    MySql.Data.zip_MYSQL_mysql c#_mysql 连接_mysql连接类_连接MYSQL

    本文将深入探讨如何使用 C# 和 `MySql.Data.dll` 实现 MySQL 数据库的连接、查询及其他操作。 1. **安装 MySql.Data NuGet 包** 在 Visual Studio 中,你可以通过 NuGet 包管理器来安装 `MySql.Data`。在解决方案...

    .net mysql 连接驱动程序 6.9.5

    安装完成后,.NET Framework将自动识别并添加对应的MySQL连接驱动,这样开发者就可以在项目中直接引用它。 为了使用这个驱动程序,开发者需要在代码中添加以下引用: ```csharp using MySql.Data.MySqlClient; ``` ...

    命令行下mysql 连接器

    在本文中,我们将深入探讨命令行下MySQL连接器的相关知识,包括它的特点、用途、使用方法以及如何随身携带。 首先,让我们理解标题中的“命令行下MySQL连接器”。这个工具是指MySQL的命令行客户端(mysql.exe),它...

    mysql连接的空闲时间超过8小时后 MySQL自动断开该连接解决方案

    修改 /etc/mysql/my.cnf文件,在 [mysqld] 节中设置: # Set a connection to wait 8hours in idle status. wait_timeout =86400 相关参数,红色部分 mysql&gt; show variables like ‘%timeout%’; +————————...

    关于MySql连接jsp的驱动问题

    关于MySql连接jsp的驱动问题,包括连接的详细步骤,里面附有截图,还有各个注意事项,还附加了一个测试代码,希望对大家有所帮助

    VS2013添加MySQL连接完美解决方案

    "VS2013添加MySQL连接完美解决方案"这个标题所指的就是解决这个问题的一种方法。 标题中的“完美解决方案”通常意味着一种全面且可靠的处理方式,能够确保用户在VS2013中顺利地与MySQL数据库进行交互。在这个案例中...

Global site tag (gtag.js) - Google Analytics