UPSERT: ON CONFLICT DO UPDATE

Zmiana danych: INSERT, UPDATE, DELETE - SQLite: podstawy i różnice względem MySQL (SQL (SQLite))

UPSERT, czyli "wstaw, a jak już istnieje - zaktualizuj". Tytuł jest UNIQUE, więc drugi INSERT by się wywalił; ON CONFLICT zamienia go w UPDATE. W MySQL to samo robi ON DUPLICATE KEY UPDATE.

INSERT INTO gry (tytul, gatunek, cena)
VALUES ('Puzzle Master', 'logiczna', 15.99)
ON CONFLICT(tytul) DO UPDATE SET cena = excluded.cena;

SELECT tytul, cena FROM gry WHERE tytul = 'Puzzle Master';

Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.

Wszystkie lekcje kursu SQLite: podstawy i różnice względem MySQL · Zaloguj się, aby zapisać postęp na koncie.