Jeśli dwie pierwsze kolumny tworzą klucz podstawowy (lub unikalny indeks), możesz użyć zamień
Więc w zasadzie zamiast pisać
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
Napiszesz
REPLACE INTO settings
VALUES ($id,
$projectId,
$fangate,
$home,
$thanks
$overview,
$winner,
$modules.wallPost,
$modules.overviewParticipant)
Oczywiście działa to tylko wtedy, gdy wiersz już istnieje, w przeciwnym razie zostanie utworzony. Spowoduje to również DELETE i INSERT za sceną, jeśli ma to znaczenie.