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的具体格式请参照:
[url]http://linux.cn/home/space-3872-do-thread-id-984.html[/url]

在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();

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值