Sentencias SQL para la Gestión de la base de datos Oracle

En este artículo veremos las sentencias más usadas para la administración de la base de datos de Oracle.

Gestión de usuarios y permisos:

  • Crear usuario
 
CREATE USER NOMBREDELUSUARIO IDENTIFIED BY CONTRASEÑA;
  • Borrar usuario
 
DROP USER NOMBREDELUSUARIO CASCADE;
  • Dar todos los privilegios a el usuario
GRANT ALL privileges TO NOMBREDELUSUARIO;
  • Dar permisos conexión
GRANT CONNECT TO NOMBREDELUSUARIO

Gestión de Tablas:

  • Crear columna en una tabla
 
ALTER TABLE NOMBREDELATABLA ADD NOMBREDELCAMPO TIPO;
  • Dar valor no null a una columna
 
ALTER TABLE NOMBREDELATABLA MODIFY NOMBREDELCAMPO NOT NULL;
  • Borrar columna
 
ALTER TABLE NOMBREDELATABLA DROP COLUMN NOMBRE;
  • Crear tabla
CREATE TABLE NOMBREDELUSUARIO.NOMBREDELATABLA (
 
NOMBRECAMPO1 VARCHAR2(30 BYTE) NOT NULL ENABLE,
NOMBRECAMPO2 CHAR(1 BYTE) DEFAULT 'A' NOT NULL ENABLE,
NOMBRECAMPO3 VARCHAR2(32 CHAR) NOT NULL ENABLE,
NOMBRECAMPO4 VARCHAR2(50 BYTE),
NOMBRECAMPO5 VARCHAR2(100 BYTE),
);
  • Añadir clave primaria
ALTER TABLE NOMBREDELATABLA
ADD CONSTRAINT pk_nombreClave PRIMARY KEY (campoTabla);
  • Borrar clave primaria:
 
ALTER TABLE Persona
DROP CONSTRAINT pk_nombreClave
  • Añadir clave ajena
ALTER TABLE NOMBREDELATABLA
ADD CONSTRAINT fk_nombreClave  FOREIGN KEY (campoTabla) REFERENCES TABLAAJENA(campoTablaAjena);
  • Borrar clave ajena
ALTER TABLE NOMBREDELATABLA
DROP CONSTRAINT nombreClave
  • Crear secuencia
CREATE SEQUENCE SEQ_MISECUENCIA INCREMENT BY 1 MAXVALUE 5000000 MINVALUE 1 NOCACHE ORDER;
  • Comenzamos la secuencia a partir de un número
CREATE SEQUENCE SEQ_MISECUENCIA INCREMENT BY 1 MAXVALUE 5000000 MINVALUE 1 START WITH 14972 NOCACHE ORDER;
  • Borramos secuencia
 
DROP SEQUENCE SEQ_MISECUENCIA;
  • Vaciamos tabla
DELETE FROM NOMBREDELATABLA;
  • Vaciamos tabla a partir de una fila
DELETE FROM NOMBREDELATABLA WHERE ID>20;
  • Creamos indice
 CREATE INDEX NOMBREINDICE ON NOMBRETABLA (NOMBRECAMPO);
  • Eliminamos indice
DROP INDEX NOMBREINDICE;

Iván Martínez

Ingeniero Informático apasionado por el mundo del desarrollo WEB. Me gusta caminar por este mundo lleno de tecnologías y día a día aprender cosas nuevas como el doctor Frankenstein ¡dadme cosas para experimentar!

Deja un comentario

Tu dirección de correo electrónico no será publicada.