在 mysql 中更改一个单元格的数据

如何只在 mysql 表的一个单元格中更改数据。 我对 UPDATE 有疑问,因为它会改变一个列中的所有参数,但我只想改变其中一个。怎么做到的?

385253 次浏览

UPDATE将只更改您专门列出的列。

UPDATE some_table
SET field1='Value 1'
WHERE primary_key = 7;

WHERE子句限制更新哪些行。一般情况下,您会使用它来标识表的主键(或 ID)值,以便只更新一行。

SET子句告诉 MySQL 要更新哪些列。您可以根据需要列出任意多或任意少的列。任何你没有列出的 不会得到更新。

您可能需要指定要更新的行..。

UPDATE
mytable
SET
column1 = value1,
column2 = value2
WHERE
key_value = some_value;

UPDATE只更改您指定的值:

UPDATE table SET cell='new_value' WHERE whatever='somevalue'

我的答案是重复其他人以前说过的话,但我想我应该加一个例子,使用 MySQL,只是因为以前的答案对我来说有点神秘。

用于更新单行列的命令的一般形式:

UPDATE my_table SET my_column='new value' WHERE something='some value';

举个例子。

之前

mysql> select aet,port from ae;
+------------+-------+
| aet        | port  |
+------------+-------+
| DCM4CHEE01 | 11112 |
| CDRECORD   | 10104 |
+------------+-------+
2 rows in set (0.00 sec)

做出改变

mysql> update ae set port='10105' where aet='CDRECORD';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

之后

mysql> select aet,port from ae;
+------------+-------+
| aet        | port  |
+------------+-------+
| DCM4CHEE01 | 11112 |
| CDRECORD   | 10105 |
+------------+-------+
2 rows in set (0.00 sec)

MySQL 中的一些列有一个“ on update”子句,请参见:

mysql> SHOW COLUMNS FROM your_table_name;

我不知道如何更新这一点,但将后,当我发现编辑。

试试以下方法:

UPDATE TableName SET ValueName=@parameterName WHERE
IdName=@ParameterIdName

试试这个。

UPDATE `database_name`.`table_name` SET `column_name`='value' WHERE `id`='1';

更新表 <tablename> 预备 <COLUMN=VALUE> 哪里 <CONDITION>

例如:

UPDATE TABLE teacher SET teacher_name='NSP' WHERE teacher_id='1'