Вы находитесь на странице: 1из 17

ORACLE: Es una tecnología de base de datos relacional.

PLSQL: Significa "lengua de procedimiento extensiones a SQL", y puede ser


utilizado en bases de datos Oracle. PLSQL está estrechamente integrado en el
lenguaje SQL, sin embargo, añade que la programación no se construye a SQL
nativo.

TABLAS

La sentencia CREATE TABLE le permite crear y definir una tabla. La sintaxis


básica para un comando CREATE TABLE es la siguiente:

PROMPT “Creando tabla nombre de la tabla”


CREATE TABLE nombre de la tabla
(
Campo 1 tipo de dato,
Campo 2 tipo de dato,
...
);

Cada columna debe tener un dato. La columna debe ser definida como "nulo"
o "no es nulo" y si este valor se deja en blanco, la base de datos supone "nulo"
es la opción predeterminada.

EJEMPLO:

PROMPT "Creando tabla Pais"


CREATE TABLE Division.Pais
(
idPais number (3),
nombre varchar2(30),
);

ALTER TABLE: Le permite cambiar el nombre de una tabla existente. También


se puede utilizar para agregar, modificar o eliminar una columna de una tabla
existente.

• Cambiar el nombre de una tabla : La sintaxis básica para cambiar


el nombre de una tabla es la siguiente:

ALTER TABLE nombre de la tabla


RENAME TO nuevo nombre de la tabla;

• Adición de la columna (s) a una tabla:


Para agregar una columna a una tabla existente, la sintaxis de ALTER
TABLE es la siguiente:
ALTER TABLE nombre de la tabla
ADD nombre de la columna tipo de dato;

• Modificación de la columna (s) en una tabla: Para modificar una


columna en una tabla existente, la sintaxis de ALTER TABLE es la
siguiente:

ALTER TABLE nombre de la tabla


MODIFY nombre de la columna tipo de dato;

• Eliminar una columna (s) en una tabla: Para excluir a una columna
en una tabla existente, la sintaxis de ALTER TABLE es la siguiente:

ALTER TABLE nombre de la tabla


DROP COLUMN nombre de la columna;

DROP TABLE: El DROP TABLE le permite eliminar una tabla a partir de la base
de datos. La sintaxis básica para la declaración de DROP TABLE es la
siguiente:

DROP TABLE nombre de la tabla;

PRIMARY KEY

Una clave principal es un único campo o combinación de campos que se


define únicamente un registro. Ninguno de los campos que forman parte de la
clave principal puede contener un valor nulo. Una tabla sólo puede tener una
clave principal.

• Usando una sentencia CREATE TABLE: La sintaxis para crear una


clave principal mediante una sentencia CREATE TABLE es la siguiente:

CREATE TABLE nombre de la tabla


(
Campo 1 tipo de dato,
Campo 2 tipo de dato,
...
CONSTRAINT nombre de la PK PRIMARY KEY (nombre del campo)

);

EJEMPLO:

PROMPT "Creando tabla Pais"


CREATE TABLE Pais
(
idPais number (3),
nombre varchar2(30),
CONSTRAINT Pais_PK PRIMARY KEY (idPais)
);

• Uso de un comando ALTER TABLE: La sintaxis para crear una clave


principal en un ALTER TABLE es la siguiente:

ALTER TABLE nombre de la tabla ADD CONSTRAINT nombre de la PK


PRIMARY KEY (nombre del campo);

EJEMPLO:

PROMPT "Creando Primary Key para Pais"


ALTER TABLE Division.Pais ADD CONSTRAINT PKPais Primary key (idPais);

• Borrar un primary key: La sintaxis para borrar un clave principal es la


siguiente:

ALTER TABLE nombre de la tabla DROP CONSTRAINT nombre de la


PK;

FOREIGN KEY

Una clave externa significa que los valores en una tabla debe figurar también
en otra tabla. Una clave foránea se pueden definir ya sea en un comando
CREATE TABLE o ALTER TABLE.

• Usando una sentencia CREATE TABLE: La sintaxis para crear una


clave externa usando la sentencia CREATE TABLE es la siguiente:

CREATE TABLE nombre de la tabla


(
Campo 1 dato nulo o no nulo,
Campo 2dato nulo o no nulo,
...
CONSTRAINT nombre de la fk FOREIGN KEY (campo1)
REFERENCES nombre de la tabla (nombre del campo)
);

EJEMPLO:

PROMPT"creando tabla Ciudad"


