MySQL INSERT Syntaxe
nepodporuje klauzuli WHERE, takže váš dotaz tak, jak je, selže. Za předpokladu, že vaše id
sloupec je jedinečný nebo primární klíč:
Pokud se pokoušíte vložit nový řádek s ID 1, měli byste použít:
INSERT INTO Users(id, weight, desiredWeight) VALUES(1, 160, 145);
Pokud se pokoušíte změnit hodnoty hmotnosti/požadované hmotnosti pro existující řádek s ID 1, měli byste použít:
UPDATE Users SET weight = 160, desiredWeight = 145 WHERE id = 1;
Pokud chcete, můžete také použít syntaxi INSERT .. ON DUPLICATE KEY takto:
INSERT INTO Users (id, weight, desiredWeight) VALUES(1, 160, 145) ON DUPLICATE KEY UPDATE weight=160, desiredWeight=145
NEBO dokonce takhle:
INSERT INTO Users SET id=1, weight=160, desiredWeight=145 ON DUPLICATE KEY UPDATE weight=160, desiredWeight=145
Je také důležité poznamenat, že pokud vaše id
sloupec je sloupec s automatickým přírůstkem, můžete jej také vynechat z INSERT a nechat jej navýšit jako obvykle pomocí mysql.