我想上传包含yyyy-mm-ddThh:mm:ss.sssZ
数据的csv文件。
当我在MySQL中设置DATETIME
类型时,
我收到错误代码1292。
MySQL如何成功上传yyyy-mm-ddThh:mm:ss.sssZ
类型?
答案 0 :(得分:0)
首先,您需要将字符串日期转换为有效的日期时间格式(yyyy-mm-dd hh:mm:ss
)。
借助STR_TO_DATE()
和DATE_FORMAT()
功能,您可以将这些日期字符串转换为上述格式。
现在您可以安全地将数据类型更改/修改为timestamp / datetime。
以下是演示:
将字符串日期转换为有效的日期格式:
Create table yourtable(
id INT primary key AUTO_INCREMENT,
start varchar(50)
);
INSERT INTO yourtable(start) VALUES('1901-02-03T05:30:00.000Z');
UPDATE yourtable
SET start = DATE_FORMAT(STR_TO_DATE(start,'%Y-%m-%dT%H:%i:%s.000Z'),'%Y-%m-%d %H:%i:%s');
更改数据类型:
ALTER TABLE yourtable MODIFY COLUMN start datetime;