Analista

Páginas: 6 (1431 palabras) Publicado: 1 de diciembre de 2012
Subprogramas:
Subprogramas:
PROCEDIMIENTOS Y FUNCIONES
PROCEDIMIENTOS


Base de Datos II

1

Subprogramas
Son bloques PL/SQL identificados por un nombre.
Eventualmente, estos bloques pueden ser invocados con
parámetros.


Base de Datos II

2

Los Subprogramas también cuentan con:
Una sección Declarativa, con la declaración de tipos,
cursores, variables, etc. Estos ítemsson locales y
visibles solo dentro del subprograma
Una sección Ejecutable, con sentencias que asignan
valores, control de ejecución y manipulación de datos
Una sección de Excepciones, que es opcional, para el
manejo de errores en tiempo de ejecución



Base de Datos II

3

Componentes del Subprograma
CABECERA – obligatorio
CABECERA – obligatorio
– Nombre del subprograma, tipo yargumentos
– Nombre del subprograma, tipo y argumentos
AREA DECLARATIVA – opcional
AREA DECLARATIVA – opcional
– Identificadores locales
– Identificadores locales
AREA EJECUTABLE – obligatorio
AREA EJECUTABLE – obligatorio
– Sentencias SQL
– Sentencias SQL
– Sentencias de control PL/SQL
– Sentencias de control PL/SQL
MANEJO DE EXCEPCIONES – opcional
MANEJO DE EXCEPCIONES – opcional
–Acciones que se ejecutan cuando hay error
– Acciones que se ejecutan cuando hay error
END; – obligatorio
END; – obligatorio


Base de Datos II

4

PROCEDIMIENTOS
Un procedimiento es un subprograma que realiza una
acción especifica. Esta unidad de programa es
compilada en el esquema de la base de datos.
Pueden aceptar argumentos
Una vez compilado, el identificador del procedimiento(creado con CREATE PROCEDURE) se convierte en
el nombre de un objeto de la base de datos que puede
ser ejecutado desde cualquier interfaz que pueda
ejecutar sentencias SQL


Base de Datos II

5

Creación de Procedimientos: Sintaxis

PROCEDURE nombre
PROCEDURE nombre
[(parámetro,...)]
[(parámetro,...)]
IS
IS
Bloque pl/sql;
Bloque pl/sql;

Donde la sintaxis del parámetro es :Nombre_parámetro [IN
Nombre_parámetro [IN
[{:= | DEFAULT}
[{:= | DEFAULT}

| OUT | IN OUT] tipo_dato
| OUT | IN OUT] tipo_dato
expresión]
expresión]

No debe especificar la longitud del tipo de dato, y
tampoco puede incluir constraints.
Facultad Politécnica

Base de Datos II

6

Creando un Procedimiento: Pautas

Use la cláusula CREATE O REPLACE al
construir su procedimiento enSQL*Plus.
Indique los parámetros y su tipo
Empiece los bloques PL/SQL con IS.
Ingrese declaración de variables o la
sentencia BEGIN (no se usa DECLARE)


Base de Datos II

7

Modos de utilización de parámetros
Procedure
IN Argument

Entorno
de llamada

OUT Argument
IN OUT Argument
(DECLARE)
BEGIN
EXCEPTION
END;

Facultad Politécnica

Base de Datos II

8

Modos paralos Parámetros
metros
Formales
Formales
IN (Por default)

OUT (debe
especificarse)

IN OUT (debe
especificarse)

El valor es pasado al El valor es retornado al Se pasa un valor al
subprograma
ambiente que llama
subprograma y éste
retorna a su vez un valor
al ambiente que llama
El parámetro puede ser
un literal, una expresión,
una
constante
o
variable inicializadaFacultad Politécnica

Debe
definirse
una
variable en el programa
‘llamador’, pero dicha
variable no requiere ser
inicializada

Base de Datos II

Debe
definirse
una
variable en el programa
‘llamador’
y
dicha
variable
debe
estar
inicializada

9

Creación de Procedimientos: Ejemplo

PROCEDURE p_actualizar_stock
PROCEDURE p_actualizar_stock
(p_id_art
IN NUMBER,
(p_id_art
INNUMBER,
p_cantidad IN NUMBER)
p_cantidad IN NUMBER)
IS
IS
BEGIN
BEGIN
UPDATE b_articulos
UPDATE b_articulos
SET
stock_actual = stock_actual + p_cantidad
SET
stock_actual = stock_actual + p_cantidad
WHERE id = p_id_art;
WHERE id = p_id_art;
COMMIT;
COMMIT;
END cambiar_salario;
END cambiar_salario;

Facultad Politécnica

Base de Datos II

10

Declarando Variables y...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Analista
  • ANALISTA
  • Analista
  • Analista
  • Analista
  • ANALISTA
  • Analista
  • Analista

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS