UNIDAD IV

 

Comandos DDL DML DCL Clausulas Consulta Cursores TP Volver

Lenguaje de Control de Dato - DCL

 

Definicion

 

En inglés DATA CONTROL LANGUAGE, es el lenguaje de control de datos, que incluye una serie de comandos que permiten al administrador controlar el acceso a los datos contenidos en la base de datos.

 

Seguridad de los Datos

 

El comando GRANT permite dar permisos a uno o varios usuarios (o roles) para realizar determinadas tareas.

 

GRANT accesos

 

ON tabla1, tabla2…

 

TO [usuario1, usuario2… | PUBLIC]

 

[WITH GRANT OPTIONS]

 

Los accesos son los siguientes: ALL PRIVILEGES | SELECT | UPDATE | INSERT | DELETE

 

El comando PUBLIC hace referencia  «todos los usuarios». Se le concede a ese usuario el permiso de conceder privilegios con el comando WITH GRANT OPTION.

 

El término revocación hace referencia a una anulación. La llevaremos a cabo con el comando REVOKE. Éste se utiliza para eliminar los permisos que previamente había concedido el comando GRANT.

 

REVOKE Accesos

FROM usuarios

TO tablas

 

VALIDAR Y RECUPERAR DATOS

 

El comando ROLLBACK es una operación que nos devuelve la base de datos a algún estado previo. Son importantes para la integridad de la base de datos, a causa de que significan que la base de datos puede ser restaurada a una copia limpia incluso después de que se hayan realizado operaciones erróneas anteriormente.

 

Por ejemplo queríamos borrar todas las filas del departamento 20 pero se nos olvidó la sentencia WHERE. Con ROLLBACK recuperamos la última versión validada de la BD.

 

El comando COMMIT finaliza una transacción de base de datos dentro de un sistema gestor de base de datos relacional y pone visibles todos los cambios a otros usuarios.

 

COMMIT IMPLÍCITO

 

Para generar un COMMIT automáticamente utilizaremos las siguientes instrucciones:

 

 

Quit

Exit

Connect

Disconnect

Create table

Drop table

Create view

Drop view

Grant

Alter

Revoque

Audit

Noaudit

 

 

SEGURIDAD SQL

 

Siempre que un usuario crea una tabla, se convierte en el dueño. Si quiere añadir o quitar permisos sobre una tabla determinada a otros usuarios debe definir estos con la cláusula GRANT.

 

Sintaxis:

 

GRANT [SELECT | INSERT | DELETE | UPDATE]
ON         nombre-tabla
TO          nombre-usuario
WITH GRAN OPTION   

Asi se especifica esta opción, al usuario que se le asigne el permiso puede dar privilegios a otros

 

Para quitar privilegios

 

REVOQUE  [SELECT | INSERT | DELETE | UPDATE | ALL PRIVILEGES]
ON         nombre-tabla
FROM   nombre-usuario

 

 Volver

 

*