MySQL创建表中的默认日期值不起作用

时间:2017-02-16 06:04:26

标签: mysql sql date default-value create-table

我有以下create table语句(在MySQL中):

CREATE TABLE bugs (id INT, open_date DATE, 
close_date DATE DEFAULT STR_TO_DATE('9999-99-99', '%Y-%m-%d'), severity INT); 

不幸的是,由于默认日期值,它无效并返回错误。使用create table语句时,将任何其他方法设置为日期的特定默认值?提前谢谢。

2 个答案:

答案 0 :(得分:0)

试试这个

CREATE TABLE bugs (id INT, open_date DATE, 
close_date DATE DEFAULT '9999-99-99', severity INT); 

有关更多信息,请使用以下链接: -

How do you set a default value for a MySQL Datetime column?

答案 1 :(得分:0)

MySQL的默认DATE字段格式为YYYY-MM-DD。支持的范围是1000-01-01到9999-12-31。 但你不能只在那里插入日期,你需要时间戳在这里

CREATE TABLE bugs
      (id INT, open_date DATE, 
       close_date TIMESTAMP DEFAULT '2016-11-30 22:30:00',
       severity INT
      );

Fiddle here

由于MySQL 5.6 DATE应该使用默认值NOW()

有关Mysql日期read this

的更多信息