Lompat ke konten utama

Kompetisi Ajak Teman: hadiah total Rp1.000.000 tunai untuk 3 pengajak terbanyak. Berakhir 29 November 2026. Ikut kompetisi

←

Transaksi Basis Data: Menjaga Data Tetap Konsisten

Pelajaran 10 dari 14

Savepoint dan constraint

Misi: Impor pesanan marketplace

Setelah pelajaran ini kamu bisa mengimpor pesanan dan retur dari marketplace dengan satu transaksi untuk seluruh berkas dan satu savepoint untuk setiap pesanan, sehingga pesanan yang gagal dilewati utuh tanpa membatalkan yang lain.

±17 menitDiperiksa 7 Okt 2026

Materi

Toko yang sama menerima berkas pesanan dari marketplace tiga kali sehari. Satu berkas berisi puluhan pesanan, dan satu pesanan bisa berisi beberapa barang. Pesanan yang bermasalah — nomor kembar, barang tidak dikenal, atau stok kurang — dilewati utuh: tidak ada header tanpa detail, dan tidak ada stok yang berkurang untuk pesanan yang tidak tercatat. Pesanan lain dalam berkas yang sama tetap tersimpan.

Polanya: satu BEGIN untuk seluruh berkas, satu SAVEPOINT untuk setiap pesanan, ROLLBACK TO lalu RELEASE untuk pesanan yang gagal, RELEASE untuk pesanan yang berhasil, dan COMMIT di akhir. Galat yang bukan masalah data pesanan, misalnya pernyataan yang gagal di luar dugaan, membatalkan seluruh berkas dengan ROLLBACK. Empat pemeriksaan tetap berlaku: kondisi awal, hasil berhasil, hasil gagal, dan konsistensi: stok awal dikurangi stok akhir sama dengan jumlah barang di detail.

Latihan

0/4 lulus

Misi akhir modul: luluskan minimal 4 dari 4 tugas. Jawaban diperiksa di server. Lulus berarti kamu memahami contohnya, bukan penilaian seluruh pekerjaanmu.

Latihan 3 dari 4

Di tengah transaksi yang sudah punya savepoint impor, kode menjalankan ROLLBACK TO imprt (salah ketik). Apa yang terjadi?

Pilih satu jawaban

Catatanmu

Memuat catatan…

tersimpan otomatis, ikut tercetak · 0/4.000

Luluskan semua latihan dulu untuk menandai pelajaran ini selesai.

Lanjutkan ke