Rumah  >  Artikel  >  pangkalan data  >  Mengapa Saya Mendapat Ralat \"Field \'display_name\' Tidak Mempunyai Nilai Lalai\" Semasa Perintah INSERT MySQL?

Mengapa Saya Mendapat Ralat \"Field \'display_name\' Tidak Mempunyai Nilai Lalai\" Semasa Perintah INSERT MySQL?

DDD
DDDasal
2024-11-04 06:50:311040semak imbas

Why Do I Get

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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn