Rumah > Artikel > pangkalan data > Apakah perbezaan antara jenis data MySQL DATETIME dan TIMESTAMP?
Kedua-dua jenis data menyimpan data dalam format "YYYY-MM-DD HH:MM:SS" dan termasuk tarikh dan masa. Walaupun persamaan ini, ia mempunyai perbezaan berikut -
Di atas adalah beberapa perbezaan utama antara jenis data DATETIME dan TIMESTAMP, contoh berikut akan menunjukkannya -
mysql> Create table test_datetime(time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP); Query OK, 0 rows affected (0.44 sec) mysql> INSERT INTO test_datetime (time) values (CURRENT_TIMESTAMP); Query OK, 1 row affected (0.04 sec) mysql> Select * from test_datetime; +---------------------+ | time | +---------------------+ | 2017-11-14 17:29:03 | +---------------------+ 1 row in set (0.00 sec) mysql> Create table test_timestamp(time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP); Query OK, 0 rows affected (0.64 sec) mysql> INSERT INTO test_timestamp (time) values (CURRENT_TIMESTAMP); Query OK, 1 row affected (0.06 sec) mysql> Select * from test_timestamp; +---------------------+ | time | +---------------------+ | 2017-11-14 17:29:50 | +---------------------+ 1 row in set (0.00 sec)
Kini, dalam pertanyaan berikut, kami telah menukar zon waktu kepada UTC-05:00 dan mempunyai Keputusan untuk jadual jenis data TIMESTAMP juga telah berubah.
mysql> SET @@session.time_zone = '-5:00'; Query OK, 0 rows affected (0.00 sec) mysql> Select * from test_timestamp; +---------------------+ | time | +---------------------+ | 2017-11-14 06:59:50 | +---------------------+ 1 row in set (0.00 sec)
mysql> Select * from test_datetime; +---------------------+ | time | +---------------------+ | 2017-11-14 17:29:03 | +---------------------+ 1 row in set (0.00 sec)
Atas ialah kandungan terperinci Apakah perbezaan antara jenis data MySQL DATETIME dan TIMESTAMP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!