MySQL NOW() 函数如何在插入记录时自动包含当前日期和时间?

如题所述

MySQL的NOW()函数是数据库查询中一个实用的工具,它返回的是当前的日期和时间。这个内置函数在处理实时数据时非常有用,无需手动输入,可以直接获取系统当前的精确时间。下面,让我们通过实例来详细了解其用法。

首先,使用NOW()函数的SQL语句非常直观。例如,当我们执行SELECT NOW(),CURDATE(),CURTIME()时,返回的结果包括当前的日期和时间,如下所示:

SELECT NOW(),CURDATE(),CURTIME();

结果如下:

NOW()CURDATE()CURTIME()2008-11-11 12:45:342008-11-1112:45:34

在创建数据库表时,NOW()也有其独特的作用。如在创建一个名为Orders的表时,我们为OrderDate列设置了默认值为NOW(),这意味着每当新记录插入时,OrderDate将自动填充当前的日期和时间。下面的SQL语句展示了这个过程:

CREATE TABLE Orders(OrderId int NOT NULL,ProductName varchar(50) NOT NULL,OrderDate datetime NOT NULL DEFAULT NOW(),PRIMARY KEY (OrderId));

现在,当我们插入新的订单(如Jarlsberg Cheese)时,OrderDate列会自动包含当前日期和时间,如下所示:

INSERT INTO Orders (ProductName) VALUES (Jarlsberg Cheese);

Orders表将显示如下:

OrderIdProductNameOrderDate1Jarlsberg Cheese2008-11-11 13:23:44.657

总之,MySQL的NOW()函数使得在记录时间戳时无需额外操作,大大提高了数据录入的效率。
温馨提示:答案为网友推荐,仅供参考