ホームページ >データベース >mysql チュートリアル >SQLiteでデフォルトの「Now」値を持つタイムスタンプ列を作成する方法は?

SQLiteでデフォルトの「Now」値を持つタイムスタンプ列を作成する方法は?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-05 14:07:44450ブラウズ

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

デフォルトの「now」値を使用したタイムスタンプ列の作成

現在の日付と時刻が自動的に設定されるタイムスタンプ列を含むテーブルを作成すると、次のことが可能になります。 SQLite の DEFAULT を使用して実現されます句。

ジレンマ:

問題で説明されているように、デフォルト値 DATETIME('now') のタイムスタンプ列を持つテーブルを作成しようとすると、次のような結果になります。エラーが発生しました。

解決策: を使用するCURRENT_TIMESTAMP

回答で提案されているように、SQLite バージョン 3.1.0 以降では、タイムスタンプ列のデフォルト値として使用できる CURRENT_TIMESTAMP キーワードが提供されています。このキーワードは、現在の UTC 日付と時刻を表します。

目的のテーブルを作成するための修正された SQL ステートメントは次のようになります。

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

この構文により、テスト テーブルに挿入されるすべての新しい行が追加の更新や計算を必要とせずに、t 列に現在のタイムスタンプが自動的に入力されます。

以上がSQLiteでデフォルトの「Now」値を持つタイムスタンプ列を作成する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。