Rumah >pangkalan data >tutorial mysql >Mengapa Pertanyaan SQL Saya Gagal dengan 'Lajur 'Mary' Tidak Wujud'?
Lajur 'Mary' Tidak Wujud: Menyelesaikan Masalah Pertanyaan SQL
Anda cuba mendapatkan semula nombor telefon seseorang yang bernama "Mary" menggunakan pertanyaan SQL. Walau bagaimanapun, anda menghadapi ralat yang mendakwa lajur 'Mary' tidak wujud.
Isu di sini terletak pada cara anda mengehadkan rentetan literal untuk 'Mary'. Tanda petikan berganda (‘ ’) dianggap sebagai petikan pintar, manakala tanda petikan tunggal (') adalah biasa. Dalam SQL, pembatas rentetan lalai ialah tanda petikan tunggal.
Untuk menyelesaikan isu ini, anda harus menggunakan petikan tunggal biasa untuk mengehadkan nama 'Mary'. Berikut ialah pertanyaan yang diperbetulkan:
SELECT telephone.telephonenumber as tel FROM person, telephone WHERE person.idperson = telephone.idperson AND person.personname = 'Mary';
Dengan menggunakan petikan tunggal biasa, nama lajur 'Mary' akan dianggap sebagai nilai dan bukannya pengecam lajur. Ini sepatutnya menghapuskan ralat dan mengembalikan nombor telefon yang dijangkakan.
Atas ialah kandungan terperinci Mengapa Pertanyaan SQL Saya Gagal dengan 'Lajur 'Mary' Tidak Wujud'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!