Menyelesaikan masalah MySQL "Lajur Tidak Diketahui dalam 'senarai medan'" Ralat dalam Pertanyaan KEMASKINI
Pertanyaan MySQL UPDATE kadangkala boleh membuang ralat #1054, yang menunjukkan "lajur tidak diketahui dalam 'senarai medan'". Ini selalunya berpunca daripada petikan nama lajur yang salah. Panduan ini menerangkan sebab dan penyelesaian yang sama.
Isu teras sering timbul daripada penggunaan tanda petikan yang tidak betul. MySQL menggunakan backticks (`) untuk mengehadkan pengecam (seperti nama lajur). Menggunakan petikan tunggal atau berganda sebaliknya akan menyebabkan MySQL menganggap nama lajur sebagai rentetan literal, yang membawa kepada ralat.
Contoh dan Penyelesaian:
Pertimbangkan pertanyaan ini:
<code class="language-sql">UPDATE MASTER_USER_PROFILE, TRAN_USER_BRANCH SET MASTER_USER_PROFILE.fellow=`y` WHERE MASTER_USER_PROFILE.USER_ID = TRAN_USER_BRANCH.USER_ID AND TRAN_USER_BRANCH.BRANCH_ID = 17</code>
Di sini, fellow
(disertakan dalam tanda belakang) dikenal pasti dengan betul sebagai lajur. Walau bagaimanapun, menggunakan petikan tunggal atau berganda di sekitar fellow
akan menghasilkan ralat "lajur tidak diketahui".
Key Takeaway: Sentiasa gunakan backtick (`) untuk nama lajur dalam pertanyaan MySQL anda. Simpan petikan tunggal atau berganda untuk nilai rentetan. Mematuhi peraturan mudah ini menghalang ralat biasa ini.
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat 'Lajur Tidak Diketahui dalam 'senarai medan'' dalam Pertanyaan KEMASKINI MySQL Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!