CREATE TABLE Division.Ciudad
(
idCiudad number (5),
nombre varchar2(30)
CONSTRAINT Ciudad_pk PRIMARY KEY (id Ciudad)
);

PROMPT "Creando tabla Pais"


CREATE TABLE Pais
(
idPais number (3),
nombre varchar2(30),
idCiudad number (3),
CONSTRAINT Ciudad_fk FOREIGN KEY (idCiudad) REFERENCES Ciudad
(idCiudad)
);

• Uso de un comando ALTER TABLE: La sintaxis para crear una clave


foránea en una sentencia ALTER TABLE es la siguiente:

ALTER TABLE nombre de la tabla ADD CONSTRAINT nombre de la


fk FOREIGN KEY (nombre del campo) REFERENCES nombre de la
tabla relacionada (nombre del campo);

EJEMPLO:

PROMPT "Creando Foreing Key para Pais"


ALTER TABLE Division.Pais ADD CONSTRAINT FKPais Foreign Key
(idCiudad)

• Borrar un foreign key: La sintaxis para borrar un clave foránea es la


siguiente:

ALTER TABLE nombre de la tabla DROP CONSTRAINT nombre de la


fk;

UNIQUE
Un unique es un solo campo o una combinación de campos que se define
únicamente un registro. Algunos de los campos pueden contener valores
nulos, siempre que la combinación de valores es única. El unique puede
definirse por el create table o alter table.

• Usando una sentencia CREATE TABLE: La sintaxis para crear una


única limitación utilizando una sentencia CREATE TABLE es la siguiente:

CREATE TABLE table_name CREATE TABLE nombre de la tabla


(
campo1 tipo de dato,
campo2 tipo de dato,
... ...
CONSTRAINT nombre de uk UNIQUE (nombre del campo)
);

EJEMPLO:

PROMPT "Creando tabla Pais"


CREATE TABLE Pais
(
idPais number (3),
nombre varchar2(30),
idCiudad number (3),
CONSTRAINT nombre_uk UNIQUE(nombre)
);

• Uso de un comando ALTER TABLE: La sintaxis para crear una única


limitación, en una sentencia ALTER TABLE es la siguiente:

ALTER TABLE nombre de la tabla ADD CONSTRAINT nombre de


uk UNIQUE (nombre del campo);

EJEMPLO:

PROMPT "Creando unique nombre Pais "


ALTER TABLE Division.Pais ADD CONSTRAINT "UKPais_nombre" UNIQUE
(nombre);

• Borrar un unique: La sintaxis para borrar un unique es la siguiente:

ALTER TABLE nombre de la table DROP CONSTRAINT nombre de


uk;

EJEMPLO:

PROMPT "Borrando el unique de Pais "


ALTER TABLE Division.Pais DROP CONSTRAINT "UKPais_nombre";

CHECK

El Check permite especificar una condición en cada fila de una tabla. Un


Check puede definirse ya sea en una sentencia CREATE TABLE o ALTER TABLE.

• Usando una sentencia CREATE TABLE : La sintaxis para crear un


control utilizando una limitación de CREATE TABLE es la siguiente:

CREATE TABLE table_name


(
Campo1 tipo de dato,
campo2 tipo de dato,
...
CONSTRAINT nombre del ck CHECK (nombre del campo IN
(condiciones))
);

EJEMPLO:

PROMPT "Creando tabla Pais"


CREATE TABLE Pais
(
idPais number (3),
nombre varchar2(30),
idCiudad number (3),
CONSTRAINT "CKPais_GOBIERNO" CHECK (gobierno IN('D','I','M'))
);

• Uso de un comando ALTER TABLE:

La sintaxis para crear un control en un obstáculo ALTER TABLE es la


siguiente:

ALTER TABLE nombre de la tabla ADD CONSTRAINT nombre del ck


