Oracle/SQL/DDL y DCL

< Oracle‎ | SQL

TablasEditar

CREATE TABLE AS
SELECT ...
  • La nueva tabla mantiene los tipos de datos.
  • No incluye ninguna restricción de integridad.

Vaciado: TRUNCATE TABLEEditar

TRUNCATE TABLE tabla

VistasEditar

CREATE VIEW vista AS
SELECT …

DROP VIEW vista

SecuenciasEditar

CREATE SEQUENCE secuencia
[START WITH valor]
[INCREMENT BY valor]
  • Siguiente valor: secuencia.NEXTVAL
  • Último valor (por sesión): secuencia.CURRVAL


SinónimosEditar

Un sinónimo en Oracle, es una representación local o pública de un objeto perteneciente a un esquema. Sirve para poder hacer referencia a aquel objeto sin tener que anteponer su esquema. Un sinónimo público puede ser visto por todos los usuarios, pero uno privado, sólo por el usuario que lo creó. Para poder crear un sinónimo, el esquema o usuario que lo crea, tiene que tener alguno o ambos privilegios de los siguientes: CREATE SYNONYM CREATE PUBLIC SYNONYM Para el caso de un sinónimo simple (no público), el usuario tiene que tener privilegio sobre el objeto al que le creará el sinónimo. Por ejemplo, si es una tabla, deberá tener al menos privilegio de select, insert, delete o update sobre la misma.

No todas las bases de datos soportan los sinónimos. Para crear un sinónimo hay que utilizar la sentencia CREATE SYNONYM especificando el nombre que deseamos utilizar como sinónimo y la tabla para la que estamos creando el sinónimo.

CREATE [PUBLIC] SYNONYM sinonimo
FOR [dueño.]objeto

DROP [PUBLIC] SYNONYM sinonimo
  • Sinónimos Públicos: para todos los usuarios

Usuarios y EsquemasEditar

CREATE USER usuario
IDENTIFIED BY clave

DROP USER usuario [CASCADE]
  • Usuario = Esquema

PermisosEditar

Dar Permisos: GRANTEditar

GRANT permiso [ON objeto];
TO usuario

Quitar Permisos: REVOKEEditar

REVOKE permiso [ON objeto]
FROM usuario

Tipos de PermisosEditar

  • Para Tablas y Vistas: SELECT, INSERT, UPDATE, DELETE
  • Para Objetos ejecutables: EXECUTE
  • Para Usuarios: CREATE VIEW

RolesEditar

CREATE | DROP ROLE rol
  • Para GRANT y REVOKE, los roles se utilizan como si fueran usuarios o permisos.
  • Predefinidos: DBA, CONNECT, RESOURCE