Beri perintah SHOW CREATE TABLE whatever
Kemudian lihat definisi tabel .
Mungkin memiliki garis seperti ini
logtime TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
di dalamnya. DEFAULT CURRENT_TIMESTAMP
berarti bahwa setiap INSERT
tanpa pengaturan cap waktu yang eksplisit menggunakan waktu saat ini. Demikian juga, ON UPDATE CURRENT_TIMESTAMP
berarti bahwa pembaruan apa pun tanpa stempel waktu eksplisit menghasilkan pembaruan ke nilai stempel waktu saat ini.
Anda dapat mengontrol perilaku default ini saat membuat tabel Anda.
Atau, jika kolom stempel waktu tidak dibuat dengan benar sejak awal, Anda dapat mengubahnya.
ALTER TABLE whatevertable
CHANGE whatevercolumn
whatevercolumn TIMESTAMP NOT NULL
DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP;
Ini akan menyebabkan operasi INSERT dan UPDATE pada tabel secara otomatis memperbarui kolom stempel waktu Anda. Jika Anda ingin memperbarui whatevertable
tanpa mengubah stempel waktu, yaitu,
maka Anda perlu mengeluarkan pembaruan semacam ini.
UPDATE whatevertable
SET something = 'newvalue',
whatevercolumn = whatevercolumn
WHERE someindex = 'indexvalue'
Ini berfungsi dengan TIMESTAMP
dan DATETIME
kolom. (Sebelum MySQL versi 5.6.5 hanya bekerja dengan TIMESTAMP
s) Saat Anda menggunakan TIMESTAMP
s, zona waktu diperhitungkan:pada mesin server yang dikonfigurasi dengan benar, nilai-nilai tersebut selalu disimpan dalam UTC dan diterjemahkan ke waktu lokal setelah pengambilan.