ПочатиПочніть безкоштовно

Виконання збереженої процедури, яка викидає помилку

Ви хочете зареєструвати надходження 3 велосипедів Trek Conduit+ за ціною $499.99. Ви вважаєте, що Trek Conduit+ відсутній у таблиці products, тому намагаєтеся додати його як новий продукт, використовуючи збережену процедуру, створену у попередній вправі:

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

Потрібно перехопити можливі помилки, згенеровані під час виконання збереженої процедури, і показати початкове повідомлення про помилку.

Як підготувати скрипт?

Ця вправа є частиною курсу

Транзакції та обробка помилок у SQL Server

Переглянути курс

Інструкції до вправи

  • Виконайте збережену процедуру insert_product.
  • Задайте відповідні значення параметрам збереженої процедури.
  • Оточіть обробку помилки блоком CATCH.
  • Виберіть повідомлення про помилку.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

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 ___;
___ ___
Редагувати та запускати код