select
Se pueden hacer comparaciones dentro del SELECT, por ejemplo que el n煤mero de meses trabajados sea mayor que doce y que la persona tenga comisi贸n???
te puedo meter la polla hasta que te salga leche por las orejas?
Tal vez esto te sirva
Asignaci贸n de Datos
Begin
Variable := null;
Variable := valor;
Variable := constante;
Variable := expresi贸n;
...
End;
Condicionamiento If / ElsIf / End If
IF condici贸n THEN
Sentencias
ELSIF condici贸n THEN
Sentencias
END IF;
El Ciclo Loop
LOOP
EXIT WHEN condici贸n;
END LOOP;
LOOP
IF condici贸n THEN
EXIT;
END IF;
END LOOP;
El Ciclo For
FOR variable IN [REVERSE] valor_inicial .. valor_final LOOP
EXIT WHEN condici贸n;
END LOOP;
El Ciclo While
WHILE condici贸n LOOP
EXIT WHEN condici贸n;
END LOOP;
El Select en PL/SQL
SELECT campos
INTO variables
FROM tablas
WHERE condici贸n;
Excepciones
EXCEPTION
WHEN excepci贸n THEN sentencia;
WHEN OTHER THEN sentencia;
END;
Excepciones m谩s Conocidas
Dup_val_on_index Violaci贸n en llave primaria o 铆ndice 煤nico
No_data_found No se encontr贸 registro
Too_many_rows Un select que debe devolver una fila devuelve varias
Invalidate_number N煤mero inv谩lido (Cuando se intenta convertir letras a n煤meros)
Value_error El valor no es permitido en el campo (Ocurre tambi茅n cuando se asigna cadenas superan la longitud establecida)
Zero_divide Divisi贸n por cero
Invalid_cursor Cuando se est谩 intentado cerrar un cursor ya cerrado
Cursor_already_open Cuanto se est谩 intentando abrir un cursor ya abierto
Program_Error Error de Memoria
Timeout_resource Ocurren cuando se trata de poner candado a un registro y no lo logra hacer
Login_denied Login denegado
Para obligar ir a una excepci贸n se puede utilizar la sentencia RAISE, la cual act煤a como un GOTO hacia la excepci贸n indicada, veamos:
RAISE [variable | excepci贸n];
Asignaci贸n de Datos
Begin
Variable := null;
Variable := valor;
Variable := constante;
Variable := expresi贸n;
...
End;
Condicionamiento If / ElsIf / End If
IF condici贸n THEN
Sentencias
ELSIF condici贸n THEN
Sentencias
END IF;
El Ciclo Loop
LOOP
EXIT WHEN condici贸n;
END LOOP;
LOOP
IF condici贸n THEN
EXIT;
END IF;
END LOOP;
El Ciclo For
FOR variable IN [REVERSE] valor_inicial .. valor_final LOOP
EXIT WHEN condici贸n;
END LOOP;
El Ciclo While
WHILE condici贸n LOOP
EXIT WHEN condici贸n;
END LOOP;
El Select en PL/SQL
SELECT campos
INTO variables
FROM tablas
WHERE condici贸n;
Excepciones
EXCEPTION
WHEN excepci贸n THEN sentencia;
WHEN OTHER THEN sentencia;
END;
Excepciones m谩s Conocidas
Dup_val_on_index Violaci贸n en llave primaria o 铆ndice 煤nico
No_data_found No se encontr贸 registro
Too_many_rows Un select que debe devolver una fila devuelve varias
Invalidate_number N煤mero inv谩lido (Cuando se intenta convertir letras a n煤meros)
Value_error El valor no es permitido en el campo (Ocurre tambi茅n cuando se asigna cadenas superan la longitud establecida)
Zero_divide Divisi贸n por cero
Invalid_cursor Cuando se est谩 intentado cerrar un cursor ya cerrado
Cursor_already_open Cuanto se est谩 intentando abrir un cursor ya abierto
Program_Error Error de Memoria
Timeout_resource Ocurren cuando se trata de poner candado a un registro y no lo logra hacer
Login_denied Login denegado
Para obligar ir a una excepci贸n se puede utilizar la sentencia RAISE, la cual act煤a como un GOTO hacia la excepci贸n indicada, veamos:
RAISE [variable | excepci贸n];
