THROW без параметров
Вы хотите подготовить хранимую процедуру для добавления новых продуктов в базу данных. В этой процедуре необходимо записывать возможные ошибки в таблицу errors, а затем повторно генерировать исходную ошибку.
Как подготовить такую хранимую процедуру?
Это упражнение является частью курса
Транзакции и обработка ошибок в SQL Server
Инструкции к упражнению
- Оберните обработку ошибок блоком
CATCH. - Вставьте информацию об ошибке в таблицу
errors. - Завершите оператор вставки точкой с запятой (
;). - Повторно сгенерируйте исходную ошибку.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
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
___;
___ ___