sql >> Databasteknik >  >> RDS >> Mysql

MySQL -- Uppdatera om det finns annat infoga med två nycklar

Testa att använda en IF EXISTS för att avgöra om en UPDATE ska köras eller en INSERT påstående. Du kan göra detta i en PHP-sats/fråga.

IF EXISTS(SELECT 1 FROM Mytable WHERE foreign_key_id = f1 AND value1 = v1)
BEGIN
    UPDATE Mytable SET value2 = v2
    WHERE foreign_key_id = f1 AND value1 = v1;
END
ELSE
BEGIN
      INSERT INTO Mytable(foreign_key_id,value1,value2)
      VALUES (f1,v1,v2);
END IF;


  1. Installation av MySQL i Docker misslyckas med felmeddelande Kan inte ansluta till lokal MySQL-server via socket

  2. 8 funktioner för att återställa dagen från ett datum i MariaDB

  3. Ändra eller ställ in MySQL Long Query Time Value för log-slow-queries

  4. dbms_output.put_line