Las sentencias de control en SQL son fundamentales para gestionar el flujo de ejecución y manejar errores en las consultas. La sentencia GOTO permite desviar el flujo hacia una etiqueta específica, aunque se desaconseja su uso en favor de la estructura TRY-CATCH para una mejor gestión de errores.
La sentencia goto nos permite desviar el flujo de ejecución hacia una etiqueta. se desaconseja el uso GOTO, recomendándose el uso de TRY - CATCH para la gestión de errores
DECLARE @divisor int,
@dividendo int,
@resultado int SET @dividendo = 100
SET @divisor = 0
SET @resultado = @dividendo/@divisor
IF @@ERROR > 0
GOTO error
PRINT 'No hay error'
RETURN
error:
PRINT 'Se ha producido una division por cero'
CASE
La sentencia CASE permite evaluar diferentes opciones, por cada opción se realiza una instrucción específica
CASE
WHEN THEN
WHEN THEN
ELSE -- Valor por defecto
END
WHILE
El bucle WHILE se repite mientras expresión se evalué como verdadero.
Es el único tipo de bucle del que dispone Transact SQL
WHILE
BEGIN
END
IF
Permite la ejecución de una o varias líneas de código según una condición especificada en la cláusula IF, en caso de que la condición sea verdadera se ejecuta el bloque de código, caso contrario se ejecuta el bloque de código especificado en la cláusula ELSE(opcional).
IF ()
BEGIN
...
END
ELSE IF ()
BEGIN
...
END
ELSE
BEGIN
...
END