我的日期格式为:Apr 25, 2017 11:48:45 AM
,我已使用 STR_TO_DATE('Apr 25, 2017 11:48:上午 45 点','%b %d,%Y %h:%i:%s')
。现在以下是我的表格的形状,其中包含 time
作为格式化日期:
我想将此表插入到另一个表中:
表格:
CREATE TABLE `locations` (
`uid` int(11) NOT NULL,
`latitude` varchar(255) DEFAULT NULL,
`longitude` varchar(255) DEFAULT NULL,
`time` datetime NOT NULL,
`created_at` datetime NOT NULL,
KEY `locations_uid_IDX` (`uid`,`time`) USING BTREE,
KEY `locations_time_IDX` (`time`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8
插入:
INSERT INTO Transformation_Tables.locations
SELECT
uid,
latitude,
longitude,
STR_TO_DATE(time, '%b %d, %Y %h:%i:%s') as time,
STR_TO_DATE(created_at, '%Y-%m-%d %H:%i:%s') as created_at
from creditfix.locations;
在插入期间我遇到此错误:
SQL Error [1292] [22001]: Data truncation: Truncated incorrect datetime value: 'Apr 25, 2017 11:48:45 AM'
com.mysql.jdbc.MysqlDataTruncation: Data truncation: Truncated incorrect datetime value: 'Apr 25, 2017 11:48:45 AM' . Please help me out.
最佳答案
问题
STR_TO_DATE(time, '%b %d, %Y %h:%i:%s') as time
解决方案
STR_TO_DATE('2017 年 5 月 12 日下午 3:05:19', '%b %d, %Y %l:%i:%s %p') 时间
'2017-05-12 15:05:19'
关于mysql - 如何修复截断的错误日期时间值 : 'Apr 25, 2017 11:48:45 AM' error during insert?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44300624/