SQL设置日期戳

0 mysql sql phpmyadmin

我现在在phpmyadmin,我正在尝试设置一个字段来标记插入数据时的当前日期.

现在我尝试将其设置为DATETIME键入,但这包括时间.我只想要约会.我也尝试将其设置DATETIME为默认值GETDATE()并保存,但它引发了一个错误:

#1067 - Invalid default value for 'upload_date' 
Run Code Online (Sandbox Code Playgroud)

有人知道怎么做吗?

Joã*_*lva 5

不幸的是,你不能将DEFAULT值设置为函数,它需要是一个常量值.一个例外CURRENT_TIMESTAMP,尽管它还包括以下time部分:

column_name TIMESTAMP DEFAULT CURRENT_TIMESTAMP
Run Code Online (Sandbox Code Playgroud)

但是,您可以使用a TRIGGER来设置列的默认值.例如:

CREATE TRIGGER trigger_name BEFORE INSERT ON your_table
  FOR EACH ROW SET NEW.date_column = DATE(NOW());
Run Code Online (Sandbox Code Playgroud)

另外,DATE()用来截断TIME部分NOW().