Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
所有记录显示为';0000-00-00';,将日期从文件加载到mysql_Mysql - Fatal编程技术网

所有记录显示为';0000-00-00';,将日期从文件加载到mysql

所有记录显示为';0000-00-00';,将日期从文件加载到mysql,mysql,Mysql,我有一个CSV文件,其中一列包含下一个数据: "2015-01-01", ... ... "2015-03-27" 我这样创建了mysql表: CREATE TABLE `my_tbl` ( `id` int(11) NOT NULL AUTO_INCREMENT, `date` DATE NOT NULL, PRIMARY KEY (`id`) ); 我正在尝试使用下一个命令插入数据: LOAD DATA INFILE '/tmp/myFile.csv' INTO TABLE

我有一个CSV文件,其中一列包含下一个数据:

"2015-01-01",
...
...
"2015-03-27"
我这样创建了mysql表:

CREATE TABLE `my_tbl` (   `id` int(11) NOT NULL AUTO_INCREMENT,   `date` DATE NOT NULL,   PRIMARY KEY (`id`) );
我正在尝试使用下一个命令插入数据:

LOAD DATA INFILE '/tmp/myFile.csv' INTO TABLE my_tbl FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' (@col1) set date=@col1;
问题:检查我的tbl时,我看到所有记录都是“0000-00-00”

  • 我做错了什么?我该如何修复它
  • 我是否按照应该的方式定义了表(例如,也许最好定义时间戳等)
  • 找出区别:

    [..snip..] BY '\n' (@col1) set date=@co1;
                           ^---------------^
    

    似乎我应该添加由“\”括起的字段。。因此加载查询应该是这样的:

    LOAD DATA INFILE '/tmp/myFile.csv' INTO TABLE my_tbl FIELDS ENCLOSED BY  '\"'  LINES TERMINATED BY '\n'   (@col1) set date=@col1;
    

    Tnx for user@Marc B for the hint

    Tnx-Marc。这是我的问题中的一个输入错误。问题仍然是一样的。@MZtry
    由''
    封装的字段。如果您不告诉mysql,
    不是数据的一部分,它将尝试将
    解析为字段值的一部分,并删除整个日期值-
    ”不是mysql日期字符串的一部分。