?1 表tt的格式:
?CREATE TABLE `tt` (
? `ind` int NOT NULL auto_increment,
? `name` char(100) default NULL,
? PRIMARY KEY? (`ind`)
?)
2 文件d.txt的內(nèi)容示例:
?1,a
?2,b
?3,c
?3 導(dǎo)入命令:
?mysql> load data infile 'd.txt' into table tt
??? -> fields terminated by','
??? -> lines terminated by'\r\n'
?注意的地方:
?1)、文件可以使用絕對(duì)路徑如'c:/d.txt',否則請(qǐng)將文件放在數(shù)據(jù)庫(kù)根目錄中
?2)、因?yàn)樽侄沃g用了逗號(hào)隔開(kāi),所以必須fields terminated by',',否則導(dǎo)入失敗
?3)、因?yàn)閃insows中行以“\r\n”隔開(kāi),所以必須lines terminated by'\r\n',
?如果不設(shè)置這個(gè)參數(shù),也可導(dǎo)入成功,但是會(huì)多導(dǎo)入一個(gè)“\r”控制字符,可能在可視化
?MySQL工具中看不出字段異樣,但是在MySQL命令行中顯示會(huì)明顯混亂。
?4)、如果表tt非空,且文件中的ind值在表中有重復(fù),會(huì)提示錯(cuò)誤,并導(dǎo)入失敗。
?只導(dǎo)入name字段,文件d.txt的內(nèi)容:
?a
?b
?c
?mysql> load data infile 'd.txt' into table tt
??? -> lines terminated by'\r\n'
??? -> (name);
?load data 命令還支持更復(fù)雜的文本格式、文件編碼等,可參考官方文檔。
?5 導(dǎo)出到數(shù)據(jù)到windows文本文件時(shí),為了方便查看,也需要相同的設(shè)置
?mysql> select * from tt into outfile 'd.txt'
??? -> fields terminated by','
??? -> lines terminated by'\r\n'