Zacznij terazZacznij za darmo

Wykonywanie procedury składowanej, która zgłasza błąd

Chcesz zarejestrować, że otrzymano 3 rowery Trek Conduit+ w cenie 499,99 USD. Podejrzewasz, że Trek Conduit+ nie istnieje w tabeli products, dlatego próbujesz dodać go jako nowy produkt, korzystając z procedury składowanej utworzonej w poprzednim ćwiczeniu:

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
BEGIN CATCH    
    INSERT INTO errors VALUES ('Error inserting a product');  
    THROW;  
END CATCH

Musisz przechwycić możliwe błędy generowane podczas wykonywania procedury składowanej i wyświetlić oryginalny komunikat błędu.

Jak przygotujesz skrypt?

To ćwiczenie jest częścią kursu

Transakcje i obsługa błędów w SQL Server

Zobacz kurs

Instrukcje do ćwiczenia

  • Wywołaj procedurę składowaną o nazwie insert_product.
  • Ustaw odpowiednie wartości parametrów procedury składowanej.
  • Otocz obsługę błędu blokiem CATCH.
  • Wybierz komunikat błędu.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

BEGIN TRY
	-- Execute the stored procedure
	EXEC ___
    	-- Set the values for the parameters
    	@product_name = 'Trek Conduit+',
        @stock = ___,
        @price = ___;
END TRY
-- Set up the CATCH block
___ ___
	-- Select the error message
	SELECT ___;
___ ___
Edytuj i uruchom kod