CHECK (nombre del campo IN (condicion);

EJEMPLO:

PROMPT "Creando check gobierno Pais "


ALTER TABLE Division.Pais ADD CONSTRAINT "CKPais_GOBIERNO"
CHECK(gobierno IN('D','I','M'));

• Borrar un check: La sintaxis para borrar un check es la siguiente:

ALTER TABLE nombre de la tabla DROP CONSTRAINT nombre del


ck;

EJEMPLO:

PROMPT "Borrando check de Pais "


ALTER TABLE Division.Pais DROP CONSTRAINT "CKPais_GOBIERNO";

INDEX

Un Index es un método de ajuste rápido de permitir la recuperación de


registros. Un índice crea una entrada para cada valor que aparece en las
columnas indexadas.

CREATE INDEX: La sintaxis para crear un índice es:

CREATE INDEX nombre del index ON nombre de la tabla (nombre del


campo);

EJEMPLO:

PROMPT"CREANDO INDEX"
CREATE INDEX indice ON Division.Pais(idCiudad);

• Cambiar el nombre a un Index: La sintaxis para renombrar un index


es la siguiente:

ALTER INDEX nombre del Index RENAME TO nuevo nombre del


Index;
EJEMPLO:

ALTER INDEX índice RENAME TO índice país;

• Borrar un Index: La sintaxis para borrar un index es la siguiente:

DROP INDEX nombre del index;

EJEMPLO:

DROP INDEX índice;

INSERT

La sentencia INSERT permite insertar un solo registro o varios registros en una


tabla. La sintaxis de la sentencia INSERT es:

INSERT INTO nombre de la tabla ( campo1, campo2, campon…)


VALUES (valor1, valor2, valorn…);

EJEMPLO:

INSERT INTO Division.Pais (idPais,nombre,gobierno,idCiudad) VALUES


(1,'Colombia','D',1);

PRIVILEGIOS DEL SISTEMA

Los roles de sistema se utilizan para distribuir la disponibilidad de los


comandos del sistema utilizados para gestionar la BD. Los privilegios más
comunes están en la siguiente tabla. En ella se distinguen entre privilegios de
manejo de objetos y de gestión de la BD. La palabra clave ANY significa que
ese usuario tiene el privilegio para todos los esquemas en la BD. Hay que hacer
notar que ANY y PUBLIC no son sinónimos.

Privilegio Capacidades
Manejo de
...
Objetos
CREATE ANY INDEX Crear cualquier índice.
CREATE [PUBLIC]
Crear sinónimos [públicos].
SYNONYM
Crear tablas. El usuario debe tener cuota en el
CREATE [ANY]
espacio de tablas, o ha de tener asignado el
TABLE
privilegio UNLIMITED TABLESPACE.
CREATE [ANY] VIEW Crear vistas.
ALTER ANY INDEX Alterar cualquier índice.
ALTER ANY TABLE Alterar cualquier tabla
DROP ANY INDEX Borrar cualquier índice.
DROP ANY
Borrar cualquier sinónimo.
SYNONYM
DROP PUBLIC
Borrar sinónimos públicos.
SYNONYM
DROP ANY VIEW Borrar cualquier vista.
DROP ANY TABLE Borrar cualquier tabla.
SELECT ANY TABLE Efectuar selecciones de cualquier tabla o vista.
INSERT ANY TABLE Insertar en cualquier tabla o vista.
Borrar filas de cualquier tabla o vista, y también
DELETE ANY TABLE
truncar.
ALTER SESSION Alterar los parámetros de la sesión.
CREATE SESSION Conectarse a la BD.
Gestión de la BD ...
CREATE PROFILE Crear perfiles de usuario.
CREATE ROLE Crear roles.
CREATE ROLLBACK
Creación de segmentos de rollback.
SEGMENT
CREATE
Crear espacios de tablas.
TABLESPACE
CREATE USER Crear usuarios.
ALTER PROFILE Alterar perfiles existentes.
ALTER ANY ROLE Alterar cualquier rol.
ALTER ROLLBACK
Alterar segmentos de rollback.
SEGMENT
ALTER TABLESPACE Alterar espacios de tablas.
ALTER USER Alterar usuarios.
DROP PROFILE Borrar un perfil existente.
DROP ANY ROLE Borrar cualquier rol.
DROP ROLLBACK
Borrar un segmento de rollback existente.
SEGMENT
DROP TABLESPACE Borrar un espacio de tablas.
Borrar un usuario. Añadir CASCADE si el usuario
DROP USER
posee objetos.
ALTER DATABASE Permite una sentencia ALTER DATABASE.
GRANT ANY Otorgar cualquiera de estos privilegios.
PRIVILEGE
GRANT ANY ROLE Otorgar cualquier rol a un usario.
UNLIMITED Puede usar una cantidad de almacenamiento
TABLESPACE ilimitada.
DROP PROFILE Borrar un perfil existente.

Los privilegios se pueden agrupar en roles, para así satisfacer a distintos tipos
de usuarios. En la instalación se crea un rol llamado OSOPER que sirve para los
operarios de la máquina donde está la BD y permite realizar copias de
seguridad en frio y en caliente. Los privilegios de OSOPER son STARTUP,
SHUTDOWN, ALTER DATABASE OPEN/MOUNT, ALTER DATABASE BACKUP,
ARCHIVE LOG, RECOVER y RESTRICTED SESSION.

Se pueden crear nuevos roles. Por ejemplo, podemos crear un rol llamado
creadorCuentas que sólo pueda crear usuarios y no pueda realizar ninguna otra
operación de DBA. Las sentencias que permiten hacer esto son las siguientes:

SVRMGR> create role creadorCuentas;


Statement processed.
SVRMGR> grant create session, create user to creadorCuentas;
Statement processed.

Oracle incluye otros tres roles de sistema: CONNECT, RESOURCE y DBA, cuyos
privilegios son:

Rol Privilegios
alter session, create session, create cluster, create table,
CONNECT create view, create synonym, create sequence, create
database link
create cluster, create table, create procedure, create
RESOURCE
sequence, create trigger
todos los privilegios de sistema con la opcion with admin
DBA
option

2.4 Perfiles de Usuario

Los perfiles se utilizan para limitar la cantidad de recursos del sistema y de la


BD disponibles para un usuario. Si no se definen perfiles para un usuario se
utiliza el perfil por defecto, que especifica recursos ilimitados.

Los recursos que pueden ser limitados via perfil son los siguientes:

Recurso Descripción
El número de sesiones concurrentes que
SESSIONES_PER_USER
un usuario puede tener en una instancia.
El tiempo de CPU, en centenas de
CPU_PER_SESSION
segundos, que una sesión puede utilizar.
El número de minutos que una sesión
CONNECT_TIME
puede permanecer activa.
El número de minutos que una sesión
IDLE_TIME puede permanecer sin que sea utilizada
de manera activa.
LOGICAL_READS_PER_SESSIO El número de bloques de datos que se
N pueden leer en una sesión.
El número de bloques de datos que se
LOGICAL_READS_PER_CALL
pueden leer en una operación.
La cantidad de espacio privado que una
PRIVATE_SGA sesión puede reservar en la zona de SQL
compartido de la SGA.
El número de total de recursos por
sesión, en unidades de servicio. Esto
resulta de un calculo ponderado de
CPU_PER_SESSION, CONNECT_TIME,
COMPOSITE_LIMIT
LOGICAL_READS_PER_SESSION y
PRIVATE_SGA, cuyos pesos se pueden
variar con el comando ALTER RESOURCE
COST.

Los perfiles se pueden crear via el comando CREATE PROFILE, y se pueden


modificar con la sentencia ALTER PROFILE.

En general, el perfil por defecto debe ser adecuado para los usuarios normales;
los usuarios con requerimientos especiales deberían tener perfiles especiales.

2.5 Cuentas BD sobre Cuentas SO

Los usuarios pueden entrar en la BD una vez que han dado un nombre de
usuario y una palabra de paso. Sin embargo, es posible aprovecharse del
Sistema Operativo para obtener un nivel adicional de autentificación.

La cuenta de la BD y del SO pueden relacionarse de manera que la de la BD se


diferencie sólo en un prefijo de la cuenta del SO. Este prefijo se fija en el
parámetro OS_AUTHENTIC_PREFIX del fichero init.ora. Por defecto esta puesto a
"OPS$", pero puede tomar cualquier forma, incluso ser la cadena nula, "", con
lo que no existe prefijo que diferencie las cuentas en la BD y en el SO.

Por ejemplo, consideremos la cuenta del SO llamada alu10. La correspondiente


cuenta en la BD sería OPS$ALU10. Cuando el usuario alu10 está en activo en el
SO, puede acceder a su cuenta OPS$ALU10 sin especificar el password, como
se muestra a continuación:

$ sqlplus /

En este caso el carácter "/" toma el lugar de la combinación del nombre de


usuario y del password que debería aparecer.
Las cuentas pueden ser creadas con passwords aunque no vaya a ser utilizado.
Ya que de este modo será posible acceder a la cuenta de OPS$ALU10 desde
otra cuenta diferente a la alu10 del SO. La sentencia de creación de la cuenta
OPS$ALU10 puede ser la siguiente:

SVRMGR> create user ops$alu10


2> identified by 01ula
3> default tablespace users
4> temporary tablespace temp;

Así, la forma de conectarse como OPS$ALU10 desde una cuenta del SO


diferente es:

$ sqlplus ops$alu10/01ula

Existen dos formas de evitar este problema. La primera es creando el usuario


BD sin especificar un password, utilizando la claúsula IDENTIFIED EXTERNALLY.
De esta manera evitamos la necesidad de expecificar un password para la
cuenta, obligando a la conexión entre las cuentas de la BD y del SO:

SVRMGR> create user ops$alu10


2> identified externally
3> default tablespace users
4> temporary tablespace temp;

La otra manera de evitar el problema es crear una cuenta con un password


imposible, aspecto este que se explicará más adelante.

2.6 Protegidos por passwords

Los passwords puede proteger tanto cuentas como roles. Los passwords se
fijan a la hora de la creación de ambos y se pueden modificar con los
comandos ALTER USER y ALTER ROLE, respectivamente.

No es necesario asignar un password a un rol, pero si tiene uno debe ser


especificado por el usuario cuando se asigna ese rol.

2.7 Gestionando Privilegios

Los privilegios dan acceso a los usuarios a los datos que no poseen. Los roles
con grupos de privilegios que facilitan la administración de los privilegios. Pero
los privilegios se pueden manejar de manera explícita en algunas
circunstancias.

Los privilegios se crean via el comando GRANT y son registrados en el


diccionario de datos.
Los privilegios que pueden otorgarse sobre objetos son los siguientes:

Privilegio Capacidades Otorgadas


SELECT Puede consultar a un objeto.
Puede insertar filas en una tabla o vista. Puede
INSERT especificarse las columnas donde se permite insertar
dentro de la tabla o vista.
Puede actualizar filas en una tabla o vista. Puede
UPDATE especificarse las columnas donde se permite actualizar
dentro de la tabla o vista.
DELETE Puede borrar filas dentro de la tabla o vista.
ALTER Puede alterar la tabla.
INDEX Puede crear índices de una tabla.
REFERENCES Puede crear claves ajenas que referencie a esta tabla.
EXECUTE Puede ejecutar un procedimieto, paquete o función.

Haciendo un privilegio PUBLIC lo hace disponible a todos los usuarios de la BD.

Aunque los privilegios se puedan otorgar individualmente, no resulta razonable


basar la gestión de los privilegios en su asignación individual. La gestión de los
privilegios se facilita con la utilización de los roles. A continuación se puede ver
como se crean dos roles, el ALUMNOS que permite establecer una sesión, y el
rol INSERTA_PEREZ que permite insertar y seleccionar en la tabla emp de
perez:

SVRMGR> create role alumnos;


Statement processed.
SVRMGR> grant create session to alumnos;
Statement processed.
SVRMGR> create role inserta_perez;
Statement processed.
SVRMGR> grant select, insert on perez.emp to inserta_perez;
Statement processed.

Se pueden asignar roles a roles:

SVRMGR> grant usuarios to inserta_perez;

Los roles pueden asignarse a los usuarios. Así, podemos asignar el rol
INSERTA_PEREZ al usuario alu20:

SVRMGR> grant inserta_perez to alu20;

Los roles se pueden denegar con el comando REVOKE.


2.8 Listar Privilegios Otorgados

La información de los privilegios otorgados se almacena en el diccionario de


datos. Estos datos son accesibles a través de las siguientes vistas del
diccionario de datos:

Vista Contenidos
DBA_ROLES Nombres de los roles y su estado del password.
DBA_ROLES_PRIVS Usuarios a los que han sido otorgados roles.
Usuarios a los que han sido otorgados privilegios del
DBA_SYS_PRIVS
sistema.
Usuarios a los que han sido otorgados privilegios
DBA_TAB_PRIVS
sobre objetos.
Usuarios a los que han sido otorgados privilegios
DBA_COL_PRIVS
sobre columnas de tablas.
ROLE_ROLE_PRIVS Roles que han sido otorgados a otros roles.
ROLE_SYS_PRIVS Privilegios de sistema que han sido otorgados a roles.
ROLE_TAB_PRIVS Privilegios de tabla que han sido otorgados a roles.

Auditando Acciones

Se puede auditar cualquier acción que afecte a cualquier objeto de la BD. Para
facilitar la gestión, las acciones a auditar se encuentran agrupadas según los
grupos que se muestran en la siguiente tabla:

Grupo Comandos Auditados

CLUSTER Todas las sentencias que afecten a clusters.

DATABASE LINK Todas las sentencias que afecten a enlaces de BD.


Todas las sentencias que fallen porque ya existe
EXISTS
un objeto en la BD.
INDEX Todas las sentencias que afecten a índices.
Todas las sentencias que fallen porque un
NOT EXISTS
determinado objeto no existe.
Todas las sentencias que afecten a
PROCEDURE
procedimientos.
PROFILE Todas las sentencias que afecten a perfiles.
PUBLIC DATABASE Todas las sentencias que afecten a enlaces
LINK públicos de BD.
Todas las sentencias que afecten a sinónimos
PUBLIC SINONYM
públicos.
ROLE Todas las sentencias que afecten a roles.
Todas las sentencias que afecten a segmentos de
ROLLBACK SEGMENT
rollback.
SEQUENCE Todas las sentencias que afecten a secuencias.

SESSION Todas las sentencias de acceso a la BD.

SYNONYM Todas las sentencias que afecten a sinónimos.

SYSTEM AUDIT Todas las sentencias AUDIT y NOAUDIT.

SYSTEM GRANT Todas las sentencias afecten a privilegios.

TABLE Todas las sentencias que afecten a tablas.


Todas las sentencias que afecten a espacios de
TABLESPACE
tablas.
TRIGGER Todas las sentencias que afecten a disparadores.
Todas las sentencias que afecten a las cuentas de
USER
usuarios.
VIEW Todas las sentencias que afecten a vistas.
Conceptos de gestión de privilegios y recursos
Concepto Significado
Privilegio Permiso para realizar una acción, asignable a un usuario o un rol
Rol Conjunto de privilegios, asignables a un usuario o un rol
Usuario Colección de objetos y privilegios identificado con un nombre y password
Perfil Conjunto de restricciones relativas al uso de recursos, y asignable a usuarios. Un usuario sólo puede tener
un perfil
Recurso Uso susceptible de ser restringido, asignable a un perfil
Roles Predefinidos por Oracle (select * from dba_roles;)
CONNECT
RESOURCE
DBA
EXP_FULL_DATABASE
IMP_FULL_DATABASE
DELETE_CATALOG_ROLE
EXECUTE_CATALOG_ROLE
SELECT_CATALOG_ROLE
Recursos en Oracle (select * from user_resource_limits;)
COMPOSITE_LIMIT
SESSIONS_PER_USER
CPU_PER_SESSION
CPU_PER_CALL
LOGICAL_READS_PER_SESSION
LOGICAL_READS_PER_CALL
IDLE_TIME
CONNECT_TIME
PRIVATE_SGA
Limites en uso del espacio en disco (select * from dba_ts_quotas;)
ALTER USER SCOTT QUOTA UNLIMITED ON USER_DATA;
ALTER USER SCOTT QUOTA 5M ON TEMPORARY_DATA;
ALTER USER SCOTT QUOTA 0 ON SYSTEM;
Para la gestión de se utilizan los comandos
Privilegios GRANT (conceder un privilegio a un usuario o a un rol)
REVOKE (denegar un privilegio a un usuario o a un rol)
Roles CREATE ROLE (crear)
ALTER ROLE (modificar)
DROP ROLE (borrar)
SET ROLE (activar, desactivar)
GRANT (conceder un permiso o un rol a un rol)
REVOKE (denegar un permiso o un rol a un rol)
Usuarios CREATE USER (crear)
ALTER USER (modificar)
DROP USER (borrar)
GRANT (conceder un permiso o un rol a un usuario)
REVOKE (denegar un permiso o un rol a un usuario)
Perfiles y Recursos CREATE PROFILE (crear)
ALTER PROFILE (modificar)
DROP PROFILE (borrar)
ALTER USER ... PROFILE (asignar a un usuario)
CREATE USER ... PROFILE (asignar a un usuario)
Activación de perfiles
Estado de la Base de Datos Acción
Base de Datos Parada RESOURCE_LIMIT = TRUE en c:\orant\database\initorcl.ora
Base de Datos Arrancada ALTER SYSTEM SET RESOURCE_LIMIT = TRUE;
Vistas más relevantes
Significado
Usuarios
Roles
Roles asignados a
roles o usuarios
Privilegios
asignados a roles o
usuarios
Permisos sobre
tablas asignados a
roles o usuarios
Roles asignados a
roles
Privilegios de cada
rol
Límites de
recursos
Perfiles y sus
límites de recursos
asociados
Límites de
recursos en cuanto
a restricciones en
claves
Límites de
recursos en cuanto
a espacio máximo
en tablespaces

INFOGRAFIA
• http://www.techonthenet.com
• http://www.infor.uva.es/~jvegas/cursos/bd/oraseg/oraseg.html
• http://www.redcientifica.com/oracle/c0004p0004.html