Anidar construcciones TRY...CATCH
Quieres registrar a un nuevo comprador en tu tabla buyers. Este nuevo comprador es Peter Thomson. Su correo electrónico es [email protected] y su número de teléfono es 555000100.
En tu base de datos también hay una tabla llamada errors, en la que se almacena cada error.
Preparas un script que controle posibles errores en la inserción de los datos de esta persona. Además, insertará esos errores en la tabla errors.
¿Cómo preparas el script?
Este ejercicio forma parte del curso
Transacciones y control de errores en SQL Server
Instrucciones del ejercicio
- Rodea la sentencia
INSERT INTO buyerscon un bloqueTRY. - Rodea el manejo de errores con un bloque
CATCH. - Rodea la sentencia
INSERT INTO errorscon otro bloqueTRY. - Rodea el manejo de errores anidado con otro bloque
CATCH.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
-- Set up the first TRY block
___ ___
INSERT INTO buyers (first_name, last_name, email, phone)
VALUES ('Peter', 'Thompson', '[email protected]', '555000100');
___ ___
-- Set up the first CATCH block
___ ___
SELECT 'An error occurred inserting the buyer! You are in the first CATCH block';
-- Set up the nested TRY block
___ ___
INSERT INTO errors
VALUES ('Error inserting a buyer');
SELECT 'Error inserted correctly!';
___ ___
-- Set up the nested CATCH block
___ ___
SELECT 'An error occurred inserting the error! You are in the nested CATCH block';
___ ___
___ ___