sql 语法错误

sql 语法错误

我有一个名为 sp_en 的表,该表有 2 列:“否”和“值”。我想将带有“no”的行的“值”:4433更改为1,因此我输入以下命令:

INSERT INTO sp_en (Say) WHERE no='4433' values ("1");

返回的错误是:

ERROR 1064 (42000):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 1 行的“where no=”4433”(Say)值(“1”)”附近使用的正确语法

有什么问题。所有答案将不胜感激...

答案1

当要修改的条目已存在于表中时,您不想插入。您可能想更新:

UPDATE TABLE sp_en SET Say = 1 WHERE no = 4433;

这将更新列值为no4433 且这些行设置Say为 1 的所有行。

我假设了整数列。

答案2

INSERT语法仅用于将新数据插入数据库。要更新或更改值UPDATE语法,请使用:

UPDATE TABLE table_name
SET column_name = value
WHERE column_name = value;

在上面的语法中,将小写单词替换为其各自的值。另外,其中使用的column_nameSET是您要更改的列,而其中使用的列WHERE是条件列。

所以查询变成:

UPDATE TABLE so_en
SET my_column = 1
WHERE no = 4433;

就这样!!!

PS 你可以在谷歌中轻松找到这个答案。所以如果你多做一些研究会更好。而这个问题属于dba stackexchange

相关内容