Sunteți pe pagina 1din 7

SENTENCIAS DE DML Y DDL GRANT- REVOKE

JHAN GARCIA TUTOR

UNIVERSIDAD DEL MAGDALENA MANEJO Y APLICACIN DE LAS BASES DE DATOS LICENCIATURA EN EDUCCION CON ENFASIS EN INFORMATICA ZOBAL EL COPEY VII SEMESTRE 2012
Las sentencias SQL pertenecen a dos categoras principales: Lenguaje de Definicin de Datos, DDL y Lenguaje de Manipulacin de Datos, DML. Estos dos lenguajes no son lenguajes en s mismos, sino que es una forma de clasificar las sentencias de lenguaje SQL

en funcin de su cometido. La diferencia principal reside en que el DDL crea objetos en la base de datos y sus efectos se pueden ver en el diccionario de la base de datos; mientras que el DML es el que permite consultar, insertar, modificar y eliminar la informacin almacenada en los objetos de la base de datos. Cuando se ejecutan las sentencias DDL de SQL, el SGBD confirma la transaccin actual antes y despus de cada una de las sentencias DDL. En cambio, las sentencias DML no llevan implcito el commit y se pueden deshacer. Existe pues un problema al mezclar sentencias DML con DDL, ya que estas ltimas pueden confirmar las primeras de manera involuntaria e implicita, lo que en ocasiones puede ser un problema. A continuacin se presenta una tabla con las sentencias SQL ms comunes, clasificadas segn el lenguaje al que pertenecen. Sentencia DDL Alter procedure Alter Table Analyze Objetivo Recompilar un procedimiento almacenado. Aadir o redefinir una columna, modificar la asignacin de almacenamiento. Recoger estadsticas de rendimiento sobre los objetos de la BD para utilizarlas en el optimizador basado en costes.

Create Table Crear una tabla. Create Index Crear un ndice. Drop Table Drop Index Grant Truncate Revoke Sentencia DML Insert Delete Update Select Commit Eliminar una tabla. Eliminar un ndice. Conceder privilegios o papeles, roles, a un usuario o a otro rol. Eliminar todas las filas de una tabla. Retirar los privilegios de un usuario o rol de la base de datos. Objetivo Aadir filas de datos a una tabla. Eliminar filas de datos de una tabla. Modificar los datos de una tabla. Recuperar datos de una tabla. Confirmar como permamentes las modificaciones realizadas.

Rollback

Deshacer todas las modificaciones realizadas desde la ltima confirmacin.

SQL REVOKE comando:


El comando REVOKE quita los derechos de acceso o privilegios en los objetos de base de datos. La sintaxis para el comando REVOKE es: REVOKE privilege_name EN object_name FROM {nombre_usuario | Pblico | role_name} Para Eample: REVOKE SELECT ON empleado de usuario1; Este commmand revocar el privilegio SELECT sobre la tabla de empleados de la user1.When que usted revoque el privilegio SELECT sobre una tabla de un usuario, el usuario no ser capaz de seleccionar los datos de esa tabla nunca ms. Sin embargo, si el usuario ha recibido privilegios de SELECT sobre la mesa de ms de un usuario, l / ella puede seleccionar de esa mesa hasta que todos los que le concede el permiso se revoca. Usted no puede revocar los privilegios si no se les concedi inicialmente por usted. Privilegios y Roles: Privilegios: Los privilegios se definen los derechos de acceso prestados a un usuario en un objeto de base de datos. Hay dos tipos de privilegios. 1) los privilegios del sistema - Permite al usuario crear, modificar o quitar objetos de base de datos. 2) los privilegios de objetos - Esto permite al usuario ejecutar, SELECT, INSERT, UPDATE o DELETE datos de objetos de base de datos a la que los privilegios se aplican. Pocos privilegios de sistemas a crear son los siguientes:

Los privilegios del sistema Crear un objeto

Descripcin permite a los usuarios para crear el objeto especificado en su propio esquema. permite a los usuarios para crear el objeto especificado en cualquier esquema.

Crear cualquier objeto

Las reglas anteriores se aplican tambin para ALTER y DROP privilegios del sistema. Pocos de los privilegios de objeto se enumeran a continuacin:

Privilegios de Objeto INSERT

