2012-07-25 55 views

回答

20

在MySQL接受日期類型列YMD格式的日期,你需要STR_TO_DATE功能將日期轉換成插入YYYY-MM-DD格式在下列方式:

INSERT INTO table_name(today) 
VALUES(STR_TO_DATE('07-25-2012','%m-%d-%y')); 

與之相似,如果你想選擇比MySQL格式等不同格式的日期,你應該嘗試DATE_FORMAT功能

SELECT DATE_FORMAT(today, '%m-%d-%y') from table_name; 
1

一般MySQL使用此日期格式 'YMD H:I:S'

+1

不,這是針對日期時間類型的。對於日期類型,默認爲Y-m-d – 2017-06-07 17:20:57

1

你需要轉換日期爲YYYY-MM-DD,以便使用默認配置將其作爲MySQL日期插入。要做到這一點

一種方法是STR_TO_DATE()

insert into your_table (...) 
values (...,str_to_date('07-25-2012','%m-%d-%Y'),...); 
1

這是date format

The DATE type is used for values with a date part but no time part. MySQL retrieves and displays DATE values in 'YYYY-MM-DD' format. The supported range is '1000-01-01' to '9999-12-31'.

爲什麼你插入'07 -25-2012' 格式的MySQL時,格式爲 '2012-07-25'?其實你會得到這個錯誤,如果sql_modetraditional/strict mode否則它只是輸入0000-00-00並給出警告:1265 - Data truncated for column 'col1' at row 1

0

您需要使用YYYY-MM-DD格式在mysql中插入日期

+0

格式實際上是YYYY-MM-DD – 2017-10-26 00:12:47