Синтаксическая ошибка:MySQL Insert Select
У меня есть этот запрос для вставки в tbl_userprofile:
$SQL = "INSERT INTO tbl_userprofile (userId, name, surname, gender, nationality, address, mobile, department, email, question, answer)
SELECT tbl_user.Id , '$name', '$surname', '$gender', '$nationality', '$address','$mobile', '$department', '$email', '$question', '$answer'
FROM tbl_user
WHERE username = '$uname'";
Я получаю синтаксическую ошибку, которая гласит: "У вас есть ошибка в вашем синтаксисе SQL; проверьте правильность синтаксиса в руководстве, соответствующем версии вашего сервера MySQL, рядом с" pet-peeve "," dirt "ОТ tbl_user WHERE username = 'alex''в строке 2"
ПРИМЕЧАНИЕ: любимая мозоль и грязь - это вопрос и ответ. Я не знаю, как я получаю синтаксическую ошибку. Пожалуйста, где моя синтаксическая ошибка? Спасибо
1 ответ
Решение
В этих двух последних полях может быть какой-то простой текст, так что, возможно, там есть кавычки, лучше addslashes()
на ваш $question
а также $answer
переменные
'$email', '".addslashes($question)."', '".addslashes($answer)."' FROM tbl_user