1. 程式人生 > >35 JDBC批量插入數據二

35 JDBC批量插入數據二

獲取 else ++ star bsp pri conn nal cat

package MYSQK;
import java.sql.*;

/**
 * PreparedStatement 對象可以對sql語句進行預編譯,預編譯的信息會存在存儲該對象中,當相同的sql語句再次執行時,程序
 *   會使用PrepareStatement對象中,而不需再次編譯去查詢數據庫,大大提高了數據的訪問效率
 */

public class Insert {
    public  static  void main(String[] args) throws SQLException{
        Connection conn=null;
        PreparedStatement pst 
=null; try { // 1 加載驅動類 Class.forName("com.mysql.jdbc.Driver"); // 2 通過DriverManager獲取connection對象 String url="jdbc:mysql://192.168.64.129:3306/jdbc?" + "user=root&password=815qza&useUnicode=true&characterEncoding=UTF8"; conn
= DriverManager.getConnection(url); if (!conn.isClosed()){ System.out.println("Succeeded connecting to the Database!"); }else{ System.out.println("Sorry,failed connecting to the Database"); } // 3 獲取pre對象 String sql = "insert INTO USERS(name,PASSWORD,email,birthday) VALUES (?,?,?,?)" ; pst
= conn.prepareStatement(sql); //4 使用prepare對象執行sql語句 System.out.println("開始插入數據"); long starttime = System.currentTimeMillis(); int count = 0; for(int i=8;i<=100;i++) { pst.setString(1,"bowen"+i); pst.setString(2,"815qza"); pst.setString(3,"bowen"+i+"@126.com"); pst.setString(4,"1990-01-01"); pst.executeUpdate(); count++; } long endtime = System.currentTimeMillis(); System.out.println("插入結束!耗費時間為"+(endtime-starttime)/1000+"s"); System.out.println("共插入"+count+"條數據"); }catch (ClassNotFoundException e){ e.printStackTrace(); }finally { // 6 關閉連接 pst.close(); conn.close(); } } }

技術分享圖片

技術分享圖片

35 JDBC批量插入數據二