Está en la página 1de 2

3ª LISTA DE EJERCICIOS

1.- Crear una vista llamada empleados_sin_oficina que muestre todos los datos de aquellos
empleados que no tienen asignada una oficina.

- CREATE VIEW empleados_sin_oficinas AS (SELECT * FROM EMPLOYEES WHERE


DEPARTMENT_ID IS NULL);

2.- Escribir la sentencia sql para crear un usuario llamado pepe con contraseña pepe, y
asignarle como tablespace por defecto un tablespace llamado “usuarios” fijándole una cuota
de 100 megas en dicho tablespace. Crear un rol llamado “vendedor” y darle los privilegios de
poder borrar filas en la tabla employees. Darle este rol a pepe. Darle a pepe permiso para
hacer cualquier cosa en la tabla locations. Bloquear la cuenta del usuario pepe.

- CREATE TABLESPACE usuarios


- DATAFILE 'usuarios.ORA'
- SIZE 500M;
- CREATE USER pepe IDENTIFIED BY pepe
- DEFAULT TABLESPACE usuarios
- QUOTA 100M ON usuarios QUOTA 0 ON SYSTEM;
- CREATE ROLE vendedor;
- GRANT DELETE ON EMPLOYEES TO vendedor;
- GRANT vendedor TO pepe;
- GRANT ALL PRIVILEGES ON LOCATIONS TO pepe;
- ALTER USER pepe ACCOUNT LOCK;

3.- Escribir la sentencia sql para crear un usuario llamado juan con contraseña 1111, darle a
este usuario el rol de connect y el de resource. Darle permiso para hacer cualquier cosa en la
tabla countries. Posteriormente quitarle el permiso para que pueda borrar filas en dicha tabla.
Por último ascenderle a la categoría de administrador de la base de datos y asignarle como
tablespace por defecto un tablespace llamado “principal” fajándole una cuota de 100 megas
en dicho tablespace.

- CREATE USER juan IDENTIFIED BY “1111”;


- DEFAULT TABLESPACE principal
- QUOTA 100M ON principal;
- GRANT CONNECT, RESOURCE TO juan;
- GRANT ALL PRIVILEGES ON COUNTRIES TO juan;
- REVOKE DELETE ON COUNTRIES TO juan;
- GRANT DBA TO juan;
4.- Crear un rol llamado “almacenista” y darle los privilegios de poder añadir filas en la tabla
jobs y de poder hacer modificaciones en la tabla employees. Además queremos que los
usuarios que tengan este rol tengan el privilegio de poder crear una tabla en el esquema de
cualquier usuario. Asignarle este rol a juan y a pedro y hacer que ellos puedan a su vez
asignárselo a otros usuarios. Finalmente hacer que juan ya no tenga el rol de almacenista

- CREATE ROLE almacenista;


- GRANT INSERT, UPDATE, DELETE ON EMPLOYEES TO almacenista;
- GRANT CREATE ANY TABLE TO almacenista;
- GRANT almacenista TO juan WITH GRANT OPTION;
- GRANT almacenista TO pedro WITH GRANT OPTION;
- REVOKE almacenista TO juan;

También podría gustarte