读书人

mysqlimport应用

发布时间: 2012-12-25 16:18:28 作者: rapoo

mysqlimport运用
格式:mysqlimport [options] db_name textfile1 [textfile2 ...]

例子:mysqlimport -u username -ppassword db_name c:/grid_card.txt -L -Delete --fields-terminated-by=,

注意:textfile1的文件名第一点之前的名称必须与db_name数据库中的表名一致。此数据将导入该表中。
导入的文件:只包含要导入的值。

mysqlimport 命令会调用LOAD DATA导入数据。
可以参照:LOAD DATA

mysql> LOAD DATA INFILE "load_gridCard.sql" INTO TABLE grid_card FIELDS TERMINAT

ED BY ',' LINES TERMINATED BY '\n';

表的类型为MyISAM比InnDB快很多。

mysqlimport的具体格式请参照:
http://linux.cn/home/space-3872-do-thread-id-984.html

在java里调用该命令:

public static String importTableData (String tableName) {       long startTime = System.currentTimeMillis();       StringBuilder sb = new StringBuilder();       Runtime rt = Runtime.getRuntime();       String com = "cmd.exe /c \"E:/Program Files/mysql-5.5.8-win32/bin/mysqlimport\" -u username -ppassword dbName c:/"           + tableName + ".txt --delete -L --fields-terminated-by=,";       try {           Process p = rt.exec(com);           BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));           String line = null;           while((line = br.readLine()) != null) {              sb.append(line);           }           br = new BufferedReader(new InputStreamReader(p.getErrorStream()));           line = null;           while((line = br.readLine()) != null) {              sb.append(line);           }           if (p != null)              p.destroy();        } catch (IOException e) {           // TODO Auto-generated catch block           e.printStackTrace();       }             long endTime = System.currentTimeMillis();             System.out.println("load data to <" + tableName + "> use time : " + (endTime-startTime));             return sb.toString();    }

读书人网 >Mysql

热点推荐