| Convenio de derechos… en Ciencia y Desarrollo en Améric… | |
| marta en Loja Ecuador, Conozca mi … | |
| vane en Loja Ecuador, Conozca mi … |

My site is worth $2,053.
How much is yours worth?
| L | M | X | J | V | S | D |
|---|---|---|---|---|---|---|
| « Oct | ||||||
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 | ||||||
|
Mayo 16, 2008 a las 8:24 pm
En este capítulo vimos como se crean los procedimientos dentro de PL/SQL. Los PROCEDURES nos permiten definir tareas que podemos utilizar una y otra vez, tal como en los Lenguajes de alto nivel.
El ejemplo trata un caso ficticio de que necesitamos añadir nuevos registros a la tabla locations de nuestra empresa. Aquí los parámetros obligatorios son definidos por los campos NOT NULL de la tabla, con el detalle que el campo country_id sino es especificado se toma el valor por defecto US (definido en el PROCEDURE), mientras que para locations de otro país hace falta ingresar su country_id.
Veamos:
1. Creamos el PROCEDURE
CREATE OR REPLACE PROCEDURE insert_loc
(p_city IN LOCATIONS.city%TYPE,
p_co_id IN LOCATIONS.country_id%TYPE DEFAULT ‘US’)
IS
BEGIN
INSERT INTO LOCATIONS(location_id, city, country_id)
VALUES (locations_seq.NEXTVAL, p_city, p_co_id);
END insert_loc;
________________Todo bien
Salida:
Procedure created
_________________Luego insertamos los valores desde un bloque anónimo
BEGIN
insert_loc(‘Miami’);
insert_loc(‘Montreal’, ‘CA’);
END;
Salida:
PL/SQL procedure successfully completed.
____________________________
3. Comprobamos los nuevos valores agregados:
SELECT * FROM LOCATIONS ORDER BY LOCATION_ID
Y en la salida se ven a Miami y Montreal en US y CA respectivamente.