Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Menetapkan Nilai Lalai Lajur Cap Masa kepada Masa Semasa dalam SQLite?

Bagaimana untuk Menetapkan Nilai Lalai Lajur Cap Masa kepada Masa Semasa dalam SQLite?

Patricia Arquette
Patricia Arquetteasal
2025-01-04 11:51:35455semak imbas

How to Set a Timestamp Column's Default Value to the Current Time in SQLite?

Mencipta Lajur Cap Masa dengan Nilai Lalai 'Sekarang'

Anda mungkin mengalami ralat semasa cuba mencipta jadual dengan lajur cap masa yang mempunyai nilai lalai DATETIME('sekarang'). Apabila anda melaksanakan pernyataan berikut:

CREATE TABLE test (
    id INTEGER PRIMARY KEY AUTOINCREMENT, 
    t TIMESTAMP DEFAULT DATETIME('now')
);

anda menerima mesej ralat.

Penyelesaian

Dalam SQLite versi 3.1.0 dan kemudian, anda boleh menggunakan CURRENT_TIMESTAMP dalam klausa DEFAULT. Dengan berbuat demikian, baris baharu akan diberikan perwakilan teks tarikh dan/atau masa UTC semasa.

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

Apabila menggunakan CURRENT_TIMESTAMP:

  • CURRENT_TIME: Format lalai ialah "HH:MM:SS"
  • CURRENT_DATE: Format lalai ialah "YYYY-MM-DD"
  • CURRENT_TIMESTAMP: Format lalai ialah "YYYY-MM-DD HH:MM:SS"

Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Nilai Lalai Lajur Cap Masa kepada Masa Semasa dalam SQLite?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn