下面是一个示例的SQL语句,用于创建一个包含默认时间字段的数据表:
CREATE TABLE `user` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(50) NOT NULL, `age` INT(11) NOT NULL, `add_time` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (`id`) ) ENGINE=INNODB DEFAULT CHARSET=utf8mb4;
在这个示例中,大家定义了一个名为`add_time`的时间类型字段,并使用`DEFAULT CURRENT_TIMESTAMP`设置了默认值为当前的时间戳。
当大家向这个数据表中插入一条新的记录时,可以不传入`add_time`字段的值,数据库将会自动使用当前时间戳作为该字段的值:
INSERT INTO `user` (`name`, `age`) VALUES ('张三', 20);
在实际项目中,如果大家希望用户可以自行指定`add_time`字段的值,可以将默认值设置为`NULL`,或者在应用程序中动态生成时间戳,并赋值给该字段。