Los errores son inevitables cuando se trata de desarrollos. Por lo tanto, es un buen plan asegurarse de implementar algunas medidas para que los errores no rompan la funcionalidad de su aplicación.
SQL Server nos permite usar la instrucción de lanzamiento para aumentar una excepción. Luego transfirimos el contexto de ejecución a un bloque de intento y captura para manejar el error.
Sintaxis
El siguiente fragmento de código muestra la sintaxis para la declaración de lanzamiento:
Tirar [Error_numer,Los argumentos en la sintaxis proporcionada incluyen lo siguiente:
Nota: Cualquier declaración antes de una cláusula de lanzamiento debe finalizarse con un punto y coma. El servidor SQL también requiere el lanzamiento para incluir los argumentos anteriores. Si la declaración de lanzamiento no tiene los argumentos anteriores, debe estar encerrado dentro de un bloque de try/captación.
La sintaxis es la siguiente:
Empezar a intentarNo puede usar el carácter % en el parámetro ERROR_MESSAGE. Esto se debe a que es un personaje reservado. Si necesita incluir el carácter%en su mensaje de error, asegúrese de escapar de él teniendo el doble porcentaje de caracteres (%%).
Ejemplos de instrucción de lanzamiento de SQL Server
Echemos un vistazo a algunos ejemplos de la declaración de lanzamiento en acción.
SQL Server utilizando la declaración de lanzamiento para lanzar una excepción
El siguiente ejemplo demuestra el uso de la declaración de lanzamiento para plantear una excepción:
Lanzar 50001, '[Fail] - El valor solicitado no se encuentra.', 1;En este ejemplo, usamos la declaración de lanzamiento para plantear una excepción con el código de error 50001 y el estado de 1.
La salida resultante es la siguiente:
Error de SQL [50001] [S0001]: [Fail] - El valor solicitado no se encuentra.SQL Server Rethrows Exception utilizando la declaración de lanzamiento
También podemos usar la excepción de lanzamiento a Rethrow la última excepción. Un código de ejemplo es el siguiente:
Tabla de caída si existe t;La consulta anterior debe imprimir lo siguiente:
Error atrapadoUsar el formateo de formato para enviar un mensaje personalizado
El siguiente ejemplo muestra cómo usar la función FormatMessage para lanzar una excepción con un mensaje personalizado:
SYS EXEC.Sp_addmessage @msgnum = 50001,En este caso, la función FormatMessage nos permite agregar los mensajes personalizados, incluidas las variables. Nuevamente, puede verificar los documentos en el servidor SQL SP_ADDMessage () para obtener más información.
El mensaje de error resultante es el siguiente:
Error SQL [50001] [S0001]: un mensaje personalizado que incluye variable: 100Conclusión
Esta publicación discutió cómo podría usar la cláusula de lanzamiento en el servidor SQL para plantear una excepción.
Gracias por leer!