Conceptos Clave de Bases de Datos y Comandos Oracle SQL/PLSQL
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 5,67 KB
Conceptos Fundamentales de Bases de Datos
Definiciones Clave
- Base de Datos: Es un conjunto de datos pertenecientes a un mismo contexto, almacenado sistemáticamente para su utilización, que incluye esquemas, vistas, definiciones, etc.
- Esquema de BD: Estructura que contiene tablas, relaciones, también llamado lenguaje formal soportado por el sistema de bases de datos. Los esquemas generalmente son almacenados en los diccionarios de datos.
- Esquema Conceptual: Contiene mapa de conceptos y relaciones. Es una herramienta gráfica.
- Esquema Lógico: Contiene entidades, atributos y relaciones.
- Esquema Físico: Es la aplicación de un esquema lógico.
- Esquema Objeto: Base de datos objeto (ej. Oracle).
- Catálogo: Es una base de datos que permite almacenar los objetos dentro de la base de datos.
- DDL: Lenguaje de Definición de Datos (CREATE, ALTER, DROP).
- DML: Lenguaje de Manipulación de Datos (INSERT, UPDATE, DELETE).
- Índice: Cluster que permite almacenar la PK en páginas.
- Instancia de BD: Conjunto de procesos del servidor que tiene su propia área global de memoria y una base de datos asociada a ella.
- Tablespace: División lógica de la base de datos.
- Segmento: Es la separación entre diversos objetos que se pueden almacenar en un espacio de tablas.
- Estructura de una BD: Tablas, columnas, restricciones, usuarios, esquemas, índices, cluster, vistas, secuencias, procedimientos.
- Vista: Relación virtual entre tablas y vistas de una base de datos, almacenada como objeto en la BD.
- Vista Materializada: Asegura que el servidor de BD puede asignar correctamente la operación de inserción, actualización o eliminación a través de triggers.
El Catálogo o Diccionario de BD
Tiene varias categorías de vistas:
- DBA: Accesible para usuarios con privilegios de administrador.
- ALL: Muestra objetos accesibles para el usuario actual (dominio privilegiado y actual).
- USER: Muestra objetos propiedad del usuario actual (dominio actual).
Roles y PL/SQL
- Rol: Conjunto de privilegios que se pueden otorgar a otro usuario o rol.
-
PL/SQL: Es un lenguaje de programación incorporado en Oracle.
- Contiene secciones como DECLARE, BEGIN, EXCEPTION, END.
Ejemplos de Comandos SQL y PL/SQL en Oracle
Creación de Objetos
Crear Tabla
create table cliente (
cod_cli integer not null,
nom_cli varchar2(15) not null,
apell_cli varchar2(20) not null,
dir_cli varchar2(35) not null,
ciudad_cli varchar2(20),
cpostal varchar2(10),
fono varchar2(12) not null,
empresa varchar2(35),
constraint PK_CLIENTE primary key (cod_cli)
);
Crear Índice
create index DEPT_JEFE_DEPT_FK on departamento (
jefe_dept ASC
);
Crear Vista
Creamos la vista:
create view mostrar_jefes as
select e.nom_emp as Nombre_empleado, e.apell_emp as Apellido_empleado,
jefe.nom_emp as Nombre_jefe, jefe.apell_emp as Apellido_jefe, jefe.nom_dept as Nombre_depto_jefe
from empleado e,
(select nom_emp, apell_emp, cod_jefe, nom_dept from empleado
join departamento on cod_emp = jefe_dept) jefe
where e.cod_jefe = jefe.cod_jefe
group by e.nom_emp, e.apell_emp, jefe.nom_emp, jefe.apell_emp, jefe.nom_dept;
Gestión de Usuarios y Privilegios
Crear Usuario
CREATE USER ADMINISTRADOR IDENTIFIED BY ADMIN
DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMP
QUOTA 500K ON USERS;
Expirar Contraseña
PASSWORD EXPIRE;
Otorgar Privilegios
- Dar privilegio de crear sesión:
GRANT CREATE SESSION TO ADMINISTRADOR;
Dar privilegio para borrar usuario:GRANT DROP USER TO ADMINISTRADOR;
Dar privilegios de crear tablas, procedimientos, funciones, etc.:GRANT CREATE USER, ALTER USER, DROP USER TO ahernandez;
Dar permisos a una tabla (Ventas) para un usuario particular:GRANT SELECT, INSERT, UPDATE ON analista.venta TO jperez;
Dar privilegio de profile al administrador:GRANT ALTER PROFILE TO ADMINISTRADOR;
Conectarse como usuario y dar a otro usuario permiso para seleccionar con opción de otorgar:GRANT SELECT ON PRUEBA1.CODIGOS TO PRUEBA2 WITH GRANT OPTION;
Modificar Usuario
- Modificar tablespace por defecto:
ALTER USER ADMINISTRADOR DEFAULT TABLESPACE feo;
Desbloquear cuenta:ALTER USER ADMINISTRADOR ACCOUNT UNLOCK;
Gestión de Roles
- Crear rol "secreto" identificado por "total":
CREATE ROLE SECRETO IDENTIFIED BY TOTAL;
Asignar rol a otro usuario:GRANT SECRETO TO PRUEBA;
Borrar rol:DROP ROLE ADMINISTRADOR;
Revocar Privilegios
REVOKE ... FROM ...;
Borrar Usuario
- Borrar usuario en cascada:
DROP USER ... CASCADE;
Otros Comandos CREATE
CREATE SEQUENCE
CREATE SYNONYM FOR
CREATE INDEX
CREATE OR REPLACE AS