Cara Menyimpan Cap Masa dengan Ketepatan Milisaat dalam MySQL
Apabila berurusan dengan cap masa yang tepat dalam MySQL, ia menjadi penting untuk memahami batasan jenis data cap masa. Secara lalai, MySQL menyimpan cap masa dengan ketepatan kedua. Jika anda perlu menyimpan cap masa dengan ketepatan milisaat, pertimbangan tertentu akan diambil kira.
Menaik taraf MySQL
Pertama sekali, MySQL versi 5.6.4 atau lebih baru diperlukan untuk menyokong pecahan -jenis data kali kedua. Untuk mengesahkan versi anda, gunakan pertanyaan SELECT NOW(3). Jika ralat berlaku, anda mungkin perlu menaik taraf MySQL.
Pengisytiharan Lajur
Untuk mencipta lajur dengan jenis data masa pecahan kedua, gunakan sintaks berikut:
DATETIME(n)
Di mana n mewakili bilangan saat pecahan. Contohnya, DATETIME(3) akan memberikan resolusi milisaat. Begitu juga, TIMESTAMP(n) boleh digunakan, di mana n menentukan resolusi mikrosaat pada cap masa gaya Unix.
Pendapatan Masa Subsaat
Untuk mendapatkan semula masa sistem dengan ketepatan milisaat, gunakan SEKARANG(3):
SELECT NOW(3);
Jika anda mempunyai cap masa diwakili sebagai milisaat sejak zaman Unix (cth., cap waktu JavaScript), tukarkannya menggunakan FROM_UNIXTIME(ms * 0.001).
Versi MySQL Lama
Jika menaik taraf MySQL tidak pilihan, pertimbangkan untuk menggunakan lajur BIGINT atau DOUBLE untuk menyimpan cap masa sebagai nombor. Penukaran kepada mikrosaat masih boleh dicapai menggunakan FROM_UNIXTIME(col * 0.001). Untuk menyimpan masa semasa dalam lajur sedemikian, gunakan UNIX_TIMESTAMP() * 1000.
Kesimpulan
Dengan memahami jenis data masa pecahan kedua dan teknik penukaran, anda boleh menyimpan dan mendapatkan semula cap masa dengan ketepatan milisaat dalam MySQL. Memastikan anda mempunyai versi MySQL yang sesuai dan melaksanakan sintaks pengisytiharan lajur yang betul adalah kunci untuk bekerja dengan cap masa subsaat.
Atas ialah kandungan terperinci Bagaimana untuk Mencapai Cap Masa Ketepatan Milisaat dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!