2016-08-07 2 views
1

Я создал базу данных SQL, с которой я связан с MySQL Workbench. У меня есть одна колонка, которую я почему-то не могу использовать в запросе, который Workbench фактически распознает. Мой запрос выглядит выглядит следующим образом:Имя столбца SQL Desc не принимается?

INSERT INTO `mcfluid` (desc, type, maxcap, curcap) VALUES ('tank', 'water',1000,1000); 

Это не работает по какой-то причине, но когда я изменил его к этому:

INSERT INTO `mcfluid` (`desc`, type, maxcap, curcap) VALUES ('tank', 'lava',1000,1000); 

Этом по какой-то причине сделал?

Почему это?

Моя таблица выглядит следующим образом:

id int(11) AI PK 
desc varchar(100) 
type varchar(100) 
maxcap bigint(20) 
curcap bigint(20) 

ответ

2

desc является зарезервированным словом в SQL - это ключевое слово для предложения order by, которая обозначает порядок в по убыванию ИНГ порядка (например .: select * from mytable order by mycolumn DESC).

Экранирование с помощью backticks позволяет MySQL понять, что вы хотели использовать его как имя, а не синтаксический элемент.

+1

О, это сработало! просто изменил его на другое имя, и проблема исправлена – RasmusGP

Смежные вопросы