Saya tidak akan menggunakan INT
atau TIMESTAMP
untuk menyimpan nilai datetime Anda. Ada "Tahun-2038-Masalah"
! Anda dapat menggunakan DATETIME
dan simpan waktu kencan Anda untuk waktu yang lama.
Dengan TIMESTAMP
atau jenis kolom numerik, Anda hanya dapat menyimpan rentang tahun dari 1970 hingga 2038. Dengan DATETIME
ketik Anda dapat menyimpan tanggal dengan tahun dari 1000 hingga 9999.
Itu bukan disarankan untuk menggunakan tipe kolom numerik (INT
) untuk menyimpan informasi datetime. MySQL (dan sistem lainnya juga) menyediakan banyak fungsi untuk menangani informasi datetime. Fungsi-fungsi ini lebih cepat dan lebih dioptimalkan daripada fungsi atau perhitungan khusus:https://dev.mysql.com/doc/refman/5.7/en/date-and-time-functions.html
Untuk mengonversi zona waktu nilai tersimpan Anda ke zona waktu klien, Anda dapat menggunakan CONVERT_TZ
. Dalam hal ini Anda perlu mengetahui zona waktu server dan zona waktu klien Anda. Untuk mendapatkan zona waktu server, Anda dapat melihat beberapa kemungkinan di pertanyaan ini
.