直接上例子:
导出:
select * from user_b limit 10 into outfile "c:/data.txt" FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n';
导入:
LOAD DATA INFILE 'c:/data.txt' [replace] INTO TABLE user FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n';
针对load data参数说明如下:
load data [low_priority] [local] infile 'file_name txt' [replace | ignore] into table tbl_name [CHARACTER SET charset_name] [fields [terminated by't'] [OPTIONALLY] enclosed by ''] [escaped by'\' ]] [lines [STARTING BY 'string'] [terminated by'n']] [ignore number lines] [(col_name, )]
low_priority:MySQL将会等到没有其他人读这个表的时候,才把插入数据。可以使用如下的命令:
local:指定local关键词,则表明从客户主机读文件。如果local没指定,文件必须位于服务器上
replace和ignore:控制对现有的唯一键记录的重复的处理。如果你指定replace,新行将代替有相同的唯一键值的现有行。如果你指定ignore,跳过有唯一键的现有行的重复行的输入。如果你不指定任何一个选项,当找到重复键时,出现一个错误,并且文本文件的余下部分被忽略。
terminated by分隔符:意思是以什么字符作为分隔符
enclosed by:字段括起字符
escaped by:转义字符
terminated by:描述字段的分隔符,默认情况下是tab字符(\t)
enclosed by:描述的是字段的括起字符。
escaped by:描述的转义字符。默认的是反斜杠(backslash:\ )
IGNORE number LINES:可被用来忽略在文件开始的一个列名字的头