首页 >数据库 >mysql教程 >如何在 SQLite 中创建默认值为'Now”的时间戳列?

如何在 SQLite 中创建默认值为'Now”的时间戳列?

Mary-Kate Olsen
Mary-Kate Olsen原创
2025-01-04 19:10:41346浏览

How to Create a Timestamp Column with a Default Value of 'Now' in SQLite?

使用默认值“now”创建时间戳列

在此场景中,目标是创建一个带有时间戳列的表,该列会自动默认为插入时的当前日期时间。以前,尝试使用 DATETIME('now') 定义此类列会导致错误。

解决方案:使用 CURRENT_TIMESTAMP

当前,SQLite 版本 3.1.0 及更高版本通过在 DEFAULT 子句中使用 CURRENT_TIMESTAMP 提供了此问题的解决方案。其实现方式如下:

CREATE TABLE test (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    t TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

此修改解决了之前的问题,允许创建时间戳列,每当将新行插入表中时,该时间戳列就会无缝更新到当前日期时间。它的默认值确保自动生成时间戳,而不需要显式分配。

以上是如何在 SQLite 中创建默认值为'Now”的时间戳列?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn