select * into outfile 'e:/six'
fields terminated by ','  enclosed by 'xxxx'
lines terminated by '\n' starting by 'startinfo:  '
from teacher;
这里的enclosed  只能是1个字符么?
我用xxxx, 就提示错误的参数。

解决方案 »

  1.   

    昨天刚看完官方解释,给出了中文解释
    LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name.txt'
        [REPLACE | IGNORE]
        INTO TABLE tbl_name
        [FIELDS
            [TERMINATED BY '\t'] -- 在字段之间写入制表符
            [[OPTIONALLY] ENCLOSED BY '']  --不把字段包含在任何引号字符中。如果是ENCLOSED BY "'" :使用单引号把各个字段括起来;
            [ESCAPED BY '\\' ] --当字段值中出现制表符、新行或‘\’时,使用‘\’进行转义。
        ]
        [LINES
            [STARTING BY '\n'] -- 在行的末端写入新行。
            [TERMINATED BY ''] --不会跳过任何行前缀。
        ]
        [IGNORE number LINES]
        [(col_name_or_user_var,...)]
        [SET col_name = expr,...)]
    SELECT * INTO  outfile 'e:/tmp/t_aty_corp.sql'  FIELDS TERMINATED BY '$' OPTIONALLY ENCLOSED BY "'" ESCAPED BY '\\' LINES STARTING BY '\r\n' TERMINATED BY ''   FROM db_aty.t_aty_corp;
    '1100'$'监狱管理局'$\N$1$\N$'监狱管理局'$1$1$'1100'$'1'$\N$'2011-01-12 00:00:00'$
    '1101'$'第一监狱'$'1100'$2$\N$'第一监狱'$1$2$'1101'$'1'$\N$'2011-01-12 00:00:00'$
    '1102'$'第二监狱'$'1100'$2$\N$'第二监狱'$1$3$'1102'$'1'$\N$'2011-01-12 00:00:00'$
    SELECT * INTO  outfile 'e:/tmp/t_aty_corp.sql'  FIELDS TERMINATED BY '$' OPTIONALLY ENCLOSED BY "^" ESCAPED BY '\\' LINES STARTING BY '\r\n' TERMINATED BY ''   FROM db_aty.t_aty_corp;^1100^$^监狱管理局^$\N$1$\N$^监狱管理局^$1$1$^1100^$^1^$\N$^2011-01-12 00:00:00^$
    ^1101^$^第一监狱^$^1100^$2$\N$^第一监狱^$1$2$^1101^$^1^$\N$^2011-01-12 00:00:00^$
    ^1102^$^第二监狱^$^1100^$2$\N$^第二监狱^$1$3$^1102^$^1^$\N$^2011-01-12 00:00:00^$
      

  2.   

    总之:  OPTIONALLY ENCLOSED BY ''的意思是用某个字符包括字段值。上面的例子已经很清晰了~