ddl-lenguaje-de-definición-de-datos
TRANSCRIPT
![Page 1: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/1.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
![Page 2: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/2.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• D. D. L.
––DataData––DefinitionDefinition––LanguageLanguage..
D. D. L. Definición de Datos
![Page 3: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/3.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• D. D. L.
––DataData »» LenguajeLenguaje––DefinitionDefinition »» de Definicide Definicióónn––LanguageLanguage »» de Datosde Datos
D. D. L. Definición de Datos
![Page 4: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/4.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• D. D. L.–Permite crear, modificar y eliminar las estructuras para almacenar los datos (Metadata).
–Permite definir el esquema de la B.D.
D. D. L. Definición de Datos
![Page 5: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/5.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• D. D. L.–Bases de Datos
• Tablas (relaciones o entidades)–Columnas (atributos)–Claves:
» Primarias (atributo determinante)» Foráneas (claves externas, claves de otras tablas)
» Únicas (claves candidatas)–Índices, etc.
• Vistas (consultas almacenadas)
D. D. L. Definición de Datos
![Page 6: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/6.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• Los comandos para definir datos son:
––CREATECREATE, crear.
––ALTERALTER, modificar o alterar.
––DROPDROP, eliminar o descartar.
D. D. L. Definición de Datos
![Page 7: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/7.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
CREATE CREATE DATABASEDATABASE
![Page 8: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/8.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• CREATE DATABASE–Crea una nueva Base de Datos. –En InformiX existen varios “espacios”para almacenar las B. D., DBSpaces.
–Hay que especificar en cual, sino se crea en el “espacio” del root (rootdbs), de capacidad muy limitada.
D. D. L. Crear Base de Datos
![Page 9: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/9.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• CREATE DATABASE–Crear una nueva Base de Datos. CREATE DATABASECREATE DATABASE nombre_BDININ nombre_espacio
––Ejemplo:Ejemplo:
CREATE DATABASECREATE DATABASE BD_3IX_apeININ btdbs
D. D. L. Crear Base de Datos
![Page 10: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/10.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• CREATE DATABASE–Al crear un base de datos el usuario que ejecute la instrucción CREATE... se le asigna permisos como DBA (Administrador de la BD)
–Ningún usuario (excepto informix) pude utilizar la BD, hasta que se asignen permisos.
D. D. L. Crear Base de Datos
![Page 11: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/11.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
CREATE CREATE TABLETABLE
![Page 12: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/12.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• CREATE TABLE–Crea una nueva tabla (relación o entidad)–Para cada atributo se puede especificar:
• Nombre » Obligatorio• Tipo de dato » Obligatorio• Dominio• Restricciones
D. D. L. Creación de Tablas
![Page 13: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/13.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• CREATE TABLE–Tipos de restricciones:
•De clave•Atributos de ingreso obligatorio•De integridad:
–De dominio–Referencial
D. D. L. Creación de Tablas
![Page 14: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/14.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• CREATE TABLE–Sintaxis:CREATE TABLECREATE TABLENOM_TABLA (
ATRIB1 TIPO_DATO,ATRIB2 TIPO_DATO,ATRIB3 TIPO_DATO,.....);
D. D. L. Creación de Tablas
![Page 15: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/15.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• Tipos de Datos– El gestor de base de datos soporta las
siguientes categorías de tipos de datos:
• de caracteres• de números• de tiempo
• para objetos grandes
D. D. L. Creación de Tablas
![Page 16: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/16.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• Tipos de datos de caracteres– CHAR ( largo )– NCHAR ( largo )
• caracteres especiales del idioma estándar• largo: entre 1 y 32767
– VARHAR (máximo, reserva)– NVARCHAR (máximo, reserva)
• caracteres especiales del idioma estándar• máximo: entre 1 y 255. Tamaño máximo de la
cadena• reserva: entre 0 y 255. Tamaño reservado para la
cadena
D. D. L. Creación de Tablas
![Page 17: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/17.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• Tipos de datos numéricos– Tipo de Datos Numéricos Exactos
• INTEGER– -2.147.483.647 a 2.147.483.647
• SMALLINT– -32.767 a 32.767
• SERIAL ( n )– n: comienzo de la serie– integer autonumérico
D. D. L. Creación de Tablas
![Page 18: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/18.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. Tipos de Datos
• Tipos de datos numéricos– Tipo de Datos Numéricos Exactos
• DECIMAL ( p , s )–p: cantidad de dígitos–s: cantidad de decimales
• MONEY ( p , s )–símbolo monetario
![Page 19: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/19.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• Tipos de datos numéricos– Tipo de Datos Numéricos Aproximados
• DECIMAL ( p )– p: precisión del número real, un integer positivo
• FLOAT ( p )– p: de 1 a 32 dígitos significantes, 16 por defecto
• SAMLLFLOAT– 8 dígitos significantes
D.D.L. Tipos de Datos
![Page 20: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/20.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• Tipos de datos de tiempo– DATE
• fecha• formato (dd / mm /aaaa)
D.D.L. Tipos de Datos
![Page 21: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/21.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• Tipos de datos de tiempo– DATETIME
• fecha y hora• formato (aaaa-mm-dd hh:mm:ss.fff)
DATETIME Year To Year (1 a 9999)Month To Month (1 a 12)Day To Day (1 a 31-28)Hour To Hour (0 a 23)Minute To Minute (0 a 59)Second To Second (0 a 59)Fraction To Fraction (1 a 5)
3 - 1 milésima de segundo
D.D.L. Tipos de Datos
![Page 22: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/22.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• Tipos de datos de tiempo– INTERVAL
• almacena una unidad de tiempoINTERVAL Year(p) To Year
Month(p) To MonthDay(p) To DayHour(p) To HourMinute(p) To MinuteSecond(p) To SecondFraction(p) To Fraction
p: cantidad máxima de dígitos máximo 9
D.D.L. Tipos de Datos
![Page 23: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/23.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• Tipos de datos de objetos grandes– TEXT
• almacena caracteres hasta 2 31 bytes
– BYTE• almacena hasta 231 bytes
D.D.L. Tipos de Datos
![Page 24: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/24.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L.Caso de Estudio
• Caso de Estudio:–En un supermercado las cajerascajeras realizan la facturación de los productosproductos a los clientesclientes.
–Los productosproductos pertenecen a distintos tipos (Alimentos, Carnes, etc.) y tienen distintos % de I.V.A. (básico, mínimo, eximidos)
![Page 25: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/25.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
CI-Caj
NombreeMail
Teléfonosdirección
Cajeras
![Page 26: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/26.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
CI-Caj
NombreeMail
Teléfonosdirección
**Cajeras
calle
esquinanombre
apellido
número
![Page 27: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/27.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
CI-Caj
CI-Clinúmero
NombreeMail
Teléfonosdirección**
Clientes
NombreeMail
Teléfonosdirección
**Cajeras
calle
esquinanombre
apellido
número
Dirección y nombreson atributos estructuradostambien en Clientes, peropor razones de espacio y
claridad los dejaremos comoatributos simples en el DER
![Page 28: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/28.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
CI-Caj ID-ProdDescripción
Precio
CI-Clinúmero
IVATipo-Producto
Productos
NombreeMail
Teléfonosdirección**
Clientes
NombreeMail
Teléfonosdirección
**Cajeras
![Page 29: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/29.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
CI-Caj ID-ProdDescripción
Precio
CI-Clinúmero
IVATipo-Producto
Productos
NombreeMail
Teléfonosdirección**
Clientes
NombreeMail
Teléfonosdirección
**Cajeras
MismosAtributos
Generalizamos
![Page 30: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/30.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
CI-Caj ID-ProdDescripción
Precio
CI-CliCI
NombreeMail
Teléfonos
número
dirección
Son
Personas **
IVATipo-Producto
Productos
NombreNombreeMaileMail
TelTelééfonosfonosdireccidireccióónn**
Clientes
NombreNombreeMaileMail
TelTelééfonosfonosdireccidireccióónn
**Cajeras
![Page 31: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/31.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
CI-Caj ID-ProdDescripción
Precio
CI-CliCI
NombreeMail
Teléfonos
número
dirección
Son
Personas
Cajeras Productos
**
ID-IVAPorcentaje
IVAs
Clientes
Tipo-ProductoIVA
![Page 32: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/32.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
CI-Caj ID-ProdDescripción
Precio
CI-CliCI
NombreeMail
Teléfonos
número
dirección
Son
Personas
Cajeras Productos
**
ID-IVAPorcentaje
IVAs
Clientes
T
Tipo-Producto
![Page 33: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/33.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
CI-Caj ID-ProdDescripción
Precio
CI-CliCI
NombreeMail
Teléfonos
número
dirección
Son
Personas
Cajeras Productos
**
ID-IVAPorcentaje
IVAs
Clientes
T
N
1
Todos los productos tienenun IVA asociado.
Tipo-Producto
![Page 34: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/34.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
CI-Caj ID-ProdDescripción
Precio
CI-CliCI
NombreeMail
Teléfonos
número
dirección
Son
Personas
FacturanCajeras Productos
**
ID-IVAPorcentaje
IVAs
Clientes
T
CantidadFechaHora
N N
N
1
Tipo-Producto
![Page 35: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/35.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
CI-Caj ID-ProdDescripciónPrecio
CI-CliCI
NombreeMail
Teléfonos
número
dirección
Son
Personas
FacturanCajeras Productos
**
ID-IVAPorcentaje
IVAs
Compran
Clientes
T
N N
N
1
N
1
CantidadFechaHora
Tipo-Producto
![Page 36: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/36.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
•Esquema Relacional:–Pasaje a Tablas:Personas (CI, nombre, apellido, calle,
número, esquina, email, teléfonos*)Cajeras (CI-Caj)Clientes (CI-Cli, número)Productos (ID-Prod, descripción, precio,
tipo)IVAs (ID-IVA, porcentaje)
![Page 37: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/37.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
•Esquema Relacional:–Pasaje a Tablas:Personas (CI, nombre, apellido, calle,
número, esquina, email, teléfonos*)Cajeras (CI-Caj)Clientes (CI-Cli, número)Productos (ID-Prod, descripcion, precio,
tipo)IVAs (ID-IVA, porcentaje)
Per-Tel(CI, teléfono)
![Page 38: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/38.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
•Esquema Relacional:–Pasaje a Tablas:Personas (CI, nombre, apellido, calle,
número, esquina, email, teléfonos*)Cajeras (CI-Caj)Clientes (CI-Cli, número)Productos (ID-Prod, descripcion, precio,
tipo)IVAs (ID-IVA, porcentaje)
Per-Tel(CI, teléfono)
![Page 39: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/39.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
•Esquema Relacional:–Pasaje a Tablas:Personas (CI, nombre, apellido, calle,
número, esquina, email)Cajeras (CI-Caj)Clientes (CI-Cli, número)Productos (ID-Prod, descripcion, precio,
tipo)IVAs (ID-IVA, porcentaje)
Per-Tel(CI, teléfono)
![Page 40: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/40.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
•Esquema Relacional:–Pasaje a Tablas:Per-Tel (CI, teléfono)
Facturan (CI-Caj, ID-Prod, fecha, hora, cantidad)
Compran (CI-Caj, ID-Prod, fecha, hora, CI-Cli)
Tienen (ID-Prod, ID-IVA)
![Page 41: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/41.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
•Esquema Relacional:–Pasaje a Tablas:Per-Tel (CI, teléfono)
Facturan (CI-Caj, ID-Prod, fecha, hora, cantidad)
Compran (CI-Caj, ID-Prod, fecha, hora, CI-Cli)
Tienen Tienen ((IDID--ProdProd, ID, ID--IVA)IVA) N a 1 con totalidadN a 1 con totalidad
![Page 42: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/42.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
•Esquema Relacional:–Pasaje a Tablas:Per-Tel (CI, teléfono)
Facturan (CI-Caj, ID-Prod, fecha, hora, cantidad)
Compran (CI-Caj, ID-Prod, fecha, hora, CI-Cli)
Tienen Tienen ((IDID--ProdProd, ID, ID--IVA)IVA) N a 1 con totalidadN a 1 con totalidad
![Page 43: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/43.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
•Esquema Relacional:–Pasaje a Tablas:Productos (ID-Prod, descripción, precio, IDID--IVAIVA, , tipotipo)
Tienen Tienen ((IDID--ProdProd, ID, ID--IVA)IVA) N a 1 con totalidadN a 1 con totalidad
![Page 44: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/44.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. – Caso de Estudio
• CREATE TABLECREATE TABLECREATE TABLE PERSONAS (CI INTEGER NOT NULL,NOMBRE VARCHAR(20,10) NOT NULL,APELLIDO VARCHAR(20,10) NOT NULL,CALLE VARCHAR(20,10),NUMERO INTEGER,ESQUINA VARCHAR(20,10),EMAIL VARCHAR(30,20),PRIMARYPRIMARY KEYKEY(CI) );
![Page 45: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/45.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. - Caso de Estudio
• CREATE TABLECREATE TABLECREATE TABLE CLIENTES(CI_CLI INTEGER NOT NULL,NUMERO INTEGER NOT NULL,
PRIMARY KEYPRIMARY KEY(CI_CLI) );
CREATE TABLECREATE TABLE CAJERAS(CI_CAJ INTEGER NOT NULL,
PRIMARY KEYPRIMARY KEY (CI_CAJ) );
![Page 46: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/46.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. - Caso de Estudio
• CREATE TABLE
CREATE TABLECREATE TABLE PRODUCTOS(ID_PROD INTEGER NOT NULL,DESCRIPCION VARCHAR(20,10) NOT NULL,PRECIO DECIMAL(7,2) NOT NULL,ID_IVA INTEGER,TIPO VARCHAR(17,12),PRIMARY KEYPRIMARY KEY (ID_PROD) );
![Page 47: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/47.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. - Caso de Estudio
• CREATE TABLE
CREATE TABLECREATE TABLE IVAS(ID_IVA INTEGER NOT NULL,PORCENTAJE DECIMAL(4,4) NOT NULL,
PRIMARY KEYPRIMARY KEY (ID_IVA) );
![Page 48: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/48.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. - Caso de Estudio
• CREATE TABLE
CREATE TABLECREATE TABLE PER_TEL(CI INTEGER NOT NULL,TELEFONO CHAR(9) NOT NULL,
PRIMARY KEYPRIMARY KEY (CI,TELEFONO));
![Page 49: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/49.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. - Caso de Estudio
• CREATE TABLE
CREATE TABLECREATE TABLE FACTURAN(CI_CAJ INTEGER NOT NULL,ID_PROD INTEGER NOT NULL,FECHA DATETIME YEAR TO MINUTE
NOT NULL,CANTIDAD DECIMAL (6,3) NOT NULL,
PRIMARY KEYPRIMARY KEY (CI_CAJ, ID_PROD, FECHA));
![Page 50: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/50.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. - Caso de Estudio
• CREATE TABLE
CREATE TABLECREATE TABLE COMPRAN(CI_CAJ INTEGER NOT NULL,ID_PROD INTEGER NOT NULL,FECHA DATETIME YEAR TO MINUTE
NOT NULL,CI_CLI INTEGER NOT NULL,PRIMARY KEYPRIMARY KEY (CI_CAJ, ID_PROD, FECHA));
![Page 51: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/51.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
ALTER ALTER TABLETABLE
![Page 52: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/52.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D.D.L. Modificar Tablas
• ALTER TABLE–La definición de una tabla se puede modificar mediante el comando ALTER TABLEALTER TABLE (alterar o modificar tabla).
![Page 53: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/53.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE– Las acciones posibles para modificar las definiciones de una tabla incluyen:
• agregar o eliminar una columna.
• modificar la definición de una columna.
• agregar o eliminar restricciones de la tabla.
D.D.L. Modificar Tablas
![Page 54: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/54.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE–– AGREGAR:AGREGAR: ADDADD–Por ejemplo, si queremos añadir a la relación PERSONAS un atributo para almacenar la FECHA de NACIMIENTO, podemos usar la orden:
ALTER TABLE PERSONAS
ADDADD FECHA_NAC DATE;
D.D.L. Agregar un atributo
![Page 55: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/55.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE–– MODIFICAR:MODIFICAR: MODIFYMODIFY–Por ejemplo, si queremos MODIFICAR la entidad PERSONAS el TAMAÑO o LARGO del atributo APELLIDO, podemos usar la orden:ALTER TABLE PERSONAS MODIFYMODIFYAPELLIDO VARCHAR(15,10);
D.D.L. Modificar el tipo de dato
![Page 56: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/56.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE–– MODIFICARMODIFICAR: : MODIFYMODIFY– Cuando se agrega una columna a una tabla, ésta admite valores nulos (NULLNULL).
– Se puede agregar una restricción a lascolumnas para que no admitan valores nulos(NOTNOT NULLNULL), siempre y cuando la columnano contenga algún valor NULLNULL.
D.D.L. Modificar Tablas
![Page 57: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/57.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE–– MODIFICARMODIFICAR:: MODIFYMODIFY–Por ejemplo, si queremos AGREGAR la restricción de NOT NULL al atributoFECHA_NAC de la relación PERSONAS podemos usar la orden:
ALTER TABLE PERSONAS MODIFYMODIFYFECHA_NAC DATE NOTNOT NULLNULL;
D.D.L. Ingreso Obligatorio
![Page 58: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/58.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE–– MODIFICARMODIFICAR:: MODIFYMODIFY
–Poner un valor por defecto, cuando no se asigna uno:
ALTER TABLE PRODUCTOS MODIFYMODIFY
TIPO VARCHAR(17,12) DEFAULTDEFAULT ‘Alimentos’
D.D.L. Valor por defecto
![Page 59: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/59.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE–– MODIFICARMODIFICAR:: MODIFYMODIFY
– También se pueden agregar a la hora de crearla tabla:
CREATE TABLE PRODUCTOS(.....TIPO VARCHAR(17,12) DEFAULTDEFAULT ‘Alimentos’,....);
D.D.L. Valor por defecto
![Page 60: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/60.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE–– MODIFICARMODIFICAR:: MODIFYMODIFY– Verificar que los valores estén en determinadodominio.
– Por ejemplo, asegurarse que los valores posiblesdel atributo TIPO de la tabla PRODUCTO sean:• Alimentos, Carnes, Quesos y Fiambres, Lacteos, Limpieza, Kiosco, Bebidas, Bebidas Alcoholicas
D.D.L. Restricción de Dominio
![Page 61: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/61.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE–– MODIFICARMODIFICAR:: MODIFYMODIFY
ALTER TABLE PRODUCTOS MODIFYMODIFY TIPO CHAR(17) CHECKCHECK (TIPO ININ (‘Alimentos’, ‘Carnes’, ‘Quesos y Fiambres’, ‘Lacteos’, ‘Limpieza’, ‘Kiosco’, ‘Bebidas’, ‘BebidasAlcoholicas’ ));
D.D.L. Restricción de Dominio
![Page 62: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/62.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE
– También se pueden agregar a la hora de crearla tabla:
CREATE TABLE CAJERAS (
CI_CAJ INTEGER NOT NULL,
QUEBRANTO INTEGER CHECKCHECK
(QUEBRANTO BETWEENBETWEEN 100 ANDAND 9000 ),
PRIMARY KEY (CI_CAJ));
D.D.L. Restricción de Dominio
![Page 63: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/63.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
CONSTRAINTSCONSTRAINTS
![Page 64: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/64.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
D. D. L.Claves
• ALTER TABLE–Para que el SGBD controle:
• las claves primarias (PRIMARYPRIMARY KEYKEY)• las claves foráneas (FOREIGNFOREIGN KEYKEY)• las claves candidatas (UNIQUEUNIQUE KEYKEY)
–hay que indicar a través de CONSTRAINTSCONSTRAINTS que atributo(s) pertenecen a cada uno.
![Page 65: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/65.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE–– PRIMARYPRIMARY KEYKEY
• Controla que el valor de un atributo (o la combinación de atributos) sea único para todas las filas de una tabla.
ALTER TABLE PRODUCTOS ADDADD
CONSTRAINTCONSTRAINT PRIMARYPRIMARY KEYKEY (ID_PROD)
CONSTRAINTCONSTRAINT PK_PROD;
D. D. L.Clave Primaria
![Page 66: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/66.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE–– PRIMARYPRIMARY KEYKEY
• Controla que el valor de un atributo (o la combinación de atributos) sea único para todas las filas de una tabla.
ALTER TABLE PRODUCTOS ADDADD
CONSTRAINTCONSTRAINT PRIMARYPRIMARY KEYKEY (ID_PROD)
CONSTRAINTCONSTRAINT PK_PROD;
D. D. L.Clave Primaria
Indicar un nombre paraeste CONSTRAINT.Opcional.
![Page 67: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/67.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE–– FOREIGNFOREIGN KEYKEY
• Controla que el valor de un atributo (o la combinación de atributos) exista en otra tabla (el valor).
• Este atributo (o la combinación de atributos) debe ser clave primaria en la otra tabla (CLAVECLAVE EXTERNAEXTERNA).
D. D. L.Clave For ánea
![Page 68: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/68.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE– En la tabla PRODUCTOS se hace referencia a ID_IVA que debe existir (el valor) en la tabla IVAs.
ALTER TABLE PRODUCTOS ADDADD
CONSTRAINTCONSTRAINT FFOOREIGREIGNN KEYKEY (ID_IVA)
REFERENCESREFERENCES IVAS (ID_IVA)CONSTRAINTCONSTRAINT FK_PROD;
D. D. L.Clave For ánea
![Page 69: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/69.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE– En la tabla PRODUCTOS se hace referencia a ID_IVA que debe existir (el valor) en la tabla IVAs.
ALTER TABLE PRODUCTOS ADDADDCONSTRAINTCONSTRAINT FFOOREIGREIGNN KEYKEY (ID_IVA)
REFERENCESREFERENCES IVAS (ID_IVA)
CONSTRAINTCONSTRAINT FK_PROD;
Atributo (listade atributos) de latabla que es claveen otra tabla.
D. D. L.Clave For ánea
![Page 70: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/70.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE– En la tabla PRODUCTOS se hace referencia a ID_IVA que debe existir (el valor) en la tabla IVAs.
ALTER TABLE PRODUCTOS ADDADDCONSTRAINTCONSTRAINT FFOOREIGREIGNN KEYKEY (ID_IVA)
REFERENCESREFERENCES IVAS (ID_IVA)
CONSTRAINTCONSTRAINT FK_PROD;
Indicar en que tablay el nombre del o losatributos en esa tabla.
D. D. L.Clave For ánea
![Page 71: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/71.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE– En la tabla PRODUCTOS se hace referencia a ID_IVA que debe existir (el valor) en la tabla IVAs.
ALTER TABLE PRODUCTOS ADDADDCONSTRAINTCONSTRAINT FFOOREIGREIGNN KEYKEY (ID_IVA)
REFERENCESREFERENCES IVAS (ID_IVA)
CONSTRAINTCONSTRAINT FK_PROD;
Indicar un nombre paraeste CONSTRAINT.Opcional.
D. D. L.Clave For ánea
![Page 72: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/72.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE•También en la tablas CAJERAS y CLIENTES se hacen referencia a un mismo atributo (CI) de la tabla PERSONAS como, CI_CAJ y CI_CLI, ambos deben existir (los valores) en la tabla PERSONAS.
D. D. L.Clave For ánea
![Page 73: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/73.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLEALTER TABLE CAJERAS ADDADD CONSTRAINTCONSTRAINTFFOOREIGREIGNN KEYKEY (CI_CAJ)
REFERENCESREFERENCES PERSONAS (CI)CONSTRAINTCONSTRAINT FK_CI_CAJ;
ALTER TABLE CLIENTES ADDADD CONSTRAINTCONSTRAINTFFOOREIGREIGNN KEYKEY (CI_CLI)
REFERENCESREFERENCES PERSONAS (CI)CONSTRAINTCONSTRAINT FK_CI_CLI;
D. D. L.Clave For ánea
![Page 74: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/74.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE•También en la relaciones FACTURAN y COMPRAN se hacen referencia a las claves de las entidades que están vinculadas.
• Se debe agregar una constraint para cada entidad vinculada en la relación.
D. D. L.Clave For ánea
![Page 75: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/75.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLEALTERALTER TABLETABLE FACTURAN ADDADDCONSTRAINTCONSTRAINT FFOOREIGREIGNN KEYKEY (CI_CAJ)
REFERENCESREFERENCES CAJERAS (CI_CAJ)
CONSTRAINTCONSTRAINT FK_CI_CAJ_FACT;
ALTERALTER TABLETABLE FACTURAN ADDADDCONSTRAINTCONSTRAINT FFOOREIGREIGNN KEYKEY (ID_PROD)
REFERENCESREFERENCES PRODUCTOS (ID_PROD)
CONSTRAINTCONSTRAINT FK_ID_PROD_FACT;
D. D. L.Clave For ánea
![Page 76: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/76.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLEALTER TABLE COMPRAN ADDADD
CONSTRAINTCONSTRAINT FFOOREIGREIGNN KEYKEY (CI_CLI)
REFERENCESREFERENCES CLIENTES (CI_CLI)
CONSTRAINTCONSTRAINT FK_CI_CLI_COMP;
D. D. L.Clave For ánea
![Page 77: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/77.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLEALTER TABLE COMPRAN ADDADD
CONSTRAINTCONSTRAINT FFOOREIGREIGNN KEYKEY
(CI_CAJ, ID_PROD, FECHA)REFERENCESREFERENCES FACTURAN(CI_CAJ, ID_PROD, FECHA)CONSTRAINTCONSTRAINT FK_FACT_COMP;
D. D. L.Clave For ánea
![Page 78: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/78.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE– En la tabla CLIENTES el atributo NÚMERO es único.
–– UNIQUEUNIQUE KEYKEY• Controla que un atributo (o la combinación de atributos) tenga un único valor (CLAVECLAVECANDIADATACANDIADATA).
ALTER TABLE CLIENTESADDCONSTRAINTCONSTRAINT UNIQUEUNIQUE (NUMERO)CONSTRAINTCONSTRAINT UK_CLIUK_CLI;
D. D. L.Clave Única
![Page 79: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/79.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• ALTER TABLE–– ELIMINARELIMINAR:: DROPDROP
• Agregamos un nuevo atributo– edad
ALTERALTER TABLETABLE PERSONAS
ADDADD EDAD INTEGER;
• No era necesario...
ALTERALTER TABLETABLE PERSONAS
DROPDROP EDAD;
D. D. L.Eliminar un Atributo
![Page 80: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/80.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
DROP DROP TABLETABLE
![Page 81: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/81.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• DROP TABLE
–Si ya no se necesita una tabla, podemos eliminarla junto con su definición con la orden:
•DROP TABLE
DROPDROP TABLETABLE nombre_tabla
D. D. L.Eliminar Tablas
![Page 82: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/82.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• DROP TABLE
– Si la tabla a eliminar tiene la clave primaria o alguna clave secundaria referenciada poralguna clave externa de otra tabla, se deberáneliminar también estos Constraints
DROPDROP TABLETABLE PRODUCTOS CASCADE CONSTRAINTS;
D. D. L.Eliminar Tablas
![Page 83: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/83.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• Para habilitar Constraints:SETSET CONSTRAINTS FK_PROD ENABLEDENABLED;
• Para deshabilitar Constraints:SETSET CONSTRAINTS FK_PROD DISABLEDDISABLED;
D. D. L.Activar – Desactivar Constraints
![Page 84: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/84.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
• Renombrar: RENAMERENAME
• Para cambiar el nombre de un atributo:RENAMERENAME COLUMNCOLUMN
TABLA ATRIB TOTO NOM_NUEVO• Para cambiar el nombre de una tabla:
RENAMERENAME TABLETABLE nombre_tabla_vieja TOTOnombre_tabla_nueva;
D. D. L.Renombrar
![Page 85: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/85.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
CASO DE CASO DE ESTUDIOESTUDIO
CREATE TABLECREATE TABLE
![Page 86: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/86.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
CREATE TABLE PERSONAS (CI INTEGER NOT NULL,NOMBRE VARCHAR(20,10) NOT NULL,APELLIDO VARCHAR(15,10) NOT NULL,CALLE VARCHAR(20,10),NUMERO INTEGER,ESQUINA VARCHAR(20,10),EMAIL VARCHAR(30,20),FECHA_NAC DATE NOT NULL,PRIMARY KEY(CI) CONSTRAINT PK_PERSONAS);
CREATE PERSONAS
![Page 87: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/87.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
CREATE TABLE PER_TEL(CI INTEGER NOT NULL,TELEFONO CHAR(9) NOT NULL,FOREIGN KEY (CI) REFERENCES PERSONAS (CI)
CONSTRAINT FK_CI,PRIMARY KEY (CI,TELEFONO) CONSTRAINT
PK_PER_TEL);
CREATE PER_TEL
![Page 88: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/88.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
CREATE TABLE CLIENTES(
CI_CLI INTEGER NOT NULL,
NUMERO INTEGER NOT NULL,
UNIQUE (NUMERO) CONSTRAINT UK_CLI,
FOREIGN KEY (CI_CLI) REFERENCES PERSONAS (CI)
CONSTRAINT FK_CI_CLI,
PRIMARY KEY(CI_CLI) CONSTRAINT PK_CLIENTES);
CREATE CLIENTES
![Page 89: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/89.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
CREATE TABLE CAJERAS(
CI_CAJ INTEGER NOT NULL,
QUEBRANTO INTEGER CHECK (QUEBRANTO
BETWEEN 100 AND 9000 ),
FOREIGN KEY (CI_CAJ) REFERENCES PERSONAS (CI)
CONSTRAINT FK_CI_CAJ,
PRIMARY KEY (CI_CAJ) CONSTRAINT PK_CAJERAS);
CREATE CAJERAS
![Page 90: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/90.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
CREATE TABLE IVAS(ID_IVA INTEGER NOT NULL,PORCENTAJE DECIMAL(4,4) NOT NULL,PRIMARY KEY (ID_IVA) CONSTRAINT PK_IVAS);
CREATE IVAS
![Page 91: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/91.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
CREATE TABLE PRODUCTOS(ID_PROD INTEGER NOT NULL,DESCRIPCION VARCHAR(20) NOT NULL,PRECIO DECIMAL(7,2) NOT NULL,ID_IVA INTEGER DEFAULT 3,TIPO VARCHAR(17) CHECK (TIPO IN
(‘Alimentos’, ‘Carnes’, ‘Quesos y Fiambres’, ‘Lacteos’, ‘Limpieza’, ‘Kiosco’, ‘Bebidas’, ‘Bebidas Alcoholicas’)),
FOREIGN KEY (ID_IVA) REFERENCES IVAS (ID_IVA) CONSTRAINT FK_PROD,
PRIMARY KEY (ID_PROD) CONSTRAINT PK_PRODUCTOS);
CREATE PRODUCTOS
![Page 92: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/92.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
CREATE TABLE FACTURAN(CI_CAJ INTEGER NOT NULL,ID_PROD INTEGER NOT NULL,FECHA DATETIME YEAR TO MINUTE NOT NULL,CANTIDAD DECIMAL (6,3) NOT NULL,FOREIGN KEY (CI_CAJ) REFERENCES CAJERAS (CI_CAJ)
CONSTRAINT FK_CI_CAJ_FACT,FOREIGN KEY (ID_PROD) REFERENCES PRODUCTOS (ID_PROD)
CONSTRAINT FK_ID_PROD,PRIMARY KEY (CI_CAJ, ID_PROD, FECHA) CONSTRAINT
PK_FACTURAN);
CREATE FACTURAN
![Page 93: DDL-Lenguaje-de-Definición-de-Datos](https://reader037.vdocumento.com/reader037/viewer/2022100220/544b886eaf7959a8438b5496/html5/thumbnails/93.jpg)
Prof. L. CarámbulaSistemas de Bases de Datos II – ITS / ITSB – EMT – CETP – 2010
CREATE TABLE COMPRAN(CI_CAJ INTEGER NOT NULL,ID_PROD INTEGER NOT NULL,FECHA DATETIME YEAR TO MINUTE NOT NULL,CI_CLI INTEGER NOT NULL,FOREIGN KEY (CI_CAJ, ID_PROD, FECHA) REFERENCES FACTURAN
(CI_CAJ, ID_PROD, FECHA) CONSTRAINT FK_FACT_COMP,FOREIGN KEY (CI_CLI) REFERENCES CLIENTES (CI_CLI)
CONSTRAINT FK_CI_CLI_COMP,PRIMARY KEY (CI_CAJ, ID_PROD, FECHA) CONSTRAINT
PK_COMPRAN);
CREATE COMPRAN