首页 > 代码库 > mysql中load data Infile运用

mysql中load data Infile运用

速度比insert要快20倍。共享一下java程序操作。
package com.mysql.csv;

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

public class Competition {
	 static Connection  conn = null;
     static String driver = "com.mysql.jdbc.Driver";
     static String url = "jdbc:mysql://127.0.0.1:3306/nerd_1"; 
     public static void main(String[] args) throws ClassNotFoundException, SQLException {
    	 Class.forName(driver);
         conn =  DriverManager.getConnection(url, "root", "1234");
         String sql = "LOAD DATA INFILE 'E://baidu//cp9.csv' REPLACE INTO TABLE baidu_34000_0_competition CHARACTER SET utf8 FIELDS TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\r\n' ignore 1 lines";
         PreparedStatement  pstmt = conn.prepareStatement(sql);
	     pstmt.execute();  
	     conn.close(); 
	} 
}
批量插入需要条件具体可参考文档:http://dev.mysql.com/doc/refman/5.1/zh/sql-syntax.html#load-data