ComeçarComece de graça

THROW sem parâmetros

Você quer preparar uma procedure armazenada para inserir novos produtos no banco de dados. Nessa procedure, você quer registrar os possíveis erros em uma tabela chamada errors e, depois disso, relançar o erro original.

Como você prepara essa procedure armazenada?

Este exercício faz parte do curso

Transações e tratamento de erros no SQL Server

Ver curso

Instruções do exercício

  • Envolva o tratamento de erros com um bloco CATCH.
  • Insira o erro na tabela errors.
  • Termine a instrução de INSERT com ponto e vírgula (;).
  • Relance o erro original.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

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
	___; 
___ ___
Editar e executar o código