Está en la página 1de 2

UNIVERSIDAD CENTRAL DEL ECUADOR

FACULTAD DE INGENIERÍA CIENCIAS FÍSICAS Y MATEMÁTICAS


INGENIERÍA EN INFORMÁTICA
Nombre: Cristian Viscaino
Materia: Base de Datos III
Tema: Instrucciones DCL
Lenguaje de control de datos

Un Lenguaje de Control de Datos (DCL por sus siglas en


inglés: Data Control Language) es un lenguaje proporcionado por el Sistema de
Gestión de Base de Datos que incluye una serie de comandos SQL que permiten al
administrador controlar el acceso a los datos contenidos en la Base de Datos.

Algunos ejemplos de comandos incluidos en el DCL son los siguientes:

• GRANT: Permite dar permisos a uno o varios usuarios o roles para realizar tareas
determinadas.
• REVOKE: Permite eliminar permisos que previamente se han concedido con
GRANT.

Las tareas sobre las que se pueden conceder o denegar permisos son las siguientes:

• CONNECT
• SELECT
• INSERT
• UPDATE
• DELETE
• USAGE

En Oracle, la ejecución de un comando DCL implica un COMMIT de forma implícita.


Sin embargo, en PostgreSQL, la ejecución de un comando DCL forma parte de una
transacción, por lo que puede ser deshecha mediante el comando ROLLBACK.

La sentencia GRANT de SQL para otorgar privilegios SQL SELECT, UPDATE,


INSERT, DELETE y otros en tablas o vistas.
Por ejemplo, supongamos que el usuario JONES necesita utilizar la modalidad
Cambiar del Editor de tablas para una tabla denominada ORDER_BACKLOG.
Para otorgar a JONES el privilegio UPDATE en la tabla ORDER_BACKLOG, emita la
sentencia siguiente:
GRANT UPDATE ON ORDER_BACKLOG TO JONES WITH GRANT OPTION
La cláusula WITH GRANT OPTION indica que JONES puede otorgar a otros usuarios
cualquiera de los privilegios SQL que ha otorgado para la tabla ORDER_BACKLOG.
Utilice la palabra clave PUBLIC para otorgar privilegios SQL a todos los usuarios
locales de QMF. Por ejemplo, utilice la sentencia siguiente para otorgar el privilegio
INSERT en la tabla ORDER_BACKLOG a todos los usuarios en la base de datos local
y permitir a cada uno de los usuarios otorgar el privilegio INSERT a otros usuarios:
GRANT INSERT ON ORDER_BACKLOG TO PUBLIC WITH GRANT OPTION
Para hacer que un objeto esté disponible a los usuarios locales y remotos para
subsistemas DB2 para z/OS que tengan datos distribuidos habilitados, otorgue
autorización a PUBLIC AT ALL LOCATIONS. Por ejemplo, las siguientes sentencias
proporcionan el privilegio SELECT en la tabla Q. PLANTILLA:
GRANT SELECT ON TABLE Q. PLANTILLA TO PUBLIC
GRANT SELECT ON TABLE Q. PLANTILLA TO PUBLIC AT ALL LOCATIONS
Q. PLANTILLA es una de las tablas de ejemplo de QMFs. Se ejecutan sentencias
similares para todas las tablas de ejemplo de QMF durante la instalación de QMF de
forma que todos los usuarios tengan el privilegio SELECT en las tablas de ejemplo.
Comando REVOKE de SQL:
El comando REVOKE quita derechos o privilegios de acceso de los usuarios a los
objetos de base de datos.
La sintaxis para el comando REVOKE es:

Por Ejemplo: REVOKE SELECT en los empleados por user1; Este comando quita
un permiso SELECT en la tabla de empleados de user1.When revoca el privilegio
SELECT sobre una tabla de un usuario, el usuario no sería capaz de seleccionar
los datos de esa tabla más.

También podría gustarte