语法:load data [low_priority | concurrent] [local] infile 'file_name' [replace | ignore] into table tbl_name [character set charset_name] [fields [terminated by 'string'] [[optionally] enclosed by 'char'] [escaped by 'char'] ] [lines [starting by 'string'] [terminated by 'string'] ] [ignore number lines] [(col_name_or_user_var,...)] [set col_name = expr,...]
导入表中的某一列数据数据格式:北京上海深圳广州长沙郑州合肥西安南昌南京杭州成都
sql代码:load data local infile 'c:\\users\\xxx\\desktop\\code.txt'into table sys_sensitiveword_t(cityname);
导入整个表数据创建stu表:create table stu_other(id int auto_increment primary key,stu_name varchar(50),age int);
然后创建一个文本文件“stu.txt”,每行包含一个记录,放在c盘的根目录下。默认的字段分隔符是(tab),你可以更改,下面说明。并且以create table语句中列出的列次序给出。对于丢失的值(例如未知的性别,或仍然活着的动物的死亡日期),你可以使用null值。为了在你的文本文件中表示这些内容,使用/n(反斜线,字母n)。 如stu.txt的内容如下:100001 flb100001 100001100002 flb100002 100002100003 flb100003 100003100004 flb100004 100004100005 flb100005 100005100006 flb100006 100006100007 flb100007 100007100008 flb100008 100008
这里我用的是table分开。 要想将文本文件“stu.txt”装载到stu表中,使用这个命令:load data local infile 'c://stu.txt' into table stu;
这里没有指定字段分隔符,以及行的终止符,默认情况下是这样的:字段分隔符:fields terminated by '/t' enclosed by '' escaped by '//'
其中的'/t'就表示是字段分隔符为tab键,如果不想更改,那就把fields terminated by '/t'中的'/t'改在你自己的分隔符。将执行命令改成这样:
load data local infile 'c:/stu.txt' into table stu fields terminated by ‘ ‘;
这里我用的是空格。行终止符:lines terminated by '/n' starting by ''
请注意如果用windows中的编辑器(使用/r/n做为行的结束符)创建文件,应使用:load data local infile 'c://stu.txt' into table stu lines terminated by '/r/n';
(在运行os x的apple机上,应使用行结束符'/r'。) 如果你愿意,你能明确地在load data语句中指出列值的分隔符和行尾标记,但是默认标记是定位符和换行符。这对读入文件“stu.txt”的语句已经足够。导出表数据select * from stu_t into outfile c://stu_t.txt;
不过,没有按记录自动分行这样才能够换行:select * from stu_t into outfile c://stu_t.txt lines terminated by '/r/n';