Rumah >pangkalan data >tutorial mysql >DATETIME Nilai Lalai: NOW() atau '0000-00-00 00:00:00'?

DATETIME Nilai Lalai: NOW() atau '0000-00-00 00:00:00'?

Patricia Arquette
Patricia Arquetteasal
2025-01-03 22:24:40674semak imbas

DATETIME Default Value: NOW() or '0000-00-00 00:00:00'?

Nilai Lalai untuk Datetime Datatype: NOW() atau '0000-00-00 00:00:00'?

Untuk menetapkan nilai lalai untuk jenis data tarikh, anda boleh mempertimbangkan pilihan berikut:

Semasa Nilai Lalai: '0000-00-00 00:00:00'

  • Ini ialah nilai lalai yang digunakan oleh MySQL untuk lajur datetime tanpa lalai eksplisit.
  • Anda boleh mengubah suai jadual sedia ada untuk menetapkan nilai ini dengan SQL berikut pernyataan:
ALTER TABLE users MODIFY lastVisitDate datetime DEFAULT '0000-00-00 00:00:00';

Nilai Lalai Dinamik: NOW()

  • Dari MySQL versi 5.6.5 dan seterusnya, anda boleh menggunakan lalai dinamik nilai untuk menetapkan tarikh masa kepada semasa masa:
CREATE TABLE users (
    registerDate datetime DEFAULT CURRENT_TIMESTAMP
);
  • Anda juga boleh mengubah suai jadual sedia ada dengan lajur DATETIME untuk menggunakan NOW() sebagai lalai:
ALTER TABLE users MODIFY registerDate datetime DEFAULT CURRENT_TIMESTAMP;

Nota: Sebelum MySQL 5.6.5, nilai lalai dinamik untuk datetime tidak disokong. Anda boleh menggunakan jenis data TIMESTAMP sebaliknya, tetapi ia hanya membenarkan satu lajur cap masa yang dikemas kini secara automatik bagi setiap jadual.

Atas ialah kandungan terperinci DATETIME Nilai Lalai: NOW() atau '0000-00-00 00:00:00'?. 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