Oracle Sep 01 Tablas
-
Upload
angelo-morales-popayan -
Category
Documents
-
view
220 -
download
4
description
Transcript of Oracle Sep 01 Tablas
FACULTAD DE INGENIERIA INDUSTRIAL, SISTEMAS EINFORMATICA
ESCUELA ACADEMICO PROFESIONAL DEINGENIERIA INFORMATICA
CURSOBASE DE DATOS
SEPARATA Nº 01TABLAS, RESTRICCIONES Y SECUENCIAS
DOCENTEMG. ING. EDWIN IVAN FARRO PACIFICO
HUACHO-LIMAPERU
Universidad Nacional José Faustino Sánchez Carrión
Mg. Ing. Edwin Iván Farro Pacífico Pag 2
TABLAS Y RESTRICCIONESHABILITAR USUARIO SCOTT
1. Con ectarse como system
2. Ingresar usuario, clave y nombre de la base de datos, luego clc en Probar y conectar
3. Habilitar el usuario Scott
Mg. Ing. Edwin Iván Farro Pacífico Pag 3
Universidad Nacional José Faustino Sánchez Carrión
4. Iniciar sesión como scott
TABLAS
1. Mostrar el contenido de las tablas
SQL>select table_name from user_tables;
2. Mostrar la estructura de las tablas
SQL>desc emp;
SQL>desc dept;
SQL>desc salgrade;
CREAR TABLASLos requisitos de l cláusula CREATE TABLE son:Nombre de la tabla
Nombre de la columnaTipo de datos de la columna
Sintaxis:
CREATE TABLE [usuario.]tabla ({columna1 tipo_dato [DEFAULT exp][constraint_columna]},{columna2 tipo_dato [DEFAULT exp][constraint_columna]}...)
Reglas de nomenclatura: El nombre debe tener como longitud de 1 a 30 caracteres con el primer carácter
alfabético: v' A-Z,a-z,0-9
v' $ y # también son válidos pero no se sugieren No debeser una palabra reservada en oracle No debe ser igual al nombre de otro objeto dentro del mismo usuario de oracle
Ejemplo:
SQL>create table departamento(iddepa number(2),nombre varchar(1 4),ubicacion varchar(1 3),constraint pk_iddeap primary key(iddepa));
Mg. Ing. Edwin Iván Farro Pacífico Pag 4
Universidad Nacional José Faustino Sánchez Carrión
Borrar tablasSintaxis:
DROP TABLE nombre_tabla
Ejemplo:
SQL>DROP TABLE departamento;
Crear una tabla a partir de un select.Se pueden crear tablas a partir de una sentencia SELECT utilizando la cláusula AS.Sintaxis:
CREATE TABLE nombre_tabla [(columna1,columna2,...)]AS sentencia_select;
Ejemplo:
SQL>create table depaasselect * from dept;
Mostrar estructura.
Listar registros.
Restricciones de ColumnasLa siguiente tabla muestra los diferentes restricciones manejadas por oracle.
CONSTRAINT USOPRIMARY KEY Identifica de manera única a cada fila de la tablaCHECK Especifica una condición que cada fila debe
satisfacer en la tabla.FOREING KEY (nombre_columna) Designa una columna o combinación de
columnas como la clave foránea
REFERENCES(nombre_columna) Establece y obliga una relación entre estacolumna de la clave primaria de la tablareferenciada.
[NOT] NULL Especifica que esta columna no puede contenerun valor nulo.
UNIQUE Especifica que una o más columnas debentener valores únicos través de todas las filas.Oracle crea un índice único para asegurar esteconstraint.
ON DELETE CASCADE Especifica que Oracle mantendrá la integridadautomáticamente removiendo los valores de laclave foránea dependiente si se remueven losvalores de la clave primaria o única.
Mg. Ing. Edwin Iván Farro Pacífico Pag 5
Universidad Nacional José Faustino Sánchez Carrión
SECUENCIAUna secuencia es un objeto que permite obtener número único que sigue una determinadaformación.Sintaxis:
CREATE SEQUENCE nombre_secuencia Opciones;
Ejemplo:
Crear una secuencia para generar el número de departamento, la cual empiece en 1 y seincremente de 1 en uno hasta llegar a 9999
SQL>create sequence sq_idemplestart with 1increment by 1maxvalue 9999
nocyclenocache;
MODIFICAR SECUENCIA
EjercicioQue la secuencia aumente de 3 en 3
SQL>alter sequence sq_idempleincrement by 3maxvalue 9999nocycle
nocache;
Ejemplo:Crear una tabla que utilice los diferentes tipos de constraints y una secuencia para generar elcódigo
SQL>create table emple(idemple number(4),nombempl varchar(30) not null,dniempl char(8),suelempl number(10,2) default 0,comiempl number(10,2) default 0,constraint pk_idemple primary key(idemple),constraint u_dniempl unique(dniempl),constraint ck_suelempl check(suelempl>=0),constraint ck_comiempl check(comiempl>=0),constraint ck_comision check(comiempl<suelempl));
Mg. Ing. Edwin Iván Farro Pacífico Pag 6
Universidad Nacional José Faustino Sánchez Carrión
Mod ifi car tablas
Cláusula ALTER TABLESe utiliza para alterar la definición de uan tabla:
Añadiendo o eliminando columnas o restricciones
Modificando definiciones de columnas (tipo de datos, Not Null, etc.)
Ejemplo:Agregue la columna teléfono a la tabla emple
SQL>alter table em pleadd telfempl varchar(10);
Ejemplo:Cambie el tipo de dato de la columna telfempl de VARCHAR(10) a CHAR(12).
SQL>alter table em plemodify telfempl char(12);
Ejemplo:Borrar la clave primaria de la tabla emp1.
SQL>alter table em pledrop primary key;
EjemploAgregar el atributo brevete con la restricción UNIQUE.
SQL>alter table em pleadd brevete char(9)constraint u_brevete unique;
Eliminar ColumnasSintaxis:
ALTER TABLE nombre_tabla DROP COLUMN nombre_columna;
Ejemplo:Elimine la columna teléfono de la tabla emple
SQL>alter table em pledrop column telfempl;
Renombrar una tablaEl comando RENAME permite renombrar una tabla.Sintaxis;
RENAME nombre_tabla TO nombre_nuevo
Mg. Ing. Edwin Iván Farro Pacífico Pag 7
Universidad Nacional José Faustino Sánchez Carrión
Ejemplo:
SQL>rename emple to trabajador;
Renombrar una columnaSintaxis:
alter table nombre_tablarename column nombre_columna_actual to nombre_columna_nueva
EjercicioRenombrar el campo brevet por brevempl;
alter table em plerename column brevete to brevempl;
EjercicioCrear las siguientes tablas y establecer las relaciones
Crear la siguiente estructura de tablas de acuerdo a las restricciones que indique el profesor
ALUMNO
Campo Tipo de dato Longitud RestriccionesIdalumno number 5 Primary KeyNombalum Varchar2 50 No nulo
Mg. Ing. Edwin Iván Farro Pacífico Pag 8
Universidad Nacional José Faustino Sánchez Carrión
CURSOCampo Tipo de dato Longitud Restricciones
Idcurso number 5 Primary Keynombcurs Varchar2 50 No nulocredcurs number 10,2
FICHACampo Tipo de dato Longitud Restricciones
Idficha Number 5 Primary KeyIdalumno Number 5fechfich Datetcred Number 10,2 Valor por defecto0
FICHA_CURSOCampo Tipo de dato Longitud Restricciones
Idmatricula Number 5
Primary KeyIdalumno Number 5credcurs number 10,2