2016-02-13 86 views
0

这是我的MySQL代码:MySQL的插入日期

UPDATE student SET birthDate = STR_TO_DATE(birthDate, '%M %d,%Y'); 

INSERT INTO student (`birthDate`) VALUES ('June 10,1997'); 

但它显示一个错误:

Error code 1292, SQL state 22001: Data truncation: Incorrect date value: 'June 10,1997' for column 'birthDate' at row 1

+0

日期不以该格式存储在数据库中。它应该是yyyy-mm-dd –

回答

1

SQL采用了非常特殊的日期格式,这是“YYYY-MM -DD”。

一旦它以该格式(例如,无需STR_TO_DATE),您就可以将其插入为文本。

示例:'1997-06-10'

1

如果要插入日期到列,使用正确的日期语法:

INSERT INTO student (`birthDate`) 
    VALUES ('1997-06-10'); 
+0

是的,但我没有更新列格式到这STR_TO_DATE(birthDate,'%M%d,%Y'),所以我可以插入或改变列'1997年6月10日“? – JustineP

+0

@JustineP。 。 。你似乎对某事感到困惑。 'UPDATE'在表格中插入一个日期值。它不会影响存储在表格中的日期的格式。 –

0
INSERT INTO student SET birthDate='1997-06-10'