Mysql
 sql >> Database >  >> RDS >> Mysql

Aggiorna MySQL senza specificare i nomi delle colonne

Se le prime due colonne costituiscono la chiave primaria (o un indice univoco) è possibile utilizzare sostituisci

Quindi in pratica invece di scrivere

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

Scriverai

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

Ovviamente funziona solo se la riga esiste già, altrimenti verrà creata. Inoltre, causerà un DELETE e un INSERT dietro le quinte, se questo è importante.