Rumah > Artikel > pangkalan data > Mengapakah pertanyaan saya \"PILIH KE DALAM\" menghasilkan ralat \"Pembolehubah Tidak Diisytiharkan\"?
PILIH KE DALAM dan Ralat: Pembolehubah Tidak Diisytiharkan
Apabila cuba melaksanakan pertanyaan:
SELECT id_subscriber INTO newsletter_to_send FROM subscribers
Anda menghadapi ralat:
#1327 - Undeclared variable: newsletter_to_send
Punca:
Ralat timbul kerana surat berita pembolehubah_untuk_hantar tidak diisytiharkan atau dimulakan sebelum penggunaannya dalam pertanyaan.
Penyelesaian:
Untuk menyelesaikan isu ini, anda perlu menggunakan sintaks INSERT ... SELECT dan bukannya sintaks SELECT INTO. Pertanyaan yang betul hendaklah:
INSERT INTO newsletter_to_send SELECT id_subscriber FROM subscribers
Sintaks INSERT ... SELECT membolehkan anda memasukkan berbilang baris ke dalam jadual dengan menggunakan hasil subkueri.
Nota Tambahan :
Perlu dipertimbangkan jika terdapat keperluan untuk klausa WHERE dalam subkueri untuk menapis hasil dan berpotensi menghalang memasukkan baris yang tidak diingini ke dalam jadual newsletter_to_send.
Atas ialah kandungan terperinci Mengapakah pertanyaan saya \"PILIH KE DALAM\" menghasilkan ralat \"Pembolehubah Tidak Diisytiharkan\"?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!