172 votes

Changer les données d'une cellule dans mysql

Comment puis-je changer les données dans une seule cellule d'une table mysql. J'ai un problème avec UPDATE car tous les paramètres d'une colonne changent, mais je ne veux en changer qu'un seul. Comment?

212voto

Brian Hooper Points 8906

Vous devez probablement spécifier les lignes que vous souhaitez mettre à jour ...

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

119voto

slm Points 3435

Ma réponse est de répéter ce que les autres ont dit avant, mais je pensais ajouter un exemple, à l'aide de MySQL, seulement parce que les réponses précédentes ont été un peu énigmatique pour moi.

La forme générale de la commande que vous devez utiliser pour mettre à jour une seule ligne de la colonne:

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

Et voici un exemple.

AVANT

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

FAIRE LE CHANGEMENT

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

APRÈS

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

31voto

VoteyDisciple Points 23229

UPDATE changera uniquement les colonnes que vous avez spécifiquement listées.

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

La clause WHERE limite les lignes mises à jour. Généralement, vous l'utiliseriez pour identifier la valeur de clé primaire (ou ID) de votre table, de sorte que vous ne mettiez à jour qu'une seule ligne.

La clause SET indique à MySQL les colonnes à mettre à jour. Vous pouvez lister autant de colonnes que vous le souhaitez. Tout ce que vous ne listez pas ne sera pas mis à jour.

11voto

gruntled Points 1557

update ne change que les valeurs que vous spécifiez

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

9voto

user3668628 Points 8
UPDATE TableName SET   ValueName=@parameterName  WHERE
IdName=@ParameterIdName

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X