为 MySQL 日期时间列创建默认值
在 MySQL 中,可以使用 TIMESTAMP 来为日期时间列设置默认值数据类型。虽然 SQL Server 使用 getdate() 来实现此目的,但 MySQL 没有针对 DATETIME 字段的等效函数。
但是,您可以利用 TIMESTAMP 数据类型创建一个默认值,自动使用当前值填充该字段行插入时的时间戳。操作方法如下:
mysql> create table test (str varchar(32), ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP); Query OK, 0 rows affected (0.00 sec)
在此示例中,测试表中的 ts 列定义为 TIMESTAMP 字段,并指定默认值 CURRENT_TIMESTAMP。当在表中插入新行而没有显式指定 ts 的值时,默认值将自动填充为当前系统时间。
mysql> insert into test (str) values ("demo"); Query OK, 1 row affected (0.00 sec)
mysql> select * from test; +------+---------------------+ | str | ts | +------+---------------------+ | demo | 2023-03-08 15:23:45 | +------+---------------------+ 1 row in set (0.00 sec)
如您所见,ts 列插入新行时,测试表中的内容已自动填充为当前时间戳。
重要注意:
对于 DATETIME 列中的默认值,MySQL 5.6.5 及更高版本现在支持 CURRENT_TIMESTAMP 函数。然而,在早期版本中,此功能仅适用于 TIMESTAMP 列。
以上是如何为 MySQL 日期时间列设置默认值?的详细内容。更多信息请关注PHP中文网其他相关文章!