MulaiMulai sekarang secara gratis

Menangani pengecualian

Dalam slide, kita membahas tentang memberikan konteks yang tepat untuk resolusi. Salah satu hal yang sering terlewat saat mencatat pesan adalah alasan yang lebih mendalam di baliknya. Sering kali kesalahan bersifat umum seperti "Bad value" atau "Invalid date." Namun, kita dapat menggunakan detail dan konteks untuk memperkaya pesan-pesan tersebut.

Di sini kita akan bekerja dengan A1C, yaitu persentase sel darah merah yang memiliki gula menempel pada hemoglobin. Biasanya, kisaran puasa berada di bawah 5,7% untuk pasien yang tidak terdampak, 5,7% hingga 6,4% untuk pradiabetes, dan di atas 6,5% umumnya menunjukkan diabetes yang tidak terkelola.

Latihan ini adalah bagian dari kursus

Transaksi dan Penanganan Error di PostgreSQL

Lihat Kursus

Petunjuk latihan

  • Lengkapi blok transaksi dengan mengisi pernyataan DO dan BEGIN sesuai kebutuhan.
  • Tambahkan sebuah pengecualian yang menyisipkan 'a1c is typically less than 14' ke kolom context pada tabel errors.
  • Akhiri pengecualian dengan menentukan bahasa prosedural yang digunakan.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

-- Add a DO function
___ $$ 
-- BEGIN a transaction block
___ 
    INSERT INTO patients (a1c, glucose, fasting) 
    values (20, 89, TRUE);

-- Add an EXCEPTION                   
____ 
-- Catch all exception types
WHEN others THEN
    INSERT INTO errors (msg, detail, ___) VALUES 
  (
    'failed to insert', 
    'This a1c value is higher than clinically accepted norms.', 
    '___'
  );
END;
-- Make sure to specify the language
____ language 'plpgsql';

-- Select all the errors recorded
SELECT * FROM errors;
Edit dan Jalankan Kode