MulaiMulai sekarang secara gratis

Menggunakan fungsi error dalam TRY...CATCH bersarang

Anda menerima beberapa sepeda listrik baru di toko, sehingga Anda perlu memperbarui stok.

Anda ingin mencatat bahwa Anda menerima 2 sepeda Trek Powerfly 5 - 2018 dengan harga $3499,99 masing-masing, dan 3 sepeda New Power K- 2018 dengan harga $1999,99 masing-masing.

Anda mencoba menyisipkan produk-produk tersebut ke dalam database karena Anda mengira itu adalah model baru. Namun, Anda lupa bahwa yang pertama sudah ada di stok. Untungnya, tabel products memiliki kendala yang mengharuskan setiap nama produk unik.

Anda menyiapkan skrip untuk mengendalikan kemungkinan error saat penyisipan. Anda juga ingin menyisipkan kemungkinan error ke dalam tabel bernama errors, dan jika terjadi kegagalan saat menyisipkan error, tampilkan nomor error dan pesan error.

Latihan ini adalah bagian dari kursus

Transaksi dan Penanganan Kesalahan di SQL Server

Lihat Kursus

Petunjuk latihan

  • Lingkupi penanganan error dengan blok CATCH.
  • Sisipkan 'Error inserting a product' ke tabel errors dan lingkupi penyisipan ini dengan blok TRY lain.
  • Lingkupi penanganan error bersarang dengan blok CATCH lain.
  • Pilih baris error dan pesan error di blok CATCH bagian dalam.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

BEGIN TRY
    INSERT INTO products (product_name, stock, price) 
    VALUES	('Trek Powerfly 5 - 2018', 2, 3499.99),   		
    		('New Power K- 2018', 3, 1999.99)		
END TRY
-- Set up the outer CATCH block
___ ___
	SELECT 'An error occurred inserting the product!';
    -- Set up the inner TRY block
    ___ ___
    	-- Insert the error
    	INSERT INTO ___ 
        	VALUES ('Error inserting a product');
    ___ ___    
    -- Set up the inner CATCH block
    ___ ___
    	-- Show number and message error
    	SELECT 
        	___ AS line,	   
			___ AS message; 
    ___ ___    
___ ___
Edit dan Jalankan Kode