Parametresiz THROW
Veritabanına yeni ürünler eklemek için bir saklı yordam hazırlamak istiyorsun. Bu saklı yordamda, oluşabilecek hataları errors adlı bir tabloya eklemek ve ardından orijinal hatayı yeniden fırlatmak istiyorsun.
Saklı yordamı nasıl hazırlarsın?
Bu egzersiz, kursun bir parçasıdır
SQL Server'da İşlemler ve Hata Yönetimi
Egzersiz talimatları
- Hata yakalamayı bir
CATCHbloğuyla çevrele. - Hatayı
errorstablosuna ekle. - INSERT ifadesini noktalı virgülle (
;) bitir. - Orijinal hatayı yeniden fırlat.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
CREATE PROCEDURE insert_product
@product_name VARCHAR(50),
@stock INT,
@price DECIMAL
AS
BEGIN TRY
INSERT INTO products (product_name, stock, price)
VALUES (@product_name, @stock, @price);
END TRY
-- Set up the CATCH block
___ ___
-- Insert the error and end the statement with a semicolon
___ ___ errors VALUES ('Error inserting a product')___
-- Re-throw the error
___;
___ ___