UPSERT (Insert or Update on Conflict)

UPSERT menyisipkan data baru jika belum ada, atau memperbarui data lama jika terjadi bentrokan kunci unik (ON CONFLICT / ON DUPLICATE KEY).

👀 Contoh dulu

INSERT INTO settings (key, value) VALUES ('theme', 'dark')
ON CONFLICT (key) DO UPDATE SET value = EXCLUDED.value;

Hasilnya: Nilai theme di-insert jika belum ada, atau di-update jika sudah ada.

💡 Sangat berguna untuk fitur sync data dan pengaturan.

📝 Sekarang giliranmu

Tambahkan klausa PostgreSQL agar mengabaikan (DO NOTHING) jika terjadi konflik pada email.

Preview