Блог одного кібера

Хто володіє інформацією, той володіє світом. Я планую заволодіти світом.

Posts Tagged ‘SQL’

Ключові слова і назви полів в SQL

Опубліковано bunyk на Березень 6, 2009

Припустимо ви створити красиву базу даних, і робите до неї запит. Запит відповідає всім вимогам синтаксису SQL, але в результаті ви все одно отримуєте помилку.
Наприклад після запиту:

UPDATE lections SET number='2', course='1', group='1', lector='1',
room='6', day='3' WHERE ID=23 LIMIT 1;

ми отримуємо таке повідомлення:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'group='1', lector='1', room='6', day='3' WHERE ID=23 LIMIT 1' at line 1

В чому проблема?
Мова запитів містить оператор (чи як це назвати) GROUP BY, і тому вашій СУБД важко розібратися що ви мали на увазі. Тому є два рішення:

Перше: Не називайте свої таблиці і їх поля ключовими словами з SQL.

Але може вам подобається назва поля, або ви вже написали дуже багато коду, де вона використовується. Тому вам краще підійде …

Друге рішення: виділити назву поля як ідентифікатор символами наголосу ASCII 96 "`" ` - grave accent.

Такий запит працює нормально:

UPDATE lections SET number='2', course='1', `group`='1',
		lector='1', room='6', day='3' WHERE ID=23 LIMIT 1

Надіслано до Кодерство, Павутина | Помічено: | 2 Comments »