【问题标题】:Import csv date changes to 0000-00-00导入 csv 日期更改为 0000-00-00
【发布时间】:2014-05-29 23:43:16
【问题描述】:
LOAD DATA INFILE 'filename.csv' INTO TABLE table_name 
FIELDS TERMINATED BY ',' ENCLOSED BY '"' 
LINES TERMINATED BY '\n' IGNORE 1 LINES 
(Date,col2,col3,col4,col5,col6,col7,@dummy_variable)
Set dummy_variable = 0

加载正常,但日期格式显示为0000-00-00

csv 中的日期格式为dd/mm/yyyy,无法在 csv 文件中更改。

【问题讨论】:

    标签: sql phpmyadmin


    【解决方案1】:

    你需要用str_to_date将日期调整为mysql格式

    类似下面的东西应该可以工作。

    LOAD DATA INFILE 'filename.csv' INTO TABLE table_name 
    FIELDS TERMINATED BY ',' ENCLOSED BY '"' 
    LINES TERMINATED BY '\n' IGNORE 1 LINES 
    (@myDate,col2,col3,col4,col5,col6,col7,@dummy_variable)
    Set dummy_variable = 0, Date = str_to_date(@myDate,'%d/%m/%Y')
    

    【讨论】:

    • #1064 - 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 6 行的 'set Date = str_to_date(Date,'%m/%d/%Y')' 附近使用正确的语法
    • 现在尝试在 1 行设置集合(从内存中进行,因为目前无法轻松访问 mysql 数据库)
    猜你喜欢
    • 2013-01-11
    • 1970-01-01
    • 1970-01-01
    • 2013-06-09
    • 1970-01-01
    • 2011-08-30
    • 1970-01-01
    • 2015-07-19
    • 1970-01-01
    相关资源
    最近更新 更多