Menetapkan NOT NULL Constraints untuk Lajur MySQL Sedia Ada
Menambah NOT NULL kekangan pada lajur sedia ada boleh menjadi keperluan biasa apabila memastikan integriti data. Mari kita terokai langkah-langkah yang terlibat dalam menangani isu ini.
Pertimbangkan kes jadual "Orang" dengan lajur berikut:
<code class="sql">P_Id (int) LastName (varchar) FirstName (varchar)</code>
Walau bagaimanapun, lajur P_Id tidak mempunyai kekangan NOT NULL. Percubaan untuk menambah kekangan menggunakan pertanyaan seperti berikut telah mengakibatkan ralat sintaks:
<code class="sql">ALTER TABLE Person MODIFY (P_Id NOT NULL); ALTER TABLE Person ADD CONSTRAINT NOT NULL NOT NULL (P_Id);</code>
Untuk menambah kekangan NOT NULL dengan berkesan, gunakan ALTER JADUAL... UBAHSUAI... pertanyaan yang merangkumi lajur penuh takrifan. Contoh pertanyaan ialah:
<code class="sql">ALTER TABLE Person MODIFY P_Id INT(11) NOT NULL;</code>
Awas: Pastikan keseluruhan takrifan lajur ditentukan dalam pertanyaan UBAHSUAI, termasuk sebarang nilai lalai atau ulasan lajur. Peninggalan elemen ini akan membawa kepada pengalihan keluar elemen ini daripada lajur.
Untuk keselamatan sepenuhnya, ekstrak definisi lajur menggunakan pertanyaan SHOW CREATE TABLE YourTable. Ubah suai definisi untuk memasukkan kekangan NOT NULL, dan kemudian tampalkannya ke dalam ALTER JADUAL... UBAHSUAI... pertanyaan. Pendekatan ini meminimumkan risiko kehilangan sifat lajur yang penting.
Atas ialah kandungan terperinci Bagaimana untuk Menambah Kekangan NOT NULL pada Lajur MySQL Sedia Ada?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!