Descripcin permite a los usuarios insertar filas en una tabla. permite a los usuarios seleccionar los datos de un objeto de base de datos. permite al usuario actualizar los datos en una tabla. permite al usuario ejecutar un procedimiento almacenado o una funcin.

SELECT

ACTUALIZACIN

EXECUTE

Funciones: Las funciones son un conjunto de privilegios o derechos de acceso. Cuando hay muchos usuarios en una base de datos se hace difcil de conceder o revocar privilegios a los usuarios. Por lo tanto, si se define las funciones, puede otorgar o revocar privilegios a los usuarios, con lo que automticamente la

concesin o revocacin de privilegios. Puede crear funciones o utilizar las funciones del sistema de pre-definidos por Oracle. Algunos de los privilegios concedidos a las funciones del sistema es el que aparece a continuacin:

Sistema de Papel CONNECT

Los privilegios concedidos a la funcin CREATE TABLE, CREATE VIEW, CREATE SINNIMO, CREATE SEQUENCE, CREATE SESSION etc

CREATE PROCEDURE, CREATE SEQUENCE, CREATE TABLE, CREATE RECURSOS TRIGGER, etc El uso principal de la funcin de recursos es restringir el acceso a los objetos de base de datos.

DBA

TODOS LOS PRIVILEGIOS DEL SISTEMA

Creacin de funciones: La sintaxis para crear una funcin es: CREAR role_name PAPEL [SEALADAS POR contrasea]; Por ejemplo: Para crear una funcin llamada "desarrollador" con la contrasea como "personas con discapacidad", el cdigo ser el siguiente CREAR pruebas PAPEL [SEALADAS POR contrasea]; Es ms fcil de conceder o revocar privilegios a los usuarios a travs de un papel en lugar de asignar un direclty privilegio de todos los usuarios. Si un papel se identifica mediante una contrasea, y luego, cuando conceder o revocar los privilegios de la funcin, que definitivamente tiene que identificarse con la contrasea. Podemos conceder o revocar privilegios a un rol de la siguiente manera.

Por ejemplo: Para conceder permiso CREATE TABLE para un usuario mediante la creacin de un puesto de probador: En primer lugar, crear un puesto de probador CREAR pruebas PAPEL En segundo lugar, conceder un privilegio CREATE TABLE para las pruebas de PAPEL. Usted puede agregar ms privilegios para el papel. GRANT CREATE TABLE de la prueba; En tercer lugar, otorgar el rol a un usuario. CONCESIN pruebas para el usuario 1; Para revocar un privilegio CREATE TABLE de las pruebas de funcin, puede escribir: REVOKE CREATE TABLE partir de ensayos; La sintaxis para quitar una funcin de la base de datos es la siguiente: DROP role_name PAPEL; Por ejemplo: Para quitar una funcin llamada programador, puede escribir: DROP prueba PAPEL;

SQL GRANT Comando


SQL es un comando GRANT utiliza para proporcionar el acceso o privilegios en los objetos de base de datos a los usuarios. La sintaxis del comando GRANT es la siguiente:

Privilege_name DE A {nombre_usuario | PBLICO |

CONCESIN object_name role_name}

[WITH GRANT OPTION];

privilege_name es

el

derecho

de

acceso

privilegio

otorgado

al

usuario. Algunos de los derechos de acceso son TODOS, EXECUTE, y SELECT.

object_name es el nombre de un objeto de base de datos como la tabla, vista, procedimiento almacenado y Secuencia. user_name es el nombre del usuario al que un derecho de acceso se concede. user_name es el nombre del usuario al que un derecho de acceso se concede. PBLICO se utiliza para conceder derechos de acceso a todos los usuarios. FUNCIONES son un conjunto de privilegios agrupados. WITH GRANT OPTION - permite al usuario conceder derechos de acceso a otros usuarios.

EJEMPLO:
GRANT SELECT ON empleado usuario1; Este comando concede un permiso SELECT en la tabla empleado user1.You debe utilizar la opcin WITH GRANT cuidado, porque por ejemplo, si otorgar el privilegio SELECT sobre la tabla de empleados a usuario1 con la opcin WITH GRANT, a continuacin, usuario1 puede otorgar el privilegio SELECT sobre la tabla de empleados a otro usuario, como por ejemplo etc user2 Ms adelante, si usted revoca el privilegio SELECT sobre empleado de usuario1, usuario2 todava tendr el privilegio SELECT sobre la tabla de empleados.

S-ar putea să vă placă și