Другая синтаксическая ошибка MySQL с использованием INSERT INTO - PullRequest
2 голосов
/ 11 января 2012

MySQL возвращает синтаксическую ошибку для этого запроса (через PHP):

INSERT INTO links (link, name, desc, category) 
VALUES ('www.contoso.com', 'Contoso', 'My Website', 'Vanity')

ОШИБКА: У вас есть ошибка в вашем синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, на предмет правильного синтаксиса для использования рядом с «desc, category» VALUES («www.contoso.com», «Contoso», «My Website», «Vani») в строке 1

Я не вижу в этом ничего плохого. Что дает?

Ответы [ 4 ]

5 голосов
/ 11 января 2012

DESC - зарезервированное слово MySQL ... если вы хотите использовать его в качестве имени столбца, вы должны заключить его в обратные кавычки

Фактическое сообщение об ошибке после слова «рядом» дает указание, где именнов вашем выражении SQL синтаксический анализатор считает, что ошибка ... в данном случае, при слове "desc".Это часто может быть хорошим руководством для диагностики проблемы.

2 голосов
/ 11 января 2012

desc является зарезервированным ключевым словом MySQL. Оно должно быть заключено в кавычки как

INSERT INTO links (link, name, `desc`, category) VALUES ('www.datavirtue.com', 'Data Virtue', 'My Website', 'Vanity')
1 голос
/ 11 января 2012

«desc» - зарезервированное слово. Используйте "описание"

0 голосов
/ 11 января 2012

DESC является зарезервированным словом и должно быть экранировано обратными чертами.

INSERT INTO links 
    (link, name, `desc`, category) 
    VALUES 
    ('www.datavirtue.com', 'Data Virtue', 'My Website', 'Vanity')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...