11

将以下数据插入 MySQL 时出现错误。我该如何解决?

错误 1292:日期时间值不正确:第 1 行的列“TimeStamp”的“17/07/2013 18:33:55”

SQL 语句:

INSERT INTO `wngtest`.`sitereading` (`idSiteReading`, `TimeStamp`, `SiteLocation`, `Flow`, `Temperature1`, `Temperature2`) VALUES ('1', '17/07/2013 18:33:55', 'WNGSite1', '13.1', '81', '45')

错误 1292:不正确的日期时间值:第 1 行的列“TimeStamp”的“17/07/2013 18:18:53”

SQL 语句:

INSERT INTO `wngtest`.`sitereading` (`idSiteReading`, `TimeStamp`, `SiteLocation`, `Flow`, `Temperature1`, `Temperature2`) VALUES ('2', '17/07/2013 18:18:53', 'WNGSite1', '13', '80', '45')

错误 1292:日期时间值不正确:第 1 行的列“TimeStamp”的“17/07/2013 18:03:54”

SQL 语句:

INSERT INTO `wngtest`.`sitereading` (`idSiteReading`, `TimeStamp`, `SiteLocation`, `Flow`, `Temperature1`, `Temperature2`) VALUES ('3', '17/07/2013 18:03:54', 'WNGSite1', '12.7', '80', '45')

错误 1292:日期时间值不正确:第 1 行的列“TimeStamp”的“17/07/2013 17:48:54”

SQL 语句:

INSERT INTO `wngtest`.`sitereading` (`idSiteReading`, `TimeStamp`, `SiteLocation`, `Flow`, `Temperature1`, `Temperature2`) VALUES ('4', '17/07/2013 17:48:54', 'WNGSite1', '12.7', '80', '45')

错误 1292:不正确的日期时间值:第 1 行的列“TimeStamp”的“17/07/2013 17:33:55”

SQL 语句:

INSERT INTO `wngtest`.`sitereading` (`idSiteReading`, `TimeStamp`, `SiteLocation`, `Flow`, `Temperature1`, `Temperature2`) VALUES ('5', '17/07/2013 17:33:55', 'WNGSite1', '12.8', '80', '45')

错误 1292:日期时间值不正确:第 1 行的列“TimeStamp”的“17/07/2013 17:18:55”

SQL 语句:

INSERT INTO `wngtest`.`sitereading` (`idSiteReading`, `TimeStamp`, `SiteLocation`, `Flow`, `Temperature1`, `Temperature2`) VALUES ('6', '17/07/2013 17:18:55', 'WNGSite1', '12.9', '80', '45')
4

2 回答 2

11

或者,您可以使用以下命令自动将日期字符串重新格式化为 SQL-99 格式STR_TO_DATE()

STR_TO_DATE( '17/07/2013 18:33:55', '%d/%m/%Y %H:%i:%s')

所以 INSERT 语句将是:

INSERT INTO wngtest.sitereading 
(idSiteReading, TimeStamp, SiteLocation, Flow, Temperature1, Temperature2) 
VALUES ('1', 
STR_TO_DATE( '17/07/2013 18:33:55', '%d/%m/%Y %H:%i:%s'), 
'WNGSite1', '13.1', '81', '45');
于 2013-07-25T23:39:40.307 回答
11

在 MySql 中,日期应该以yyyy-mm-dd格式插入

尝试使用以下格式:

2013-07-17 17:18:55

完整插入语句:

INSERT INTO wngtest.sitereading 
(idSiteReading, TimeStamp, SiteLocation, Flow, Temperature1, Temperature2) 
VALUES ('1', '2013-07-17 18:33:55', 'WNGSite1', '13.1', '81', '45');
于 2013-07-25T23:05:58.600 回答