Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

A consulta de inserção do MySQL não funciona com a cláusula WHERE


MySQL INSERIR Sintaxe não suporta a cláusula WHERE, portanto, sua consulta falhará. Assumindo seu id coluna é única ou chave primária:

Se você está tentando inserir uma nova linha com ID 1, você deve usar:
INSERT INTO Users(id, weight, desiredWeight) VALUES(1, 160, 145);

Se você está tentando alterar os valores weight/desiredWeight para uma linha existente com ID 1, você deve usar:
UPDATE Users SET weight = 160, desiredWeight = 145 WHERE id = 1;

Se você quiser, também pode usar a sintaxe INSERT .. ON DUPLICATE KEY assim:
INSERT INTO Users (id, weight, desiredWeight) VALUES(1, 160, 145) ON DUPLICATE KEY UPDATE weight=160, desiredWeight=145

OU mesmo assim:
INSERT INTO Users SET id=1, weight=160, desiredWeight=145 ON DUPLICATE KEY UPDATE weight=160, desiredWeight=145

Também é importante observar que se seu id column é uma coluna de autoincremento, então você também pode omiti-la do seu INSERT e deixar o mysql incrementá-la normalmente.