Mysql 使用STR_TO_DATE with insert

Mysql 使用STR_TO_DATE with insert,mysql,date,datetime,insert,Mysql,Date,Datetime,Insert,我的数据库中有一个具有以下结构的测试表:id(PK,Auto_Increment)、dataI(datetime)、dataF(datetime) 使用MySQL Workbench,当我尝试插入记录时,我遇到了问题。我尝试了不同的方法使用stru-to-date来修复它 INSERT INTO test(dataI, dataF) VALUES(STR_TO_DATE('2020-01-10 18:00:00', '%YYYY-%MM-%DD hh:mm:ss'), STR_TO_DATE(

我的数据库中有一个具有以下结构的测试表:id(PK,Auto_Increment)、dataI(datetime)、dataF(datetime)

使用MySQL Workbench,当我尝试插入记录时,我遇到了问题。我尝试了不同的方法使用stru-to-date来修复它

INSERT INTO test(dataI, dataF) 
VALUES(STR_TO_DATE('2020-01-10 18:00:00', '%YYYY-%MM-%DD hh:mm:ss'), STR_TO_DATE('2020-01-10 24:00:00', '%YYYY-%MM-%DD hh:mm:ss'))
错误代码1411:函数str_to_date的日期时间值不正确


您的格式字符串错误。例如,
%YYYY
应该是
%Y
<代码>%YYYY表示一个4位数的年份,后跟文字字符串
YYY

格式字符串应为
%Y-%m-%d%H:%i:%s


请参阅格式指令的完整列表。

您的格式字符串错误。例如,
%YYYY
应该是
%Y
<代码>%YYYY表示一个4位数的年份,后跟文字字符串
YYY

格式字符串应为
%Y-%m-%d%H:%i:%s


请参阅格式指令的完整列表。

'24:00:00'
不是日期时间文字的有效时间组件


格式规范必须与字符串匹配。有效的说明符列表记录在
DATE\u FORMAT
函数下,该函数在同一页面上的
STR\u TO\u DATE
函数的文档下引用

参考:

第一个值的格式可以指定为
'%Y-%m-%d%h%h:%i:%s'

或者更简洁地说是
'%Y-%m-%d%T'

当日期文本以默认格式提供时,我们不需要使用
STR_to_DATE
函数;MySQL将隐式地转换为DATETIME


我们可以这样做:

... VALUES ('2020-01-10 18:00:00','2020-01-11 00:00:00')
或者,如果我们想使用
STR_to_DATE
,我们可以指定与字符串匹配的格式

... VALUES( STR_TO_DATE('2020-01-10 18:00:00','%Y-%m-%d %T')
          , STR_TO_DATE('2020-01-11 00:00:00','%Y-%m-%d %T')
          )
                                              ^^^^^^^^^^^^                                       

'24:00:00'
不是日期时间文本的有效时间组件


格式规范必须与字符串匹配。有效的说明符列表记录在
DATE\u FORMAT
函数下,该函数在同一页面上的
STR\u TO\u DATE
函数的文档下引用

参考:

第一个值的格式可以指定为
'%Y-%m-%d%h%h:%i:%s'

或者更简洁地说是
'%Y-%m-%d%T'

当日期文本以默认格式提供时,我们不需要使用
STR_to_DATE
函数;MySQL将隐式地转换为DATETIME


我们可以这样做:

... VALUES ('2020-01-10 18:00:00','2020-01-11 00:00:00')
或者,如果我们想使用
STR_to_DATE
,我们可以指定与字符串匹配的格式

... VALUES( STR_TO_DATE('2020-01-10 18:00:00','%Y-%m-%d %T')
          , STR_TO_DATE('2020-01-11 00:00:00','%Y-%m-%d %T')
          )
                                              ^^^^^^^^^^^^                                       

查看日期格式此处查看日期格式此处非常感谢您的解释。现在可以了。非常感谢你的解释。现在它工作得很好。