ESCUELA POLITÉCNICA NACIONAL
FACULTAD DE INGENIERÍA DE SISTEMAS
CARRERA DE INGENIERÍA EN
COMPUTACIÓN
Consulta de:
Base de Datos Avanzadas
Nombres: Bósquez Jorge
Tema: Consultar el lenguaje PL/SQL de Oracle.
Objetivos
- Comprender los fundamentos del lenguaje PL/SQL.
- Identificar la estructura y componentes principales de un bloque PL/SQL.
- Analizar las ventajas del uso de PL/SQL en entornos Oracle.
- Reconocer las diferencias entre SQL y PL/SQL.
- Explorar ejemplos prácticos de procedimientos, funciones y triggers.
¿Qué es PL/SQL?
PL/SQL (Procedural Language/Structured Query Language) es un lenguaje de
programación procedimental propio de Oracle, diseñado para ampliar las capacidades del
lenguaje SQL tradicional. Permite la definición de estructuras de control, manejo de errores,
creación de procedimientos, funciones, paquetes, y triggers, todo dentro del entorno del
sistema de gestión de bases de datos Oracle.
Características Principales de PL/SQL
- Es un lenguaje procedural integrado en Oracle Database.
- Permite el uso de variables, condiciones, bucles, y estructuras de control.
- Facilita la programación modular mediante procedimientos y funciones.
- Tiene soporte para el manejo de errores mediante excepciones.
- Se ejecuta dentro del servidor Oracle, mejorando el rendimiento.
Estructura de un Bloque PL/SQL
Todo programa PL/SQL está compuesto por bloques que pueden anidarse entre sí. Un
bloque PL/SQL tiene la siguiente estructura:
DECLARE
-- Declaración de variables
BEGIN
-- Instrucciones ejecutables
EXCEPTION
-- Manejo de errores
END;
Diferencias entre SQL y PL/SQL
- SQL es un lenguaje declarativo; PL/SQL es un lenguaje procedimental.
- SQL permite manipular datos; PL/SQL permite crear bloques lógicos con lógica compleja.
- PL/SQL permite usar variables, bucles y estructuras de decisión.
Ejemplos Prácticos
1. Procedimiento para insertar un empleado:
CREATE OR REPLACE PROCEDURE insertar_empleado(
p_id NUMBER, p_nombre VARCHAR2
) AS
BEGIN
INSERT INTO empleados(id, nombre) VALUES(p_id, p_nombre);
END;
2. Función para calcular bono:
CREATE OR REPLACE FUNCTION calcular_bono(salario NUMBER) RETURN NUMBER IS
BEGIN
RETURN salario * 0.10;
END;
3. Trigger que evita inserciones los domingos:
CREATE OR REPLACE TRIGGER prevenir_insert_domingos
BEFORE INSERT ON empleados
FOR EACH ROW
BEGIN
IF TO_CHAR(SYSDATE, 'DY') = 'DOM' THEN
RAISE_APPLICATION_ERROR(-20001, 'No se permiten inserciones los domingos.');
END IF;
END;
Ventajas del Uso de PL/SQL
- Mayor rendimiento al ejecutar bloques directamente en el servidor.
- Modularidad mediante el uso de procedimientos y funciones.
- Mayor control en el manejo de errores y validaciones.
- Mejora la seguridad al encapsular la lógica dentro de la base de datos.
Conclusiones y Recomendaciones
PL/SQL es un lenguaje robusto y versátil que complementa a SQL dentro del entorno Oracle.
Su uso permite desarrollar aplicaciones más eficientes, seguras y estructuradas. Se
recomienda dominar su sintaxis y buenas prácticas para aprovechar al máximo su potencial
en el desarrollo de soluciones empresariales.
Bibliografía
1. Oracle Documentation: PL/SQL User's Guide and Reference.
2. Elmasri, Ramez; Navathe, Shamkant. Fundamentals of Database Systems.
3. Coronel, Carlos. Database Systems: Design, Implementation, & Management.