Rumah >pangkalan data >tutorial mysql >Mengapa Saya Tidak Boleh Tetapkan \'0000-00-00 00:00:00\' sebagai Nilai Lalai untuk Medan Cap Masa?
Pernyataan SQL yang disediakan cuba mencipta jadual dengan medan cap masa (create_date) yang mempunyai nilai lalai '0000-00-00 00:00:00'. Walau bagaimanapun, mod SQL 'NO_ZERO_DATE' melarang penggunaan nilai ini sebagai tarikh yang sah.
Mod ini menguatkuasakan peraturan pengesahan tarikh yang lebih ketat. Ia menghalang pemasukan tarikh dengan nilai sifar, seperti '0000-00-00', yang boleh membawa kepada ketidakkonsistenan dan ralat dalam analisis data.
Kepada selesaikan ralat, anda mempunyai dua pilihan:
Lumpuhkan Mod NO_ZERO_DATE:
<code class="sql">SET SQL_MODE=(SELECT REPLACE(@@SQL_MODE, 'NO_ZERO_DATE', ''));</code>
Ini akan melumpuhkan mod buat sementara waktu, membolehkan anda mencipta jadual dengan nilai lalai '0000-00-00 00:00:00'. Walau bagaimanapun, adalah penting untuk mendayakan semula mod itu selepas itu untuk memastikan integriti data.
Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Tetapkan \'0000-00-00 00:00:00\' sebagai Nilai Lalai untuk Medan Cap Masa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!