ComeçarComece de graça

Seu primeiro script de tratamento de erros

Você percebeu que sua tabela products não tem nenhuma restrição para verificar os dados armazenados na coluna stock. Faz sentido que stock seja sempre maior ou igual a 0. Por algum motivo, há um erro na linha a seguir. O estoque está em -1!

| product_id | product_name | stock | price |
|------------|--------------|-------|-------|
| 6          | Trek Neko+   | -1    | 2799  |

Você quer preparar um script adicionando uma restrição à tabela products, para permitir apenas estoques maiores ou iguais a 0.

Se você adicionar essa restrição que só permite estoques maiores ou iguais a 0, a execução falhará porque há uma linha em que o estoque é igual a -1.

Como você pode preparar o script?

Este exercício faz parte do curso

Transações e tratamento de erros no SQL Server

Ver curso

Instruções do exercício

  • Coloque a restrição dentro de um bloco TRY.
  • Adicione a restrição à tabela products.
  • Coloque a mensagem de erro dentro de um bloco CATCH.

Exercício interativo prático

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

-- Set up the TRY block
BEGIN ___
	-- Add the constraint
	ALTER TABLE ___
		ADD CONSTRAINT CHK_Stock CHECK (stock >= 0);
___ ___
-- Set up the CATCH block
___ ___
	SELECT 'An error occurred!';
END ___
Editar e executar o código