Tu primer script de control de errores
Te has dado cuenta de que tu tabla products no tiene ninguna restricción que valide los datos almacenados en su columna stock. Tiene sentido que stock sea siempre mayor o igual que 0.
Por alguna razón, hay un error en la siguiente fila. ¡El stock es -1!
| product_id | product_name | stock | price |
|------------|--------------|-------|-------|
| 6 | Trek Neko+ | -1 | 2799 |
Quieres preparar un script que agregue una restricción a la tabla products para que solo se permitan existencias mayores o iguales que 0.
Si añades esta restricción que solo permite existencias mayores o iguales que 0, la ejecución fallará porque hay una fila en la que el stock es -1.
¿Cómo puedes preparar el script?
Este ejercicio forma parte del curso
Transacciones y control de errores en SQL Server
Instrucciones del ejercicio
- Rodea la restricción con un bloque
TRY. - Añade la restricción a la tabla
products. - Rodea el mensaje de error con un bloque
CATCH.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
-- 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 ___