sql >> Database >  >> RDS >> Mysql

Update MySQL zonder kolomnamen op te geven

Als de eerste twee kolommen de primaire sleutel vormen (of een unieke index), kunt u vervangen

Dus eigenlijk in plaats van te schrijven

UPDATE settings
   SET fangate = $fangate,
       home = $home,
       thanks = $thanks
       overview = $overview,
       winner = $winner,
       modules.wallPost = $modules.wallPost,
       modules.overviewParticipant = $modules.overviewParticipant
WHERE id = $id AND procjectId = $projectId

Je gaat schrijven

REPLACE INTO settings
 VALUES ($id, 
         $projectId,
         $fangate,
         $home,
         $thanks
         $overview,
         $winner,
         $modules.wallPost,
         $modules.overviewParticipant)

Dit werkt natuurlijk alleen als de rij al bestaat, anders wordt deze aangemaakt. Het veroorzaakt ook een DELETE en een INSERT achter de schermen, als dat ertoe doet.



  1. Een tabelkolom hernoemen in Oracle 10g

  2. Hoe een gebruiker aan te maken in Oracle en privileges toe te wijzen

  3. Selecteer rijen uit een tabel waar een rij in een andere tabel met dezelfde id een bepaalde waarde heeft in een andere kolom

  4. SQL-query om het aantal wederzijdse vrienden te vinden, gegeven een tabel met persoon, vriendenpaar