sql >> Database >  >> RDS >> Mysql

mysql vervangen door alternatief

U wilt de syntaxis INSERT...ON DUPLICATE KEY UPDATE gebruiken.

http://dev.mysql.com/doc /refman/5.1/en/insert-on-duplicate.html

Hier is een voorbeeld dat zal proberen een record te maken met een id, verjaardag en naam. Als er een record met het id-veld bestaat, wordt de opgegeven update uitgevoerd. De tabel heeft veel andere velden zoals e-mailadres, postcode, enz. Ik wil die velden met rust laten als ik update. (REPLACE INTO zou al die gegevens kwijtraken als ik ze niet zou opnemen in de REPLACE INTO-instructie.)

INSERT INTO user (userid,birthday,first_name,last_name) 
   VALUES (1234,'1980-03-07','Joe','Smith') 
ON DUPLICATE KEY UPDATE 
   birthday = '1980-03-07',
   first_name = 'Joe', 
   last_name = 'Smith';



  1. Het hashen van het wachtwoord met behulp van crypt werkt niet bij het inloggen, het geeft een onjuist wachtwoord weer

  2. SQL-commando's die niet compatibel zijn met H2

  3. Hoe u efficiënt de dichtstbijzijnde locaties in de buurt van een bepaalde locatie kunt vinden?

  4. TreeView-besturingselement met subformulieren