Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 我需要设置一列作为表创建的当前日期_Mysql_Mariadb - Fatal编程技术网

Mysql 我需要设置一列作为表创建的当前日期

Mysql 我需要设置一列作为表创建的当前日期,mysql,mariadb,Mysql,Mariadb,我正在尝试创建一个表,其中包含一个列,该列仅包含当前日期,而不包含使用MariaDB基的时间戳。哪个命令将列的内容设置为创建表时的当前日期 MariaDB在10.0.1中引入了DATETIME的默认值 看。它是在有示例的 如果您想默认为仅CURDATE,我认为您在MariaDB和MySQL中运气不佳 SET NEW.datetime\u col=CURDATE的BEFORE INSERT触发器应提供以下功能: CREATE TRIGGER set_date BEFORE INSERT ON t

我正在尝试创建一个表,其中包含一个列,该列仅包含当前日期,而不包含使用MariaDB基的时间戳。哪个命令将列的内容设置为创建表时的当前日期

MariaDB在10.0.1中引入了DATETIME的默认值

看。它是在有示例的

如果您想默认为仅CURDATE,我认为您在MariaDB和MySQL中运气不佳

SET NEW.datetime\u col=CURDATE的BEFORE INSERT触发器应提供以下功能:

CREATE TRIGGER set_date  BEFORE INSERT ON tbl
    FOR EACH ROW SET NEW.datetime_col = CURDATE();

为什么要在表上创建,因为没有数据,如果您需要在代码中添加日期而不是日期时间,那么在添加触发器之前,将业务逻辑保留在业务层而不是存储层


不是你对具体问题的确切答案,但希望是有用的建议,顺便说一句,我不喜欢触发器,所以我有点偏见

这取决于你正在运行的版本!因为这个问题是专门关于MariaDB的,所以我重新开始。据称这是MySQL特有的。