如果我们在表中插入空值,并将列设置为 TIMESTAMP CURRENT_TIMESTAMP 类型,会发生什么情况?

mysqlmysqli database更新于 2024/1/30 15:25:00

如果我们在 INSERT 语句中不插入任何内容,那么对于时间戳类型,它将插入当前日期时间。让我们首先创建一个表 −

mysql> create table DemoTable
   -> (
   -> UserId int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> UserLoginDate timestamp default current_timestamp
   -> );
Query OK, 0 rows affected (0.61 sec)

使用 insert 命令在表中插入一些记录 −

mysql> insert into DemoTable values();
Query OK, 1 row affected (0.15 sec)
mysql> insert into DemoTable values();
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values();
Query OK, 1 row affected (0.08 sec)
mysql> insert into DemoTable(UserId) values(null);
Query OK, 1 row affected (0.13 sec)

使用 select 语句显示表中的所有记录 −

mysql> select *from DemoTable;

这将产生以下输出 −

+--------+---------------------+
| UserId | UserLoginDate       |
+--------+---------------------+
|      1 | 2019-11-03 12:55:44 |
|      2 | 2019-11-03 12:55:45 |
|      3 | 2019-11-03 12:55:46 |
|      4 | 2019-11-03 12:56:06 |
+--------+---------------------+
4 rows in set (0.00 sec)

相关文章