我创建了一个表..这是代码
create table ddate(
ddate date);
之后,我试图像这样插入值
insert into ddate(ddate)value(2010-04-12);
但这给了我一个警告
插入ddate(ddate)value(2010-04-12)受影响的1行,1
警告:1264第1行的'ddate'列超出范围的值0.001
秒
最佳答案
日期文字用单引号括起来,例如字符串文字。
insert into ddate(ddate)value('2010-04-12')
^ ^
在文字周围没有单引号的情况下,MySQL会将其评估为数值,即计算结果:
2010 - 04 - 12
这使得原始语句实质上等同于
insert into ddate(ddate)value( 1994 )
关于mysql - mysql DATE数据类型取不正确的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36959701/