Mysql 加载数据本地填充插入空白记录

Mysql 加载数据本地填充插入空白记录,mysql,insert,load-data-infile,blank-line,Mysql,Insert,Load Data Infile,Blank Line,尝试使用以下命令导入文本文件 LOAD DATA LOCAL INFILE '/var/www/colleges.txt' INTO TABLE selections LINES TERMINATED BY '\n' SET unit=null, created=NOW(), type="college"; 表格结构 id INT Autoincremented name Varchar type Varchar unit Varchar crated datetime 但是上面的命

尝试使用以下命令导入文本文件

LOAD DATA LOCAL INFILE '/var/www/colleges.txt' 
INTO TABLE selections LINES TERMINATED BY '\n' 
SET unit=null, created=NOW(), type="college";
表格结构

id   INT Autoincremented
name Varchar
type Varchar
unit Varchar
crated datetime
但是上面的命令正在为
name
字段添加空白值

以下是我的示例文本文件:

American River College
American University
Amherst College

()

您必须在
SET
子句之前,指定直接从
()
中包含的文本文件映射的列列表:

LOAD DATA LOCAL INFILE '/var/www/colleges.txt' 
INTO TABLE selections 
LINES TERMINATED BY '\n' 
-- Here, list columns from the file in ()
(name)
-- Followed by columns for which you set values
SET
  unit=null,
  created=NOW(),
  type="college";
给定您的输入数据,这将在我的开发数据库中进行测试和工作

MariaDB [test]> select * from selections;
+----+------------------------+---------+------+---------------------+
| id | name                   | type    | unit | created             |
+----+------------------------+---------+------+---------------------+
|  1 | American River College | college | NULL | 2015-02-16 08:08:01 |
|  2 | American University    | college | NULL | 2015-02-16 08:08:01 |
|  3 | Amherst College        | college | NULL | 2015-02-16 08:08:01 |
+----+------------------------+---------+------+---------------------+
文档中有点模棱两可:

...snip...
[LINES
        [STARTING BY 'string']
        [TERMINATED BY 'string']
    ]
    [IGNORE number LINES]
    -- HERE....
    [(col_name_or_user_var,...)]
    [SET col_name = expr,...]