Так это мой стол

+--------+--------------+--------------+------+
| I_Code | Name         | Category     | rate |
+--------+--------------+--------------+------+
|   1001 | Masala Dosa  | South Indian |   60 |
|   1002 | Vada Sambhar | South Indian |   40 |
|   1003 | Idli         | South Indian |   40 |
|   1004 | Chow Mein    | Chinese      |   80 |
|   2002 | Dimsum       | Chinese      |   60 |
+--------+--------------+--------------+------+

И I_Code является первичным ключом. Я хочу изменить I_Code Chow Mein на 2001, и я использую следующий код

use food;
update table items
set I_Code = 2001
where name = "Chow Mein";

Но продолжает выдавать эту ошибку

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 'table items set I_Code = 2001 where name = "Chow Mein"' at line 1

Что не так и как я могу это исправить?

0
kiddo42069 3 Фев 2022 в 16:37
Оператор UPDATE не требует (и это неправильный синтаксис для включения) токена TABLE; ваше заявление должно быть больше в форме UPDATE <table_name> SET <field>=<value> WHERE <condition>. Можете ли вы поделиться источником, на котором вы основываете свое неявное утверждение об обратном?
 – 
esqew
3 Фев 2022 в 16:40

3 ответа

Ключевое слово таблицы не используется после ключевого слова обновления. Имя таблицы будет использоваться после ключевого слова update.

update items
set I_Code = 2001
where name = "Chow Mein";
0
Rahul Biswas 3 Фев 2022 в 16:41

У тебя неправильный синтаксис! https://dev.mysql.com/doc/refman/8.0/ ru/update.html

Это должно работать:

update items
set I_Code = 2001
where name = "Chow Mein";

«обновить таблицу (имя таблицы)» — это не синтаксис, а просто «обновить (имя таблицы)».

0
Søren Kongstad 3 Фев 2022 в 16:41

Используйте следующий синтаксис:

UPDATE table_name SET col-name = value WHERE id = value

Ваш ответ:

UPDATE items SET I_Code = 2001 WHERE Name = 'Chow Mein';

если это не работает, попробуйте следующее:

SET SQL_SAFE_UPDATES = 0;
UPDATE items SET I_Code = 2001 WHERE Name = 'Chow Mein';
0
Sunderam 3 Фев 2022 в 16:48