读书人

关于LOAD DATA LOCAL INFILE,该怎么解

发布时间: 2012-02-28 13:06:35 作者: rapoo

关于LOAD DATA LOCAL INFILE
有这样一个文件users.txt

HTML code
user001中文    e10adc3949ba59abbe56e057f20f883e    NULLuser002    e10adc3949ba59abbe56e057f20f883e    NULLuser003    e10adc3949ba59abbe56e057f20f883e    NULLuser004    e10adc3949ba59abbe56e057f20f883e    NULLuser005    e10adc3949ba59abbe56e057f20f883e    NULLuser006    e10adc3949ba59abbe56e057f20f883e    NULLuser007    e10adc3949ba59abbe56e057f20f883e    NULLuser008    e10adc3949ba59abbe56e057f20f883e    NULLuser009    e10adc3949ba59abbe56e057f20f883e    NULLuser010    e10adc3949ba59abbe56e057f20f883e    NULLuser008    e10adc3949ba59abbe56e057f20f883e    NULLuser009    e10adc3949ba59abbe56e057f20f883e    NULLuser010    e10adc3949ba59abbe56e057f20f883e    NULL

用下面的语句导入到users表中,
SQL code
LOAD DATA LOCAL INFILE "D:/users.txt"                    INTO TABLE users                     FIELDS TERMINATED BY "\t" ENCLOSED BY ""                                    LINES TERMINATED BY "\n" STARTING BY "" (username, password, avatar)


但是有个问题,被导入的数据,其中NULL值,被做为字符串"NULL"导了进去,
有没有办法把NULL这一列做为mysql的NULL,而不是字符串null导入?

[解决办法]
SQL code
LOAD DATA LOCAL INFILE "D:/users.txt"    INTO TABLE users     FIELDS TERMINATED BY "\t" ENCLOSED BY ""                    LINES TERMINATED BY "\n" STARTING BY ""     (username, password, @x)    set avatar=if(@x='NULL',null,@x); 

读书人网 >Mysql

热点推荐