Mysql
 sql >> база данни >  >> RDS >> Mysql

Заявката за MySQL Insert не работи с клауза WHERE

MySQL INSERT синтаксис не поддържа клаузата WHERE, така че вашата заявка в този вид ще се провали. Ако приемем вашия id колоната е уникален или първичен ключ:

Ако се опитвате да вмъкнете нов ред с идентификатор 1, трябва да използвате:

INSERT INTO Users(id, weight, desiredWeight) VALUES(1, 160, 145);

Ако се опитвате да промените стойностите за тегло/желано тегло за съществуващ ред с ID 1, трябва да използвате:

UPDATE Users SET weight = 160, desiredWeight = 145 WHERE id = 1;

Ако искате, можете също да използвате INSERT .. ON DUPLICATE KEY синтаксис така:

INSERT INTO Users (id, weight, desiredWeight) VALUES(1, 160, 145) ON DUPLICATE KEY UPDATE weight=160, desiredWeight=145

ИЛИ дори така:

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

Също така е важно да се отбележи, че ако вашият id колоната е колона с автоматично нарастване, тогава можете също да я пропуснете от вашия INSERT заедно и да оставите mysql да я увеличи както обикновено.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Задълбочен поглед върху индексирането на база данни

  2. Буболечка? #1146 - Таблица 'xxx.xxxxx' не съществува

  3. ER_NOT_SUPPORTED_AUTH_MODE - MySQL сървър

  4. Просто отстраняване на неизправности при влизане в PHP SQL

  5. Neo4j - Импортиране на данни от CSV файл с помощта на Cypher