M2 - Bases de dades / Exercicis UF3: Llenguatges SQL / Accés a la base de dades
1.Crear un usuario 'USER1' con autentificación de contraseña ('insti'). Otorgale el privilegio de iniciar sesión.
CREATE USER user1 IDENTIFIED BY insti; GRANT CREATE SESSION TO user1;
2.Entrar como 'USER1' y cambiar la contraseña a 'merce'.
ALTER USER user1 IDENTIFIED BY merce;
3.Crea el tablespace de nombre usuarios asociándole un fichero en disco llamado 'USUARIOS.ORA' de 5 Mb. Asignar el tablespace usuarios y como temporal el tablespace temp a 'USER1'
CREATE TABLESPACE USUARIOS DATAFILE 'USUARIOS.ORA' SIZE 5M; ALTER USER user1 DEFAULT TABLESPACE usuarios TEMPORARY TABLESPACE temp;
4.Bloqueamos la cuenta de 'USER1'.
ALTER USER user1 ACCOUNT lock;
5.Desbloqueamos la cuenta de 'USER1'.
ALTER USER user1 ACCOUNT unlock;
6.Conceder privilegios a 'USER1' para que pueda conectarse, crear tablas, vistas, secuencias y tipos. Permitirle que pueda conceder estos privilegios a otros usuarios.
GRANT CREATE SESSION, CREATE TABLE, CREATE VIEW, CREATE SEQUENCE, CREATE TYPE TO user1 WITH ADMIN OPTION;
7.Revocar los privilegios concedidos a 'USER1'.
REVOKE CREATE SESSION, CREATE TABLE, CREATE VIEW, CREATE SEQUENCE, CREATE TYPE FROM user1;
8.Conceder los privilegios INSERT, UPDATE, DELETE y SELECT para la tabla ‘cliente’ (RH.cliente) a 'USER1'.
GRANT INSERT, UPDATE, DELETE, SELECT ON RH.cliente TO user1;
9.Conceder todos los privilegios para la tabla ‘proveedor’ a 'USER1' incluyendo que pueda conceder estos privilegios a otros usuarios.
GRANT ALL PRIVILEGES ON RH.proveedor TO user1 WITH GRANT OPTION;
10- Queremos que un usuario llamado 'USER2' (crearlo), con contraseña 'merce', sólo pueda hacer INSERT en las columnas (DNI, nombre), UPDATE en las columnas (direccion, telefono) y REFERENCES en la columna (DNI) y SELECT en todas las columnas de la tabla 'cliente' de 'RH'.
CREATE USER user2 IDENTIFIED BY merce DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp ACCOUNT UNLOCK; GRANT SELECT, INSERT (DNI, nombre), UPDATE (direccion, telefono), REFERENCES (DNI) ON HR.cliente TO user2;
11.Revocar el privilegio references a 'USER2'.
REVOKE REFERENCES ON scott.emp FROM user2 CASCADE CONSTRAINTS;
12.Crear un rol para los programadores de aplicaciones del sistema llamado 'PAS' con contraseña ‘sistema’.
CREATE ROLE pas IDENTIFIED BY sistema;
13.Conceder los privilegios de sistema CREATE SESSION, CREATE TABLE, CREATE VIEW, CREATE ANY INDEX, CREATE SÉQUENCE, CREATE TYPE al rol 'PAS' creado anteriormente.
GRANT CREATE SESSSION, CREATE TABLE, CREATE VIEW, CREATE ANY INDEX, CREATE SEQUENCE, CREATE TYPE TO pas;
14.Conceder los privilegios de objeto INSERT, UPDATE, DELETE, SELECT sobre la tabla 'cliente' al rol 'PAS'.
GRANT INSERT, UPDATE, DELETE, SELECT ON RH.cliente TO pas;
15.Conceder el rol 'PAS' al usuario 'USER2'.
GRANT pas TO user2;
16.Conceder el rol PAS'al usuario 'USER1'.
GRANT pas TO user1;
17.Conceder al usuario 'USER2' el derecho de 5mb de espacio en el espacio de tabla USERS.
ALTER USER user2 QUOTA 5M ON usuarios;
18.Conceder al usuario 'USER2' el derecho de cantidad ilimitada de espacio en el espacio de tabla USERS.
ALTER USER user2 QUOTA UNLIMITED ON usuarios;
19.Conceder al usuario 'USER1' cuota ilimitada a todos los espacios de tablas.
GRANT UNLIMITED TABLESPACE TO user1;