在MySQL中,如何在将NULL值插入其他列时自动插入日期和时间?

在MySQL中,如果将其他列中的NULL值声明为DEFAULT CURRENT_TIMESTAMP,则可以在该列中自动插入当前日期和时间。在这种情况下,我们无法声明要在其中插入NULL值的NOT NULL列。

mysql> Create Table Testing1(Name Varchar(20),
RegStudent TIMESTAMP DEFAULT CURRENT_TIMESTAMP);

上面的查询将创建一个表“ Testing1”,其中包含名为“名称”的列(未声明为“ NOT NULL”),以及其他名为“ RegDate”的列声明为DEFAULT CURRENT_TIMESTAMP。现在,在插入NULL值Name列时,当前日期和时间将自动插入到另一列中。

mysql> Insert into Testing1(Name) Values(NULL);

mysql> Insert into Testing1(Name) Values(NULL);

mysql> Select * from Testing1;
+------+---------------------+
| Name | RegStudent |
+------+---------------------+
| NULL | 2017-10-29 04:46:59 |
| NULL | 2017-10-29 04:47:02 |
+------+---------------------+
2 rows in set (0.05 sec)

从以上查询中,我们可以看到,在“名称”中插入NULL值时,日期和时间也会自动插入。

猜你喜欢