Rumah > Artikel > pangkalan data > Mengapa Saya Mendapat Ralat \"Field \'display_name\' Tidak Mempunyai Nilai Lalai\" Semasa Perintah INSERT MySQL?
Ralat MySql: Menyelesaikan Isu Nilai Lalai Medan untuk Perintah INSERT
Apabila menghadapi ralat seperti "Field 'display_name' tidak mempunyai nilai lalai" apabila mencuba arahan INSERT dalam MySql, adalah penting untuk memahami punca asas. Ralat ini biasanya berlaku apabila medan dalam jadual sasaran kekurangan nilai lalai, mengakibatkan pelanggaran peraturan SQL untuk memasukkan data.
Setelah berhijrah dari MAMP ke persediaan Apache, MySql dan PHP asli, anda mungkin menghadapi ini isu jika MySql ditetapkan kepada mod STRICT. Dalam mod STRICT, pelayan pangkalan data menguatkuasakan peraturan yang lebih ketat, termasuk mewajibkan nilai lalai untuk semua medan bukan NULL semasa operasi sisipan.
Untuk menyelesaikan ralat ini, anda boleh melumpuhkan mod STRICT menggunakan arahan SQL berikut:
SET GLOBAL sql_mode=''
Sebagai alternatif, anda boleh mengedit fail konfigurasi my.cnf dan memastikan STRICT_ALL_TABLES (atau tetapan mod ketat serupa) tidak didayakan. Sebaik sahaja anda telah melumpuhkan mod STRICT atau menambah nilai lalai pada medan yang terjejas, anda sepatutnya berjaya melaksanakan arahan INSERT tanpa menghadapi ralat yang disebutkan.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat \"Field \'display_name\' Tidak Mempunyai Nilai Lalai\" Semasa Perintah INSERT MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!