SlideShare una empresa de Scribd logo

1 lab-2 -tablas-y-restricciones

Tablas SQL

1 de 10
Descargar para leer sin conexión
Pag. 1
TABLAS
CREAR TABLAS
Los requisitos de la cláusula CREATE TABLE son:
Nombre de la tabla
Nombre de la columna
Tipo 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:
 A-Z,a-z,0-9
 $ y # también son válidos pero no se sugieren
 No debe ser 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
2 (iddepa number(2),
3 nombre varchar2(14),
4 ubicacion varchar2(13));
Borrar tablas
Sintaxis:
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:
CREATE TABLE dept AS SELECT * FROM departamento;
 Mostrar estructura.
 Listar registros.
Restricciones de Columnas
La siguiente tabla muestra los diferentes restricciones manejadas por oracle.
CONSTRAINT USO
PRIMARY KEY Identifica de manera única a cada fila de la tabla
CHECK 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 esta
columna de la clave primaria de la tabla
referenciada.
[NOT] NULL Especifica que esta columna no puede contener
un valor nulo.
UNIQUE Especifica que una o más columnas deben
tener valores únicos través de todas las filas.
Oracle crea un índice único para asegurar este
constraint.
ON DELETE CASCADE Especifica que Oracle mantendrá la integridad
automáticamente removiendo los valores de la
clave foránea dependiente si se remueven los
valores de la clave primaria o única.
Ejemplo:
Diseño de una tabla identificando sus restricciones principales:
Crear una tabla que utilice los diferentes tipos de constraints.
Campo Tipo de dato longitud restriccción
codigo Number 4 PK
Nombre Varachar2 10 UNICO
Cargo Varachar2 9 NO NULO
Jefe Number 4 NULO
ingreso Date Fecha del sistema por defecto
Salario Number 7,2 Salario>=0
Comisión Number 7,2 Comisión>=0
departamento Number 2 Solo acepta10 o 20
SQL> CREATE TABLE emp1
2 (codigo NUMBER(4) PRIMARY KEY,
3 nombre VARCHAR2(10) UNIQUE,
4 trabajo VARCHAR2(9) NOT NULL,
5 jefe NUMBER(4) NULL,
6 ingreso DATE DEFAULT SYSDATE,
7 salario NUMBER(7,2) DEFAULT 0 CHECK(salario>=0),
8 comision NUMBER(7,2) DEFAULT 0 CHECK(comision>=0),
9 departamento NUMBER(2) CHECK(departamento IN (10,20));
OPERACIONES BÁSICAS
Modificar tablas
Cláusula ALTER TABLE
Se utiliza para alterar la definición de uan tabla:
 Añadiendo o eliminando columnas o restricciones
 Modificando definiciones de columnas (tipo de datos, NotNull, etc.)
Ejemplo:
Agregue la columna teléfono a la tabla emp1.
SQL> ALTER TABLE emp1
ADD telefono1 CHAR(8);
Ejemplo:
La comisión debe ser menor o igual que el salario.
SQL>ALTER TABLE emp1
ADD CHECK(comision<=salario);
Ejemplo:
Cambie el tipo de dato de la columna trabajo de CHAR(9) a CHAR(10).
SQL> ALTER TABLE emp1
MODIFY trabajo CHAR(10);
Ejemplo:
Borrar la clave primaria de la tabla emp1.
SQL> ALTER TABLE emp1
DROP PRIMARY KEY;
Ejemplo
Agregar el atributo DNI con la restricción UNIQUE.
SQL> ALTER TABLE emp1
ADD dni char(8)
CONSTRAINT u_dni UNIQUE
Eliminar Columnas
Sintaxis:
ALTER TABLE nombre_tabla DROP COLUMN nombre_columna;
Ejemplo:
Elimine la columna teléfono de la tabla emp1;
SQL> ALTER TABLE emp1 DROP COLUMN telefono;
Renombrar una tabla
El comando RENAME permite renombrar una tabla.
Sintaxis;
RENAME nombre_tabla TO nombre_nuevo
Ejemplo:
SQL> RENAME departamento TO dpto1;
Renombrar una columna
De la tabla emp1 modificar el nombre del atributo departamento por dpto.
sp_rename ‘nombre_tabla.campo ‘,’nombre_tabla.nuevo_nombre’
créate cr
Ejemplo 1
Previamente conectarseconel usuario administrador SYS
Creamos el usuario
CREATE USER COMPRAS IDENTIFIED BY PS02
Asignarle privilegios
GRANT CONNECT, RESOURCE TO COMPRAS
Creamos Los Tablespace
Create tablespace ts_compras
Datafile ‘F:practicaoraclets_comp.ora’
Size 3 m
Extent management local autoallocate;
*Nota: debe existir la carpeta practicaoracle.
Nos conectamos al esquema factura
Connect COMPRAS /PS02
Procedemos a crear tablas
CREATE TABLE TIPO_DOCUMENTO (
Codigo_Tipo_Documento CHAR(8) NOT NULL,
nombre VARCHAR2(50) NOT NULL)
tablespace ts_compras;
CREATE TABLE MARCA (
Codigo_Marca number(8) NOTNULL,
nombre VARCHAR2(50) CONSTRAINT NOM_MAR NOT NULL,
CONSTRAINT NOM_UNI UNIQUE(NOMBRE))
tablespace ts_compras;
CREATE TABLE CATEGORIA (
Codigo_Categoria CHAR(8) NOTNULL,
nombre VARCHAR2(50) CONSTRAINT NOM_CAT UNIQUE,
constraint CAT_NOM check(NOMBRE in ('A','B','C','D')))
tablespace ts_compras;
CREATE TABLE PRODUCTO (
Codigo_Producto CHAR(8) NOT NULL,
NOMBRE VARCHAR2(50) NOT NULL,
Modelo VARCHAR2(50) NOT NULL,
Plataforma VARCHAR2(50) NULL,
Precio NUMBER(8,2) NOT NULL,
Stock NUMBER(8,2) NOT NULL,
Codigo_Categoria CHAR(8) NOTNULL,
Codigo_Marca number(8) NOTNULL,
CONSTRAINT NOM_PROD UNIQUE(NOMBRE),
CONSTRAINT PRE_STOCK CHECK (STOCK>=0 and STOCK<=100))
tablespace ts_compras;
CREATE TABLE CLIENTE (
Codigo_Cliente CHAR(8) NOT NULL,
Razon_Social VARCHAR2(50) NOT NULL,
Direccion VARCHAR2(50) NULL,
Telefono VARCHAR2(25) NULL,
RUC VARCHAR2(11) NULL,
DNI VARCHAR2(8) NULL)
tablespace ts_compras;
CREATE TABLE USUARIO (
CODIGO_USUARIO CHAR(8) NOTNULL,
NOMBRES VARCHAR2(50) NOT NULL,
APELLIDOS VARCHAR2(50) NOT NULL,
DIRECCION VARCHAR2(50) NULL,
SEXO CHAR(1) NULL,
CLAVE VARCHAR2(4) NULL,
CONSTRAINT US_APE_NOM UNIQUE(NOMBRES,APELLIDOS),
CONSTRAINT US_SEXO CHECK (SEXO IN ('M','F'))
TABLESPACE ts_compras;
CREATE TABLE ENCABEZADO_DOCUMENTO (
Codigo_Encabezado_Documento CHAR(8) NOT NULL,
Fecha_emision DATE DEFAULT SYSDATE,
Importe_Bruto NUMBER(8,2) NOT NULL,
Descuento NUMBER(8,2) NOT NULL,
Recargo NUMBER(8,2) NOT NULL,
Importe_Neto NUMBER(8,2) NOT NULL,
IGV NUMBER(8,2) NOT NULL,
Total_Pagar NUMBER(8,2) NOT NULL,
Codigo_Cliente CHAR(8) NOTNULL,
Codigo_Tipo_Documento CHAR(8) NOT NULL,
Serie_Documento CHAR(3) NOT NULL,
Numero_Documento CHAR(10) NOT NULL)
tablespace ts_compras;
CREATE TABLE DETALLE_DOCUMENTO (
Codigo_Detalle_Documento CHAR(8) NOT NULL,
Codigo_Encabezado_Documento CHAR(8) NOT NULL,
Codigo_Producto CHAR(8) NOT NULL,
Cantidad NUMBER(8,2) NOT NULL,
Precio NUMBER(8,2) NOT NULL,
Importe NUMBER(8,2) NOT NULL)
tablespace ts_compras;
Anadiendo columnas a una table
alter table cliente
add
(direccion varchar2(50),
direccion2 varchar2(20));
modificando la definición de una columna existente
alter table cliente
modify
(direccion2 varchar2(50));
Eliminando columnas
alter table cliente
drop column direccion2;
Eliminando Tablas
drop table cliente
ALTER TABLE TIPO_DOCUMENTO

Recomendados

SQL-DDL
SQL-DDLSQL-DDL
SQL-DDLbdatos
 
SQL: DDL, DML y SQL
SQL: DDL, DML y SQLSQL: DDL, DML y SQL
SQL: DDL, DML y SQLCarmen Soler
 
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)Sergio Sanchez
 
Command oracle
Command oracleCommand oracle
Command oraclednrdeleon
 
Sql basico parte_i_
Sql basico parte_i_Sql basico parte_i_
Sql basico parte_i_Luis Jherry
 
Sql manipulacion de tabla
Sql manipulacion de tablaSql manipulacion de tabla
Sql manipulacion de tabladmonges
 
Tm13 introduccion al_sql
Tm13 introduccion al_sqlTm13 introduccion al_sql
Tm13 introduccion al_sqlJulio Pari
 

Más contenido relacionado

La actualidad más candente

DDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datosDDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datosvargasaldanajohanna
 
Sentencias Sql
Sentencias SqlSentencias Sql
Sentencias Sqlfer951
 
Comandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizComandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizBolivar Castillo
 
Cuadro de sentencias con descripcion y ejemplo
Cuadro de sentencias con descripcion y ejemploCuadro de sentencias con descripcion y ejemplo
Cuadro de sentencias con descripcion y ejemploWilliam Sánchez
 
Comandos dll en sql server
Comandos dll en sql serverComandos dll en sql server
Comandos dll en sql serverVicente Alberca
 
Sql basico parte_i_
Sql basico parte_i_Sql basico parte_i_
Sql basico parte_i_Luis Jherry
 
Sql basico parte_i_
Sql basico parte_i_Sql basico parte_i_
Sql basico parte_i_Luis Jherry
 
MANUAL COMPLETO DE SQL
MANUAL COMPLETO DE SQLMANUAL COMPLETO DE SQL
MANUAL COMPLETO DE SQLEdgar Sandoval
 
Comandos de configuracion vfp
Comandos de configuracion vfpComandos de configuracion vfp
Comandos de configuracion vfphmosquera
 
Proyecto de Base de Datos (Parte II)
Proyecto de Base de Datos (Parte II)Proyecto de Base de Datos (Parte II)
Proyecto de Base de Datos (Parte II)Anna Vega
 
3.1 Formatos y Seguimiento de Nombres
3.1 Formatos y Seguimiento de Nombres3.1 Formatos y Seguimiento de Nombres
3.1 Formatos y Seguimiento de NombresTraining_14
 

La actualidad más candente (17)

Sql básico - compendio
Sql básico  - compendioSql básico  - compendio
Sql básico - compendio
 
DDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datosDDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datos
 
Sentencias Sql
Sentencias SqlSentencias Sql
Sentencias Sql
 
Comandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizComandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-liz
 
Cuadro de sentencias con descripcion y ejemplo
Cuadro de sentencias con descripcion y ejemploCuadro de sentencias con descripcion y ejemplo
Cuadro de sentencias con descripcion y ejemplo
 
Consultas básicas en sql server
Consultas básicas en sql serverConsultas básicas en sql server
Consultas básicas en sql server
 
Comandos dll en sql server
Comandos dll en sql serverComandos dll en sql server
Comandos dll en sql server
 
Sql basico parte_i_
Sql basico parte_i_Sql basico parte_i_
Sql basico parte_i_
 
Manual practicosql
Manual practicosqlManual practicosql
Manual practicosql
 
Sql basico parte_i_
Sql basico parte_i_Sql basico parte_i_
Sql basico parte_i_
 
MANUAL COMPLETO DE SQL
MANUAL COMPLETO DE SQLMANUAL COMPLETO DE SQL
MANUAL COMPLETO DE SQL
 
Introduccion a SQL
Introduccion a SQL Introduccion a SQL
Introduccion a SQL
 
Consultas sql
Consultas sqlConsultas sql
Consultas sql
 
Comandos de configuracion vfp
Comandos de configuracion vfpComandos de configuracion vfp
Comandos de configuracion vfp
 
Proyecto de Base de Datos (Parte II)
Proyecto de Base de Datos (Parte II)Proyecto de Base de Datos (Parte II)
Proyecto de Base de Datos (Parte II)
 
Comandosql2
Comandosql2Comandosql2
Comandosql2
 
3.1 Formatos y Seguimiento de Nombres
3.1 Formatos y Seguimiento de Nombres3.1 Formatos y Seguimiento de Nombres
3.1 Formatos y Seguimiento de Nombres
 

Similar a 1 lab-2 -tablas-y-restricciones

CreacióN De Objetos En MySQL
CreacióN De Objetos En MySQLCreacióN De Objetos En MySQL
CreacióN De Objetos En MySQLalexmerono
 
Sesión03 - Creación de objetos (Oracle)
Sesión03 - Creación de objetos (Oracle)Sesión03 - Creación de objetos (Oracle)
Sesión03 - Creación de objetos (Oracle)José Toro
 
Sesión02 - Creación de objetos (Oracle)
Sesión02 - Creación de objetos (Oracle)Sesión02 - Creación de objetos (Oracle)
Sesión02 - Creación de objetos (Oracle)José Toro
 
Trabajando con sql (parte 1)
Trabajando con sql (parte 1)Trabajando con sql (parte 1)
Trabajando con sql (parte 1)Juan Vade
 
Consultas sql 2014
Consultas sql 2014Consultas sql 2014
Consultas sql 2014Henry Cambal
 
Consultas sql 2014
Consultas sql 2014Consultas sql 2014
Consultas sql 2014Henry Cambal
 
Ejemploddl dml-ok
Ejemploddl dml-okEjemploddl dml-ok
Ejemploddl dml-okBB
 
Bases de Datos Cap VI:SQL: SQL-Definición de datos
Bases de Datos Cap VI:SQL: SQL-Definición de datosBases de Datos Cap VI:SQL: SQL-Definición de datos
Bases de Datos Cap VI:SQL: SQL-Definición de datosVideoconferencias UTPL
 
Cheat_MySQL.docx
Cheat_MySQL.docxCheat_MySQL.docx
Cheat_MySQL.docxdcam4
 
8 Guía_Fundamentos de Base de Datos (2).docx
8 Guía_Fundamentos de Base de Datos (2).docx8 Guía_Fundamentos de Base de Datos (2).docx
8 Guía_Fundamentos de Base de Datos (2).docxLeydyVeronicaDelgado
 
Clente servidor consultas sql
Clente servidor consultas sqlClente servidor consultas sql
Clente servidor consultas sqlDiego Bladimir
 
4. sql (autoguardado)
4. sql (autoguardado)4. sql (autoguardado)
4. sql (autoguardado)felpe33
 

Similar a 1 lab-2 -tablas-y-restricciones (20)

Consultas
ConsultasConsultas
Consultas
 
CreacióN De Objetos En MySQL
CreacióN De Objetos En MySQLCreacióN De Objetos En MySQL
CreacióN De Objetos En MySQL
 
Sesión03 - Creación de objetos (Oracle)
Sesión03 - Creación de objetos (Oracle)Sesión03 - Creación de objetos (Oracle)
Sesión03 - Creación de objetos (Oracle)
 
Sesión02 - Creación de objetos (Oracle)
Sesión02 - Creación de objetos (Oracle)Sesión02 - Creación de objetos (Oracle)
Sesión02 - Creación de objetos (Oracle)
 
Sql 2010
Sql 2010Sql 2010
Sql 2010
 
Trabajando con sql (parte 1)
Trabajando con sql (parte 1)Trabajando con sql (parte 1)
Trabajando con sql (parte 1)
 
Comandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizComandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-liz
 
Consultas sql 2014
Consultas sql 2014Consultas sql 2014
Consultas sql 2014
 
Consultas sql 2014
Consultas sql 2014Consultas sql 2014
Consultas sql 2014
 
Ejemploddl dml-ok
Ejemploddl dml-okEjemploddl dml-ok
Ejemploddl dml-ok
 
Consultas SQL
Consultas SQLConsultas SQL
Consultas SQL
 
SQL - Structured Query Language
SQL - Structured Query LanguageSQL - Structured Query Language
SQL - Structured Query Language
 
Bases de Datos Cap VI:SQL: SQL-Definición de datos
Bases de Datos Cap VI:SQL: SQL-Definición de datosBases de Datos Cap VI:SQL: SQL-Definición de datos
Bases de Datos Cap VI:SQL: SQL-Definición de datos
 
Cheat_MySQL.docx
Cheat_MySQL.docxCheat_MySQL.docx
Cheat_MySQL.docx
 
8 Guía_Fundamentos de Base de Datos (2).docx
8 Guía_Fundamentos de Base de Datos (2).docx8 Guía_Fundamentos de Base de Datos (2).docx
8 Guía_Fundamentos de Base de Datos (2).docx
 
Comandos ddl
Comandos ddlComandos ddl
Comandos ddl
 
Consultas sql
Consultas sqlConsultas sql
Consultas sql
 
Clente servidor consultas sql
Clente servidor consultas sqlClente servidor consultas sql
Clente servidor consultas sql
 
SENTENCIAS DE SQL SERVER
SENTENCIAS DE SQL SERVERSENTENCIAS DE SQL SERVER
SENTENCIAS DE SQL SERVER
 
4. sql (autoguardado)
4. sql (autoguardado)4. sql (autoguardado)
4. sql (autoguardado)
 

Último

Casco_Angela_Práctica_Infopedagogía4.pdf
Casco_Angela_Práctica_Infopedagogía4.pdfCasco_Angela_Práctica_Infopedagogía4.pdf
Casco_Angela_Práctica_Infopedagogía4.pdfAngelaCasco1
 
Shaigua_Adriana_Vique_Maria_Tarea_4.pdf.
Shaigua_Adriana_Vique_Maria_Tarea_4.pdf.Shaigua_Adriana_Vique_Maria_Tarea_4.pdf.
Shaigua_Adriana_Vique_Maria_Tarea_4.pdf.majitovique21
 
Informe. El Observatorio Social "la Caixa"
Informe. El Observatorio Social "la Caixa"Informe. El Observatorio Social "la Caixa"
Informe. El Observatorio Social "la Caixa"mmunozgt
 
Presentacion cuidado del medio ambiente collage scrapbook verde y blanco.pdf
Presentacion cuidado del medio ambiente collage scrapbook verde y blanco.pdfPresentacion cuidado del medio ambiente collage scrapbook verde y blanco.pdf
Presentacion cuidado del medio ambiente collage scrapbook verde y blanco.pdfJohnCarvajal23
 
Repaso..................................
Repaso..................................Repaso..................................
Repaso..................................brianjars
 
Presentación sobre el Programa "Foro Nativos Digitales"
Presentación sobre el Programa "Foro Nativos Digitales"Presentación sobre el Programa "Foro Nativos Digitales"
Presentación sobre el Programa "Foro Nativos Digitales"gelisbeths
 
T2 IA Elaboración de dibujos por computadora.pdf
T2 IA Elaboración de dibujos por computadora.pdfT2 IA Elaboración de dibujos por computadora.pdf
T2 IA Elaboración de dibujos por computadora.pdfcecymendozaitnl
 
Proceso de matricula articulacioncimm.pdf
Proceso de matricula articulacioncimm.pdfProceso de matricula articulacioncimm.pdf
Proceso de matricula articulacioncimm.pdfJorgecego
 
Tarea 1. Ensayo sobre "La sociedad de la ignorancia"
Tarea 1. Ensayo sobre "La sociedad de la ignorancia"Tarea 1. Ensayo sobre "La sociedad de la ignorancia"
Tarea 1. Ensayo sobre "La sociedad de la ignorancia"elizabethauquilla123
 
Tarea 4. Ensayo sobre "Plagio académico"
Tarea 4. Ensayo sobre "Plagio académico"Tarea 4. Ensayo sobre "Plagio académico"
Tarea 4. Ensayo sobre "Plagio académico"elizabethauquilla123
 
Teorías del Aprendizaje y paradigmas.pptx
Teorías del Aprendizaje y paradigmas.pptxTeorías del Aprendizaje y paradigmas.pptx
Teorías del Aprendizaje y paradigmas.pptxJunkotantik
 
INFOGRAFÍA SOBRE INSTITUTO DIOCESANO BARQUISIMETO
INFOGRAFÍA SOBRE INSTITUTO DIOCESANO BARQUISIMETOINFOGRAFÍA SOBRE INSTITUTO DIOCESANO BARQUISIMETO
INFOGRAFÍA SOBRE INSTITUTO DIOCESANO BARQUISIMETOangelmanzano170909
 
Prueba 1_Jessica J.docx_Evaluación grupo 1
Prueba 1_Jessica J.docx_Evaluación grupo 1Prueba 1_Jessica J.docx_Evaluación grupo 1
Prueba 1_Jessica J.docx_Evaluación grupo 1jessicamaribeljaneta
 
Tema 2 Los minerales: los materiales de la Geosfera 2024
Tema 2 Los minerales: los materiales de la Geosfera 2024Tema 2 Los minerales: los materiales de la Geosfera 2024
Tema 2 Los minerales: los materiales de la Geosfera 2024IES Vicent Andres Estelles
 
Presentación sobre escritura colaborativa2024 Unidad 1.pptx
Presentación sobre escritura colaborativa2024 Unidad 1.pptxPresentación sobre escritura colaborativa2024 Unidad 1.pptx
Presentación sobre escritura colaborativa2024 Unidad 1.pptxINESDVERA
 
reciente evolucion de la economia china y su impacto en el mundo
reciente evolucion de la economia china y su impacto en el mundo reciente evolucion de la economia china y su impacto en el mundo
reciente evolucion de la economia china y su impacto en el mundo Carlos Alberto Aquino Rodriguez
 
EJERCICIO TOMÁS Y LA ENERGÍA ELÉCTRICA.docx
EJERCICIO TOMÁS Y LA ENERGÍA ELÉCTRICA.docxEJERCICIO TOMÁS Y LA ENERGÍA ELÉCTRICA.docx
EJERCICIO TOMÁS Y LA ENERGÍA ELÉCTRICA.docxnelsontobontrujillo
 
Impacto ambiental Green Illustrated Sustainable World
Impacto ambiental Green Illustrated Sustainable WorldImpacto ambiental Green Illustrated Sustainable World
Impacto ambiental Green Illustrated Sustainable WorldJohnCarvajal23
 
la evaluación formativa Diaz Barriga.pdf
la evaluación formativa Diaz Barriga.pdfla evaluación formativa Diaz Barriga.pdf
la evaluación formativa Diaz Barriga.pdfmjvalles74
 

Último (20)

Casco_Angela_Práctica_Infopedagogía4.pdf
Casco_Angela_Práctica_Infopedagogía4.pdfCasco_Angela_Práctica_Infopedagogía4.pdf
Casco_Angela_Práctica_Infopedagogía4.pdf
 
Shaigua_Adriana_Vique_Maria_Tarea_4.pdf.
Shaigua_Adriana_Vique_Maria_Tarea_4.pdf.Shaigua_Adriana_Vique_Maria_Tarea_4.pdf.
Shaigua_Adriana_Vique_Maria_Tarea_4.pdf.
 
Informe. El Observatorio Social "la Caixa"
Informe. El Observatorio Social "la Caixa"Informe. El Observatorio Social "la Caixa"
Informe. El Observatorio Social "la Caixa"
 
Presentacion cuidado del medio ambiente collage scrapbook verde y blanco.pdf
Presentacion cuidado del medio ambiente collage scrapbook verde y blanco.pdfPresentacion cuidado del medio ambiente collage scrapbook verde y blanco.pdf
Presentacion cuidado del medio ambiente collage scrapbook verde y blanco.pdf
 
Repaso..................................
Repaso..................................Repaso..................................
Repaso..................................
 
Presentación sobre el Programa "Foro Nativos Digitales"
Presentación sobre el Programa "Foro Nativos Digitales"Presentación sobre el Programa "Foro Nativos Digitales"
Presentación sobre el Programa "Foro Nativos Digitales"
 
T2 IA Elaboración de dibujos por computadora.pdf
T2 IA Elaboración de dibujos por computadora.pdfT2 IA Elaboración de dibujos por computadora.pdf
T2 IA Elaboración de dibujos por computadora.pdf
 
Proceso de matricula articulacioncimm.pdf
Proceso de matricula articulacioncimm.pdfProceso de matricula articulacioncimm.pdf
Proceso de matricula articulacioncimm.pdf
 
Tarea 1. Ensayo sobre "La sociedad de la ignorancia"
Tarea 1. Ensayo sobre "La sociedad de la ignorancia"Tarea 1. Ensayo sobre "La sociedad de la ignorancia"
Tarea 1. Ensayo sobre "La sociedad de la ignorancia"
 
Tarea 4. Ensayo sobre "Plagio académico"
Tarea 4. Ensayo sobre "Plagio académico"Tarea 4. Ensayo sobre "Plagio académico"
Tarea 4. Ensayo sobre "Plagio académico"
 
Teorías del Aprendizaje y paradigmas.pptx
Teorías del Aprendizaje y paradigmas.pptxTeorías del Aprendizaje y paradigmas.pptx
Teorías del Aprendizaje y paradigmas.pptx
 
INFOGRAFÍA SOBRE INSTITUTO DIOCESANO BARQUISIMETO
INFOGRAFÍA SOBRE INSTITUTO DIOCESANO BARQUISIMETOINFOGRAFÍA SOBRE INSTITUTO DIOCESANO BARQUISIMETO
INFOGRAFÍA SOBRE INSTITUTO DIOCESANO BARQUISIMETO
 
Prueba 1_Jessica J.docx_Evaluación grupo 1
Prueba 1_Jessica J.docx_Evaluación grupo 1Prueba 1_Jessica J.docx_Evaluación grupo 1
Prueba 1_Jessica J.docx_Evaluación grupo 1
 
Tema 2 Los minerales: los materiales de la Geosfera 2024
Tema 2 Los minerales: los materiales de la Geosfera 2024Tema 2 Los minerales: los materiales de la Geosfera 2024
Tema 2 Los minerales: los materiales de la Geosfera 2024
 
PPT: Tu amor es grande hasta los cielos IASD
PPT: Tu amor es grande hasta los cielos IASDPPT: Tu amor es grande hasta los cielos IASD
PPT: Tu amor es grande hasta los cielos IASD
 
Presentación sobre escritura colaborativa2024 Unidad 1.pptx
Presentación sobre escritura colaborativa2024 Unidad 1.pptxPresentación sobre escritura colaborativa2024 Unidad 1.pptx
Presentación sobre escritura colaborativa2024 Unidad 1.pptx
 
reciente evolucion de la economia china y su impacto en el mundo
reciente evolucion de la economia china y su impacto en el mundo reciente evolucion de la economia china y su impacto en el mundo
reciente evolucion de la economia china y su impacto en el mundo
 
EJERCICIO TOMÁS Y LA ENERGÍA ELÉCTRICA.docx
EJERCICIO TOMÁS Y LA ENERGÍA ELÉCTRICA.docxEJERCICIO TOMÁS Y LA ENERGÍA ELÉCTRICA.docx
EJERCICIO TOMÁS Y LA ENERGÍA ELÉCTRICA.docx
 
Impacto ambiental Green Illustrated Sustainable World
Impacto ambiental Green Illustrated Sustainable WorldImpacto ambiental Green Illustrated Sustainable World
Impacto ambiental Green Illustrated Sustainable World
 
la evaluación formativa Diaz Barriga.pdf
la evaluación formativa Diaz Barriga.pdfla evaluación formativa Diaz Barriga.pdf
la evaluación formativa Diaz Barriga.pdf
 

1 lab-2 -tablas-y-restricciones

  • 1. Pag. 1 TABLAS CREAR TABLAS Los requisitos de la cláusula CREATE TABLE son: Nombre de la tabla Nombre de la columna Tipo 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:  A-Z,a-z,0-9  $ y # también son válidos pero no se sugieren  No debe ser 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 2 (iddepa number(2), 3 nombre varchar2(14), 4 ubicacion varchar2(13)); Borrar tablas Sintaxis: 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: CREATE TABLE dept AS SELECT * FROM departamento;  Mostrar estructura.  Listar registros. Restricciones de Columnas
  • 2. La siguiente tabla muestra los diferentes restricciones manejadas por oracle. CONSTRAINT USO PRIMARY KEY Identifica de manera única a cada fila de la tabla CHECK 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 esta columna de la clave primaria de la tabla referenciada. [NOT] NULL Especifica que esta columna no puede contener un valor nulo. UNIQUE Especifica que una o más columnas deben tener valores únicos través de todas las filas. Oracle crea un índice único para asegurar este constraint. ON DELETE CASCADE Especifica que Oracle mantendrá la integridad automáticamente removiendo los valores de la clave foránea dependiente si se remueven los valores de la clave primaria o única. Ejemplo: Diseño de una tabla identificando sus restricciones principales: Crear una tabla que utilice los diferentes tipos de constraints. Campo Tipo de dato longitud restriccción codigo Number 4 PK Nombre Varachar2 10 UNICO Cargo Varachar2 9 NO NULO Jefe Number 4 NULO ingreso Date Fecha del sistema por defecto Salario Number 7,2 Salario>=0 Comisión Number 7,2 Comisión>=0 departamento Number 2 Solo acepta10 o 20 SQL> CREATE TABLE emp1 2 (codigo NUMBER(4) PRIMARY KEY, 3 nombre VARCHAR2(10) UNIQUE, 4 trabajo VARCHAR2(9) NOT NULL, 5 jefe NUMBER(4) NULL, 6 ingreso DATE DEFAULT SYSDATE, 7 salario NUMBER(7,2) DEFAULT 0 CHECK(salario>=0), 8 comision NUMBER(7,2) DEFAULT 0 CHECK(comision>=0), 9 departamento NUMBER(2) CHECK(departamento IN (10,20));
  • 3. OPERACIONES BÁSICAS Modificar tablas Cláusula ALTER TABLE Se utiliza para alterar la definición de uan tabla:  Añadiendo o eliminando columnas o restricciones  Modificando definiciones de columnas (tipo de datos, NotNull, etc.) Ejemplo: Agregue la columna teléfono a la tabla emp1. SQL> ALTER TABLE emp1 ADD telefono1 CHAR(8); Ejemplo: La comisión debe ser menor o igual que el salario. SQL>ALTER TABLE emp1 ADD CHECK(comision<=salario); Ejemplo: Cambie el tipo de dato de la columna trabajo de CHAR(9) a CHAR(10). SQL> ALTER TABLE emp1 MODIFY trabajo CHAR(10); Ejemplo: Borrar la clave primaria de la tabla emp1. SQL> ALTER TABLE emp1 DROP PRIMARY KEY; Ejemplo Agregar el atributo DNI con la restricción UNIQUE. SQL> ALTER TABLE emp1 ADD dni char(8) CONSTRAINT u_dni UNIQUE Eliminar Columnas Sintaxis: ALTER TABLE nombre_tabla DROP COLUMN nombre_columna; Ejemplo: Elimine la columna teléfono de la tabla emp1; SQL> ALTER TABLE emp1 DROP COLUMN telefono;
  • 4. Renombrar una tabla El comando RENAME permite renombrar una tabla. Sintaxis; RENAME nombre_tabla TO nombre_nuevo Ejemplo: SQL> RENAME departamento TO dpto1; Renombrar una columna De la tabla emp1 modificar el nombre del atributo departamento por dpto. sp_rename ‘nombre_tabla.campo ‘,’nombre_tabla.nuevo_nombre’ créate cr Ejemplo 1 Previamente conectarseconel usuario administrador SYS Creamos el usuario CREATE USER COMPRAS IDENTIFIED BY PS02 Asignarle privilegios GRANT CONNECT, RESOURCE TO COMPRAS Creamos Los Tablespace Create tablespace ts_compras Datafile ‘F:practicaoraclets_comp.ora’ Size 3 m Extent management local autoallocate; *Nota: debe existir la carpeta practicaoracle. Nos conectamos al esquema factura Connect COMPRAS /PS02 Procedemos a crear tablas CREATE TABLE TIPO_DOCUMENTO ( Codigo_Tipo_Documento CHAR(8) NOT NULL, nombre VARCHAR2(50) NOT NULL)
  • 5. tablespace ts_compras; CREATE TABLE MARCA ( Codigo_Marca number(8) NOTNULL, nombre VARCHAR2(50) CONSTRAINT NOM_MAR NOT NULL, CONSTRAINT NOM_UNI UNIQUE(NOMBRE)) tablespace ts_compras; CREATE TABLE CATEGORIA ( Codigo_Categoria CHAR(8) NOTNULL, nombre VARCHAR2(50) CONSTRAINT NOM_CAT UNIQUE, constraint CAT_NOM check(NOMBRE in ('A','B','C','D'))) tablespace ts_compras; CREATE TABLE PRODUCTO ( Codigo_Producto CHAR(8) NOT NULL, NOMBRE VARCHAR2(50) NOT NULL, Modelo VARCHAR2(50) NOT NULL, Plataforma VARCHAR2(50) NULL, Precio NUMBER(8,2) NOT NULL, Stock NUMBER(8,2) NOT NULL, Codigo_Categoria CHAR(8) NOTNULL, Codigo_Marca number(8) NOTNULL, CONSTRAINT NOM_PROD UNIQUE(NOMBRE), CONSTRAINT PRE_STOCK CHECK (STOCK>=0 and STOCK<=100)) tablespace ts_compras; CREATE TABLE CLIENTE ( Codigo_Cliente CHAR(8) NOT NULL, Razon_Social VARCHAR2(50) NOT NULL, Direccion VARCHAR2(50) NULL, Telefono VARCHAR2(25) NULL, RUC VARCHAR2(11) NULL, DNI VARCHAR2(8) NULL) tablespace ts_compras; CREATE TABLE USUARIO ( CODIGO_USUARIO CHAR(8) NOTNULL, NOMBRES VARCHAR2(50) NOT NULL, APELLIDOS VARCHAR2(50) NOT NULL, DIRECCION VARCHAR2(50) NULL, SEXO CHAR(1) NULL, CLAVE VARCHAR2(4) NULL, CONSTRAINT US_APE_NOM UNIQUE(NOMBRES,APELLIDOS), CONSTRAINT US_SEXO CHECK (SEXO IN ('M','F')) TABLESPACE ts_compras; CREATE TABLE ENCABEZADO_DOCUMENTO ( Codigo_Encabezado_Documento CHAR(8) NOT NULL,
  • 6. Fecha_emision DATE DEFAULT SYSDATE, Importe_Bruto NUMBER(8,2) NOT NULL, Descuento NUMBER(8,2) NOT NULL, Recargo NUMBER(8,2) NOT NULL, Importe_Neto NUMBER(8,2) NOT NULL, IGV NUMBER(8,2) NOT NULL, Total_Pagar NUMBER(8,2) NOT NULL, Codigo_Cliente CHAR(8) NOTNULL, Codigo_Tipo_Documento CHAR(8) NOT NULL, Serie_Documento CHAR(3) NOT NULL, Numero_Documento CHAR(10) NOT NULL) tablespace ts_compras; CREATE TABLE DETALLE_DOCUMENTO ( Codigo_Detalle_Documento CHAR(8) NOT NULL, Codigo_Encabezado_Documento CHAR(8) NOT NULL, Codigo_Producto CHAR(8) NOT NULL, Cantidad NUMBER(8,2) NOT NULL, Precio NUMBER(8,2) NOT NULL, Importe NUMBER(8,2) NOT NULL) tablespace ts_compras; Anadiendo columnas a una table alter table cliente add (direccion varchar2(50), direccion2 varchar2(20)); modificando la definición de una columna existente alter table cliente modify (direccion2 varchar2(50)); Eliminando columnas alter table cliente drop column direccion2; Eliminando Tablas drop table cliente ALTER TABLE TIPO_DOCUMENTO
  • 7. Add Constraint PK_Tipo_Documento Primary Key (Codigo_Tipo_Documento) ALTER TABLE USUARIO Add Constraint PK_Usuario Primary Key (Codigo_Usuario) ALTER TABLE MARCA Add Constraint PK_Marca Primary Key (Codigo_Marca) ALTER TABLE CATEGORIA Add Constraint PK_categoria Primary Key (Codigo_Categoria) ALTER TABLE PRODUCTO Add Constraint PK_producto Primary Key (Codigo_Producto) ALTER TABLE CLIENTE Add Constraint PK_Cliente Primary Key (Codigo_Cliente) ALTER TABLE ENCABEZADO_DOCUMENTO Add Constraint PK_Encabezado_Documento Primary Key (Codigo_Encabezado_Documento) ALTER TABLE DETALLE_DOCUMENTO Add Constraint PK_Detalle_Documento Primary Key (Codigo_Detalle_Documento) --------------------------------------------------------------------------------------------------- ALTER TABLE PRODUCTO ADD CONSTRAINT FK_Categoria FOREIGN KEY (Codigo_Categoria) REFERENCES CATEGORIA ALTER TABLE PRODUCTO ADD CONSTRAINT FK_Marca FOREIGN KEY (Codigo_Marca) REFERENCES MARCA ALTER TABLE ENCABEZADO_DOCUMENTO ADD CONSTRAINT FK_Cliente FOREIGN KEY (Codigo_Cliente) REFERENCES CLIENTE
  • 8. ALTER TABLE ENCABEZADO_DOCUMENTO ADD CONSTRAINT FK_Tipo_Documento FOREIGN KEY (Codigo_Tipo_Documento) REFERENCES TIPO_DOCUMENTO ALTER TABLE DETALLE_DOCUMENTO ADD CONSTRAINT FK_Encabezado_Documento FOREIGN KEY (CODIGO_ENCABEZADO_DOCUMENTO) REFERENCES ENCABEZADO_DOCUMENTO ALTER TABLE DETALLE_DOCUMENTO ADD CONSTRAINT FK_Producto FOREIGN KEY (Codigo_Producto) REFERENCES PRODUCTO SENTENCIAS CREATE SEQUENCE MARCA_ID INCREMENT BY 10 START WITH 8010 MINVALUE 0 MAXVALUE 999999 NOCYCLE NOCACHE ALTER SEQUENCE MARCA_ID INCREMENT BY 20 DROP SEQUENCE MARCA_ID INSERT INTO CLIENTE VALUES ('CL001', 'usb','Los Sauces 545', '534-3898','89898989', '09900222') INSERT INTO CLIENTE VALUES ('CL002', 'usb','Los Sauces 545', '534-3898','89898989', '09900222') INSERT INTO CLIENTE VALUES ('CL003', 'usb','Los Sauces 545', '534-3898','89898989', '09900222') INSERT INTO CLIENTE VALUES ('CL004', 'usb','Los Sauces 545', '534-3898','89898989', '09900222') INSERT INTO CLIENTE VALUES ('CL005', 'usb','Los Sauces 545', '534-3898','89898989', '09900222') INSERT INTO CLIENTE VALUES ('CL006', 'usb','Los Sauces 545', '534-3898','89898989', '09900222') COMMIT
  • 9. INSERT INTO CATEGORIA VALUES ('C00001','A'); INSERT INTO CATEGORIA VALUES ('C00002','B'); INSERT INTO CATEGORIA VALUES ('C00003','C'); INSERT INTO CATEGORIA VALUES ('C00004','D') COMMIT INSERT INTO MARCA VALUES (marca_id.NEXTVAL,'SAGA'); INSERT INTO MARCA VALUES (marca_id.NEXTVAL,'RYPLEI'); INSERT INTO MARCA VALUES (marca_id.NEXTVAL ,'SANDOR'); INSERT INTO MARCA VALUES (marca_id.NEXTVAL ,'ABC') COMMIT INSERT INTO PRODUCTO VALUES ('PR000001', 'silla','giratoria','PLATAF',123,99,'C00001',8010); INSERT INTO PRODUCTO VALUES ('PR000002', 'mesa','giratoria','PLATAF',123,99,'C00001',8010); INSERT INTO PRODUCTO VALUES ('PR000003', 'cama','giratoria','PLATAF',123,99,'C00001',8010); INSERT INTO PRODUCTO VALUES ('PR000004', 'estante','vertical','PLATAF',123,99,'C00001',8010); COMMIT INSERT INTO TIPO_DOCUMENTO VALUES ('TIPDOC01','OFICIO'); INSERT INTO TIPO_DOCUMENTO VALUES ('TIPDOC02','MEMO'); INSERT INTO TIPO_DOCUMENTO VALUES ('TIPDOC03','SOLICITUD'); INSERT INTO TIPO_DOCUMENTO VALUES ('TIPDOC04','CARTA') COMMIT INSERT INTO ENCABEZADO_DOCUMENTO VALUES ('ENCDOC01','15/03/2010',1000,10,200,1000,100,1900,'CL001','TIPDOC01','S01','001' ); INSERT INTO DETALLE_DOCUMENTO VALUES ('DETDOC01','ENCDOC01','PR000002',1000,100,2000); COMMIT INSERT INTO ENCABEZADO_DOCUMENTO VALUES ('ENCDOC02','15/03/2010',1000,10,200,1000,100,1900,'CL001','TIPDOC01','S01','001' );
  • 10. INSERT INTO DETALLE_DOCUMENTO VALUES ('DETDOC02','ENCDOC02','PR000001',1000,100,2000); COMMIT INSERT INTO ENCABEZADO_DOCUMENTO VALUES ('ENCDOC03','15/03/2010',1000,10,200,1000,100,1900,'CL001','TIPDOC01','S01','001' ); INSERT INTO DETALLE_DOCUMENTO VALUES ('DETDOC03','ENCDOC03','PR000004',1000,100,2000); COMMIT