marcela
/Structured Query Language)
1
Conceptos
• Definición
– PL/SQL es un lenguaje procedimental diseñado por Oracle
para trabajar con la base de datos. Soportatodos los
comandos de consulta y manipulación de datos,
aportando al lenguaje SQL las estructuras de control
propios de los lenguajes procedimentales
• Propósito
– Permite construir programas queincluyen bloques
anónimos, procedimientos, funciones y paquetes
2
Bloque PL/SQL
Un programa PL/SQL se
estructura utilizando bloques,
es decir, la unidad mínima de
trabajo es el bloque ycada
bloque puede incluir tres
secciones
3
Bloque PL/SQL
1. Declare; se declaran todas la constantes,
variables, cursores, excepciones de usuario
• Tipos de datos más comunes: number,char,
varchar, date, boolean, real, float, integer
• Sentencias Declarativas
Variable: [ NOT NULL ] [ { := | DEFAULT
} ]
Constante : CONSTANT :=
Asignación : variable :=
• DeclaraciónImplícita
Atributo %type
Atributo %rowtype
var tabla%ROWTYPE
var cursor%ROWTYPE
4
Bloque PL/SQL
2. Begin; contiene las sentencias ejecutables del
bloque
• Control de decisión
IF
IFTHEN [ { ELSIF THEN
} ] [ ELSE ] END IF;
• Control de Flujo
WHILE
WHILE LOOP
END LOOP;
FOR
FOR IN [ REVERSE ] ..... LOOP
END LOOP
Bloque PL/SQL
2. Begin; contiene lassentencias ejecutables del
bloque
Asignar valores: Clausula SELECT ......INTO para
asignar valor devuelto a una variable
• SELECT INTO FROM
[ WHERE . . .
• El resultado de la expresión SELECT...INTO debe ser
una sola fila.
– Si el resultado es más de una fila se carga la
excepción TOO_MANY_ROWS
– Si el resultado no devuelve valor se carga la
excepción NO_DATA_FOUND
6
Bloque PL/SQL2. Begin; contiene las sentencias ejecutables del
bloque
Interacción con el usuario
• El procedimiento DBMS_OUTPUT.PUT_LINE ()
dirige la salida a la salida estándar
Bloque PL/SQL
3....
Regístrate para leer el documento completo.