2016-02-13 130 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'