E.U.

Informática
U.L.P.G.C.
Introducción a - 1
Introducción a Oracle
Introducción a - 2 E.U. Informática - U.L.P.G.C.
Sistema de Gestión de Bases de
Datos Relacional de Oracle 8
Tablas de
usuarios
Diccionario
de datos
Servidor de
Bases de Datos
Introducción a - 3 E.U. Informática - U.L.P.G.C.
Sistema de Gestión de Bases de
Datos Relacional de Oracle 8
• Proporciona todas las ventajas del modelo
relacional
• Su servidor de bases de datos ofrece
características de seguridad que controlan
muy eficazmente:
– la forma en que se accede y se usa la base de datos
– la integridad operacional de los datos
– la disponibilidad de los mismos
• Además incluye PL/SQL
– un motor que proporciona la capacidad de almacenar y
ejecutar unidades de programas


Introducción a - 4 E.U. Informática - U.L.P.G.C.
Comunicación con un SGBDR
usando SQL
Base de datos
SQL> SELECT loc
2 FROM dept;
Se escribe la
sentencia SQL
Se envía la sentencia
a la base de datos
LOC
-------------
NEW YORK
DALLAS
CHICAGO
BOSTON
Se muestran los
datos
D
Introducción a - 5 E.U. Informática - U.L.P.G.C.
Servidor y herramientas Oracle
SQL PL/SQL
Oracle 8
Aplicaciones
Tablas de
datos
Diccionario
de datos

Base de datos
SQL* Plus
Developer
Designer
Discoverer
Introducción a - 6 E.U. Informática - U.L.P.G.C.
Servidor y herramientas Oracle
• El S.G.B.D. relacional es el producto central de
Oracle
• Incluye el servidor de Oracle (Oracle Server 8)
y varias herramientas de apoyo a los usuarios
en
– el mantenimiento,
– la monitorización y
– el manejo real de los datos
• El diccionario de datos es uno de los
componentes más importantes del servidor
– Consiste de un conjunto de tablas y vistas que
proporcionan una descripción de la base de datos
Introducción a - 7 E.U. Informática - U.L.P.G.C.
Servidor y herramientas Oracle
• El S.G.B.D. relacional se encarga, entre otras,
de las siguientes tareas:
– Administrar el almacenamiento y la definición de los datos
– Controlar y restringir el acceso a los datos y gestionar la
concurrencia
– Proporcionar medios para las copias de seguridad y la
recuperación
– Responder a las sentencias SQL y PL/SQL
* PL/SQL extiende a SQL, añadiéndole características
procedimentales
Introducción a - 8 E.U. Informática - U.L.P.G.C.
SQL, PL/SQL y SQL*Plus
• Todos los programas y usuarios utilizan las
sentencias de SQL y PL/SQL para acceder y
manipular los datos almacenados en la base
de datos Oracle
– Algunas herramientas y algunos programas de aplicación
no usan directamente SQL ni PL/SQL para acceder a la
base de datos
* En su lugar se trabaja con botones o cajas de selección
* Pero estos programas los usan implícitamente en los
métodos asociados a esos objetos
• SQL*Plus es una herramienta Oracle que
reconoce y presenta al servidor sentencias
SQL y PL/SQL para su ejecución
– Contiene su propio lenguaje de comandos

Introducción a - 9 E.U. Informática - U.L.P.G.C.
Sentencias SQL
SELECT

INSERT
UPDATE
DELETE

CREATE
ALTER
DROP
RENAME
TRUNCATE

COMMIT
ROLLBACK
SAVEPOINT

GRANT
REVOKE
LMD de recuperación
LMD de modificación
LDD
Control de transacciones
Control de seguridad
Introducción a - 10 E.U. Informática - U.L.P.G.C.
PL/SQL
• PL/SQL (Procedural Language/SQL) es una
extensión procedimental de SQL
– Ofrece características como encapsulación, manejo de
excepciones, orientación a objetos, ...
• Permite incluir las sentencias y tipos de datos
SQL en sus bloques de código
Introducción a - 11 E.U. Informática - U.L.P.G.C.
Entorno PL/SQL
Bloque
PL/SQL
Motor PL/SQL
Servidor Oracle
Ejecutor de
sentencias
procedimentales
PL/SQL
SQL
Ejecutor de sentencias SQL
Bloque
PL/SQL
•El motor PL/SQL puede residir
localmente en un cliente (en una
herramienta como developer),
independiente del motor PL/SQL
que también existe en el servidor
•Se usará uno u otro dependiendo
de quién lo invoque
•El motor del cliente puede liberar
de trabajo al motor del servidor,
procesando los datos locales a la
aplicación
Herramienta o programa
D
Introducción a - 12 E.U. Informática - U.L.P.G.C.
Beneficios de PL/SQL
Integración
Aplicación
(Developer)
Servidor
Oracle
Biblioteca
compartida
•Procedimientos
•Funciones
•Procedimientos
•Funciones
•Disparadores
•Paquetes
Almacenados
•Procedimientos
•Funciones
•Disparadores
Introducción a - 13 E.U. Informática - U.L.P.G.C.
Beneficios de PL/SQL
Desarrollo modular
Bloques
anónimos
Disparadores
de
aplicación
Procedimientos
y funciones
almacenados
Disparadores
de
base de datos
Paquetes
DECLARE
BEGIN
EXCEPTION
END;
Procedimientos
y funciones
de aplicación
Introducción a - 14 E.U. Informática - U.L.P.G.C.
Beneficios de PL/SQL
• Es portátil
– Los programas PL/SQL pueden ejecutarse en cualquier
sistema operativo o plataforma donde se pueda ejecutar el
servidor Oracle, sin necesidad de reajustarlas a cada
entorno
– Permite traspasar código bidireccionalmente entre el
servidor y la aplicación
• Incorpora el manejo de errores
– Procesa
* los errores del servidor Oracle
* y los errores definidos por el usuario
con rutinas de manejo de excepciones
D
Introducción a - 15 E.U. Informática - U.L.P.G.C.
Principales tablas usadas
EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
--------- ---------- --------- --------- --------- --------- --------- ---------
7839 KING PRESIDENT 17-NOV-81 5000 10
7698 BLAKE MANAGER 7839 01-MAY-81 2850 30
7782 CLARK MANAGER 7839 09-JUN-81 1500 10
7566 JONES MANAGER 7839 02-APR-81 2975 20
7654 MARTIN SALESMAN 7698 28-SEP-81 1250 1400 30
7499 ALLEN SALESMAN 7698 20-FEB-81 1600 300 30
7844 TURNER SALESMAN 7698 08-SEP-81 1500 0 30
7900 JAMES CLERK 7698 03-DEC-81 950 30
7521 WARD SALESMAN 7698 22-FEB-81 1250 500 30
7902 FORD ANALYST 7566 03-DEC-81 3000 20
7369 SMITH CLERK 7902 17-DEC-80 800 20
7788 SCOTT ANALYST 7566 09-DEC-82 3000 20
7876 ADAMS CLERK 7788 12-JAN-83 1100 20
7934 MILLER CLERK 7782 23-JAN-82 1300 10
EMP
DEPT
DEPTNO DNAME LOC
--------- -------------- ----------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON

GRADE LOSAL HISAL
--------- --------- ---------
1 700 1200
2 1201 1400
3 1401 2000
4 2001 3000
5 3001 9999
SALGRADE
D