Download - Semana 5 Base de Datos Relacionales
-
7/26/2019 Semana 5 Base de Datos Relacionales
1/40
1
2. Modelo relacional de datos
Objetivos Comprender los principios estructuralesdel modelo de
datos relacional formal
Entender los conceptos integridad de entidadeintegridad referencial, y apreciar su importancia Entender los significados e implicaciones del concepto
nuloen el modelo relacional Comprender el concepto vista relacional, y la
problemtica asociada a la modificacin de datos atravs de vistas
-
7/26/2019 Semana 5 Base de Datos Relacionales
2/40
2
2. Modelo relacional de datos
Contenidos2.1 Presentacin y orgenes del modelo relacional
2.2 Estructura de datos relacional2.3 Caractersticas generales de integridad de datos
-
7/26/2019 Semana 5 Base de Datos Relacionales
3/40
3
2. Modelo relacional de datos
Bibliografa
[EN 2002] Elmasri, R.; Navathe, S.B.: Fundamentos de Sistemas deBases de Datos. 3 Edicin. Addison-Wesley. (Cap. 7, 8 y 9)
[EN 1997] Elmasri, R.; Navathe, S.B.: Sistemas de bases de datos.Conceptos fundamentales. 2 Edicin. Addison-WesleyIberoamericana. (Cap. 6 y 7)
[D 2001] Date, C.J.: Introduccin a los sistemas de bases de datos. 7 Edicin.Prentice-Hall. (Cap. 3 al 9)
[SKS 1998] Korth, H; Silberschatz, A., Sudarshan, S.: Fundamentos de bases dedatos. 3 Edicin. McGraw-Hill. (Cap. 3 y 4)
...
-
7/26/2019 Semana 5 Base de Datos Relacionales
4/40
4
Introducido por Codd, 1970
Es un Modelo de Datos Lgico - de Representacin -(basado en registros)
El modelo ms usado en las aplicaciones comerciales deprocesamiento de datos convencional
Dividido en 3 partes:
1. Estructura de Datos2. Integridad de Datos (caractersticas generales)
3. Manipulacin de Datos
2.1 Presentacin y orgenes del MR
-
7/26/2019 Semana 5 Base de Datos Relacionales
5/40
5
Base de Datos = Conjunto de Relaciones
Relacin Estructura de datosfundamental del modelo Tiene un nombrey representa una entidad genrica Conjunto de tuplas
Cada tupla representa una entidad
concreta Compuesta de atributoscon nombre (y dominio)
Cada atributo representa un atributode la entidad
Representada mediante una tabla con filas y columnas
Modelo basado en Teora matemtica Analoga entre Relacin (concepto matemtico) y Tabla Teora de Conjuntos y Lgica de Predicados de 1erorden Slida Base Formal
2.2 Estructura de datos relacional
-
7/26/2019 Semana 5 Base de Datos Relacionales
6/40
6
2.2 Estructura de datos relacional
ttulo director gnero rodaje nacionalidad duracin
Amores Perros A. Gonzlez Drama 2000 Mxico 145
The Matrix A. Wachowsky Ciencia-ficcin 1999 EEUU 138
Torrente S. Segura Comedia 1997 Espaa 110
Nos miran N. Lpez Policiaco 2001 Espaa 118
Amelie J. P. Jeunet Comedia 2001 Francia 122
Los lunes al sol F. Len Drama 2002 Espaa 117
tuplas
car
dinalidad
gradoatributos
La relacin PELICULA
--- ---
--- ---
Ciencia-ficcin,Drama,Thriller,
Comedia...--- ---
--- ---
2002, 1997,1999, 2001,1994, 1972...
Italia,Argentina,Espaa, EEUU,Francia,Japn..
--- ---
--- ---
dominios Ttulos Nombres
Gneros Aos Pases
Tiempo
-
7/26/2019 Semana 5 Base de Datos Relacionales
7/407
Trminos bsicos
2.2 Estructura de datos relacional
Modelo Relacional Procesamientode FicherosFormal SQL-92
Relacin Tabla Fichero
Tupla Si la tupla t est en la relacinR, entonces tR Fila Registroconcreto
Atributo Debe tener un nombre nicodentro de cada relacincabecera deColumna
Nombre deCampode registro
Cardinalidad n de tuplas en una relacin =
Grado n atributos en una relacin =
Dominio coleccin de valores permitidospara ciertos atributos =
-
7/26/2019 Semana 5 Base de Datos Relacionales
8/408
Conjunto de valores atmicosdel mismo tipo, dondetoman su valor los atributos
La definicin de dominios forma parte de la definicin de la BD
Cada atributo definido sobre un NICO dominioOBLIGATORIO Si A, B representan un mismo concepto, A y B con mismo dominio Dominio D puede contener valores no tomados por ningn atributo
{valores de A} Dominio(A)
Comparaciones Restringidas a Dominio La comparacin de dos atributos slo tiene sentido si ambos toman
valores del mismo dominio Si el SGBD soporta dominios, podr detectar este tipo de errores
Definiciones formales: DOMINIO
2.2 Estructura de datos relacional
-
7/26/2019 Semana 5 Base de Datos Relacionales
9/409
Una relacin R, sobre conjunto de dominios D1, D2 ...Dnse compone de dos partes:
EsquemaoCabecera
Conjunto de pares Atributo:Dominio{ (A1:D1), (A2:D2) ... (An:Dn) }
Cada Ajtiene asociado slo un Dj LosDino tienen por qu ser distintos entre s
Estado,Cuerpo oInstancia Conjunto de tuplasque contiene en un instante concreto tupla = conjunto de pares Atributo:Valor
{ { (A1:vi1), (A2:vi2) ... (An:vin) } }, donde i=1..m
Definiciones formales: RELACIN(1)
2.2 Estructura de datos relacional
-
7/26/2019 Semana 5 Base de Datos Relacionales
10/4010
Un esquema de relacin:PELICULA (titulo:Titulos, duracion:Tiempo, director:Nombres, estreno:Fechas)
Un estado de la relacin:{ { (titulo:Torrente), (duracion:110), (director:S.Segura), (estreno:1997) }
{ (titulo:The Matrix), (duracion:138), (director:A.Wachowski), (estreno:1999) }... }
El estadode una relacin es variable en el tiempo nuevastuplas, modificacino borradode existentes
El esquemanosuelevariarcostoso:
reescritura de miles de tuplas valores de nuevos atributos para tuplas ya existentes?
Suele incluir un conjunto de Reglas de Integridad(se ver)
Definiciones formales: RELACIN(2)
2.2 Estructura de datos relacional
-
7/26/2019 Semana 5 Base de Datos Relacionales
11/4011
Propiedadesde una Relacin
1. Noexisten tuplasrepetidas
2. Las tuplas no estn ordenadas
3. Los atributosnoestn ordenadosesquema = conjunto de pares Atributo:Dominio
4. Los valoresde atributos sonAtmicos
dominio = conjunto de valores atmicos Interseccin fila/columna = un solo valor (no lista de valores)
Si Rcumple esta propiedad, R est en1FN
estado = conjuntomatemtico de tuplas
Definiciones formales: RELACIN(3)
2.2 Estructura de datos relacional
-
7/26/2019 Semana 5 Base de Datos Relacionales
12/4012
FORMAS NORMALESR est en FNsi
cumple conjunto de condiciones o restricciones
necesarias para estar bien diseada
de acuerdo con el modelo relacional de datos.
Toda relacin ha de estar en 1FN (estructura de datos simple)
Definiciones formales: RELACIN(4)
2.2 Estructura de datos relacional
-
7/26/2019 Semana 5 Base de Datos Relacionales
13/4013
Relacin vs. Tabla Relacin: Representacin abstracta de un elemento de datos
Tabla: Representacin concretade tal elemento abstracto
Ventajas
Representacin muy sencilla(tabla) del elemento abstractobsico (relacin) del Modelo Relacional
Fcil de utilizar, entender, razonar...
Inconveniente
Aparente ordenentre filas y entre columnas de la tabla
Definiciones formales: RELACIN(5)
2.2 Estructura de datos relacional
-
7/26/2019 Semana 5 Base de Datos Relacionales
14/4014
Percibida por usuarioscomo unacoleccin de relaciones de diversos grados (n de atributos) que varan con el tiempo (n de tuplas, estado)
Las relaciones (tablas) son la estructura lgica de la BD Niveles externo y conceptual ANSI/X3/SPARC
Toda BDR cumple el Principio de Informacin:Todo contenido de informacin de la BD est representado
de una y slo una forma: como valoresexplcitosdentro de posiciones de columnas dentro de filas dentro de tablas
Conexin lgica entre Relaciones(vnculoo interrelacin) Representadamediantevalores Noexistenpunteros(visibles al usuario)
Definiciones formales: BD RELACIONAL (1)
2.2 Estructura de datos relacional
-
7/26/2019 Semana 5 Base de Datos Relacionales
15/40
15
En una BDR distinguimos... Esquemade base de datos
Descripcin de la base de datos Conjunto de esquemas de relacin
PELICULA ( titulo:Ttulos, director:Nombres, gnero:Gneros,rodaje:Aos, nacionalidad:Pases,duracin:Tiempo )
ACTOR ( nombre:Nombres, nombreArtistico: Nombres,agente:Nombres, cache:Dinero )
DIRECTOR ( nombre:Nombres, nacionalidad:Pases, operaPrima:Ttulos )
...
Estadoo instancia de base de datos Visin del contenido de la base de datos en cierto instante Conjunto de estados de relacin
Definiciones formales: BD RELACIONAL (2)
2.2 Estructura de datos relacional
-
7/26/2019 Semana 5 Base de Datos Relacionales
16/40
16
Todo estadode BD refleja la realidad es un modelode una porcindel mundo real (minimundo)
Algunas configuraciones de valores NO tienen SENTIDO pues no representanningn estado posibledel minimundo
2 personas distintas con el mismo DNIUn empleado sin NSSUn alumno con -29 aosUna pelcula sin director
Definicin de la BD (esquema) necesita incluirREGLAS DE INTEGRIDAD
2.3 Caractersticas generales deintegridad de datos
-
7/26/2019 Semana 5 Base de Datos Relacionales
17/40
17Claves Candidatas y PrimariasClaves Ajenas(o forneas o externas)
Informan al SGBD de restricciones del mundo real As, el SGBD evita configuraciones de datos imposibles Aumentan la capacidad expresiva del modelo relacional
Cumplen que: Forman parte de la base de datos Se cumplen para cualquier estado de la BD No varan con el tiempo
Son especficas de cada BD particular, pero el
Modelo Relacional incluye...caractersticas generales de integridad
importantes y necesarias en todaBD
2.3 Caractersticas generales deintegridad de datos
Reglas de integridad
-
7/26/2019 Semana 5 Base de Datos Relacionales
18/40
18
Sea R una relacin R(A1:D1, A2:D2,... An:Dn)
Una superclavede R es un subconjunto SKde atributostal que cumple la restriccin de Unicidad:
No existen dos tuplas distintas con la mismacombinacin de valores para SK
Una clave de R es una superclave tal que cumple larestriccin de Irreductibilidad:
Ningn subconjunto de CK cumple la r. Unicidad
Clave Simple (1 atributo)o Compuesta (varios atributos) Cada clave es una restriccin de integridad
2.3 Caractersticas generales deintegridad de datos
Superclave y Clave de una relacin
-
7/26/2019 Semana 5 Base de Datos Relacionales
19/40
19
Claves como restriccin de integridadCLIENTE (codCliente, nombre, ciudad, telefono,...)
Qu implicaciones tiene establecer como clave...a) CK = {codCliente, ciudad}b) CK = {codCliente} ?
Varias claves en una relacinRelacin para registrar las visitas de pacientes a sus mdicos de familia. Un mismopaciente puede visitar a su mdico varias veces en un mismo da
VISITAMEDICA (nssPaciente, historial, fecha, hora, numVisita, medico, observ)Claves (VISITAMEDICA)={ {nssPaciente, numVisita}, {nssPaciente, fecha, hora},
{historial, numVisita}, {historial, fecha, hora}}
2.3 Caractersticas generales deintegridad de datos
Superclave y Clave: Ejemplos
-
7/26/2019 Semana 5 Base de Datos Relacionales
20/40
20
Si R tiene varias claves Claves CandidatasClaves (ACTOR) = { {nombre}, {nombreArtistico} }Claves (EMPLEADO) = { {dni}, {nombre, fechaNac}, {nss} }
La Clave Primaria(Primary Key, PK) es la clave candidataelegida para identificar las tuplas de RClave Primaria (ACTOR) = {nombreArtistico}Clave Primaria (EMPLEADO) = {nss}
Las Claves Alternativas(Alternative Keys, AK) son el restode claves candidatasClaves Alternativas (ACTOR) = {nombre}Claves Alternativas (EMPLEADO) = { {dni}, {nombre, fechaNac} }
2.3 Caractersticas generales deintegridad de datos
Clave Candidata, Primaria y Alternativa
-
7/26/2019 Semana 5 Base de Datos Relacionales
21/40
21
Conjunto de atributos FKde una relacin R2, tal que:1. Existe otra relacin R1 con clave primaria PK , y2. Cada valor de FK en R2 es idntico al de PK en alguna tupla de R1
Conjunto de atributos de una relacin que hace referencia ala clave primaria de otra relacin (o la misma)
PELICULA (ttulo, gnero, duracin, director, ...)DIRECTOR (nombre, nacionalidad, ...)
EMPLEADO (codEmp, nombre,jefe, nss, ...)
LIBRO (ttulo, isbn, autor, editorial, edicin, ao, ...)ESCRITOR (dni, nombre, ...)ARTICULO (ttulo, tema, autor, revista, pgina, ...)
2.3 Caractersticas generales deintegridad de datos
Clave Ajena (Externa o Fornea)
-
7/26/2019 Semana 5 Base de Datos Relacionales
22/40
22
Cada componente de una FK debe estardefinidosobre el mismo dominioque el correspondienteatributode la PK a la que referencia
PACIENTE (nss, nombre, direccin, ...)HISTORIAL (nss, especialidad, fechaApert, ...)VISITA (nss, especialidad, numVisita, fecha, ...)
Clave Ajena Simple o Compuesta El uso de Claves Ajenas facilita...
Eliminacin de la Redundancia: Integridad entre ficheros Mecanismo del Modelo Relacional de datos para establecer
VNCULOS ENTRE RELACIONES
2.3 Caractersticas generales deintegridad de datos
Clave Ajena (Externa o Fornea)(2)
-
7/26/2019 Semana 5 Base de Datos Relacionales
23/40
23
CLIENTE
CUENTA
2.3 Caractersticas generales deintegridad de datos
Clave Ajena (Externa o Fornea)(3)
nombre direccin ciudad cuenta
Garca, A Gran Va, 6 Murcia 200
Lpez, B Ronda Norte, 3 Murcia 821
Azorn, C Paseo Nuevo, 9 Valencia 505
Prez, C Plaza Mayor, 2 Valencia 505
...
nmero saldo ...
200 35000
505 40000
821 50000...
Cada cliente slo puede teneruna cuenta a su nombre.Una cuenta puede tener ms de
un cliente como titular.
Vnculo Cliente-Cuenta
-
7/26/2019 Semana 5 Base de Datos Relacionales
24/40
24
Restriccin de Integridad ReferencialTodo valor de una FK debe coincidir
con un valor en la correspondiente PK
La BD nodebe contener claves ajenas sin correspondencia:Si una tupla en una relacin hace referencia a otra relacin, debe
referirse a una tupla existente en esa relacin
Puede existir algn valor de PK al que NO haga referencianingn valor de la FK
ESCRITORque no haya escrito artculos: ninguna tupla de ARTICULOhar referencia a la tupla correspondiente a dicho escritor
2.3 Caractersticas generales deintegridad de datos
Clave Ajena (Externa o Fornea)(4)
ESCRITORARTICULOFK
-
7/26/2019 Semana 5 Base de Datos Relacionales
25/40
25
Diagrama Referencial Expresin de la existencia de Claves Ajenas
Camino Referencial
2.3 Caractersticas generales deintegridad de datos
Clave Ajena (Externa o Fornea) (y 5)
ESCRITOR dni nombre ... editorial
LIBRO ttulo isbn autor editorial ...
ARTICULO ttulo tema autor revista pg ...
EDITORIAL nombre direccin ...
Ciclo Referencial Camino que empieza y acaba en la misma relacin Caso especial: Autorreferencia EMPLEADO codEmp ... jefe
EMPL codEmp ... dep DEPTO codDep ... dire
-
7/26/2019 Semana 5 Base de Datos Relacionales
26/40
26
Las operaciones que no satisfacenviolanla IntegridadReferencial, dejan la BD en un estado incorrectoEjemplo de un Hotel:
Qu pasara si se eliminara la tupla (501, D, ...)en HABITACIN? Y si se eliminara la tupla (100, D, ...)? Y si se anotara la ocupacin de la habitacin 900?
2.3 Caractersticas generales deintegridad de datos
Mantenimiento de la Integridad Referencial
OCUPACIN codClie habit ...
CLI04 100
CLI02 420
CLI05 115
CLI10 100
HABITACIN numHabit tipo ...
115 I
420 I
100 D
304 D
405 I
501 D
-
7/26/2019 Semana 5 Base de Datos Relacionales
27/40
27
Cmo evita el SGBD esos estados incorrectos?El SGBD puede...
Rechazartoda operacin que pueda provocar un estado ilegal,
oAceptar(y ejecutar) tales operaciones, pero
realizar accionesque restauren la integridad de los datos
Diseador de la BD puede especificar al SGBDAcciones de Mantenimientode la Integridad Referencial
para que la BD SIEMPRE alcance un estado final legal
2.3 Caractersticas generales deintegridad de datos
Mantenimiento de la Integridad Referencial (2)
i l d
-
7/26/2019 Semana 5 Base de Datos Relacionales
28/40
28
R2 R1Operacin: Eliminaruna tupla tde R1que es referenciada
por otras de R2
Ejemplo: Eliminar la tupla (100, D, ...) de HABITACINAcciones posibles:
1. Rechazarla operacin (accin por defecto)Slo permite borrar tsi ninguna otra tupla hace referencia a t
2. Cascada. Propagar la eliminacin1 Borrar todas las tuplas de R2que referencian a t2 Eliminar t
3.Establecer nulos(* se ver despus *)
2.3 Caractersticas generales deintegridad de datos
Mantenimiento de la Integridad Referencial (3)
2 3 C i l d
-
7/26/2019 Semana 5 Base de Datos Relacionales
29/40
29
R2 R1Operacin: Modificarel valor de una FK a un valor no
existente en la PK de R1
Ejemplo: Modificar (CLI02, 420,...) a (CLI02, 900,...) en OCUPACINAccin:
1. Rechazarla operacin (SIEMPRE)
Intento de violacin de la restriccin de IntegridadReferencial
2.3 Caractersticas generales deintegridad de datos
Mantenimiento de la Integridad Referencial (4)
2 3 C i l d
-
7/26/2019 Semana 5 Base de Datos Relacionales
30/40
30
Operacin: Modificar el valor de la PK de una tupla tde R1que es referenciada por otras tuplas de R2
Ejemplo: Modificar la tupla (100, D,...) a (130, D,...) en HABITACIN
Acciones posibles:1. Rechazarla operacin (accin por defecto)
Slo permite modificar la PK de t si ninguna tupla referencia a t2. Cascada. Propagar la modificacin
- Toda tupla de R2que referencia a tseguir haciendolo:modificar su valor de FK al nuevo valor de la PK de t
- Modificar el valor de la clave primaria de t
3.Establecer nulos(* se ver despus *)
2.3 Caractersticas generales deintegridad de datos
Mantenimiento de la Integridad Referencial (5)
2 3 C t ti l d
-
7/26/2019 Semana 5 Base de Datos Relacionales
31/40
31
R2 R1Operacin: Insercin de una tupla ten R2cuyo valor de FK
no se corresponde con ningn valor de la PK en
ninguna tupla de R1Ejemplo: Insertar una tupla (CLI03, 555, ...) en OCUPACINAcciones posibles:
- Rechazarla operacin (SIEMPRE)
Intento de violacin de la restriccin de IntegridadReferencial
2.3 Caractersticas generales deintegridad de datos
Mantenimiento de la Integridad Referencial (6)
-
7/26/2019 Semana 5 Base de Datos Relacionales
32/40
32
Encadenamiento de eliminaciones (anlogo para Modificacin)R2 R1, Accin de Eliminacin en CascadaR3 R2, Accin de Eliminacin X- Eliminar una tupla de R1 eliminar tuplas de R2 que la referencian
- Pero existen tuplas en R3 que referencian esas tuplas de R2...cmo afecta la Accin de Eliminacin X en esta operacin? Si X = en CASCADA, no-problemo! eliminar esas tuplas de R3 Si X = RECHAZAR La operacin completafallar
Las operacionesde actualizacin en una BD son siempreatmicas: se realiza TODO o NADAPROFESORREADEPARTAMENTO
ASIGNATURATITULACINUNIVERSIDAD
2.3 Caractersticas generales deintegridad de datos
Mantenimiento de la Integridad Referencial (y 7)
R3 R2 R1
2 3 C t ti l d
-
7/26/2019 Semana 5 Base de Datos Relacionales
33/40
33
En el mundo real existe... informacin perdida fechaNacimientodesconocida ausencia de informacin tiene telfono? valores no aplicables a ciertos atributos fechJubilaca empleado activo
Para representar estas situaciones en los sistemas de BDse utiliza el NULO(null) Si una tupla tiene un atributo que contiene un nulo,
significa que el valor realde tal atributo es desconocido
Es posible especificar si un atributo puede o no contener nulo nulo no es un valor en s mismo,
sino un indicador deausencia de informacinNo hay dos nulos iguales (num_telefono NULL edad NULL)
2.3 Caractersticas generales deintegridad de datos
Nulos
2 3 C t ti l d
-
7/26/2019 Semana 5 Base de Datos Relacionales
34/40
34
Nulo y Claves Primarias
Restriccin de Integridad de Entidad:Ningn atributo componente de una
clave primaria puede contener nuloEMPLEADO (codEmp, nss, nombre, telefono, depto,jefe...)Qu pasara si codEmp pudiera contener NULO?
Nulo y Claves Ajenas
El Modelo Relacional permite nulocomo valor de clave ajena
depto = nullempleados no asignados a ningn departamentojefe = nullempleados sin jefe
2.3 Caractersticas generales deintegridad de datos
Implicaciones de los nulos en la integridad
2 3 C t ti l d
-
7/26/2019 Semana 5 Base de Datos Relacionales
35/40
35
Hemos de extender la definicin de clave ajenaSea R2 una relacin. FK es una clave ajenaen R2 si es un
subconjunto de sus atributos tal que:1. Existe otra relacin R1 con clave primaria PK y2. En todo momento, cada valor de FK en R2
a) es NULO, ob) es idntico a un valor de PK en alguna tupla de R1
Restriccin de Integridad ReferencialLa Base de Datos no debe contener valores no nulosde clave ajena sin correspondencia
2.3 Caractersticas generales deintegridad de datos
Implicaciones de los nulos en la integridad (2)
2 3 C t ti l d
-
7/26/2019 Semana 5 Base de Datos Relacionales
36/40
36
Hay que extender algunas acciones de mantenimiento dela Integridad Referencial: R2 R1
Operacin: Eliminaruna tupla tde R1que es referenciada
por otras de R2Acciones posibles:
1. Rechazarla operacin (accin por defecto)2. Cascada. Propagar la eliminacin
3.Establecer nulosSlo si la FK de R2permite NULO
- Toda tupla de R2 que referencia a t pasa a contener NULL en FK- Eliminar la tupla t
2.3 Caractersticas generales deintegridad de datos
Implicaciones de los nulos en la integridad (3)
2 3 Ca a te ti a e e ale de
-
7/26/2019 Semana 5 Base de Datos Relacionales
37/40
37
R2 R1Operacin: Modificar el valor de la PK de una tupla tde R1
que es referenciada por otras tuplas de R2
Acciones posibles:1. Rechazarla operacin (accin por defecto)2. Cascada. Propagar la modificacin
3.Establecer nulosSlo si la FK de R2permite NULO- Toda tupla de R2 que referencia a t pasa a contener NULL en FK- Modificar el valor de la PK de t
2.3 Caractersticas generales deintegridad de datos
Implicaciones de los nulos en la integridad (y 4)
2 3 Caractersticas generales de
-
7/26/2019 Semana 5 Base de Datos Relacionales
38/40
38
Comprobarlas clavescandidatas(primaria y alternativas):No existen dos tuplas distintas con igual valor para una claveDefinicin de BD : indicar los Atributos Componentes de las Claves Candidatas
Comprobarla restriccin de IntegridaddeentidadNingn atributo componente de una clave primaria contiene nuloDefinicin de BD : indicar los Atributos Componentes de la Clave Primaria
Comprobarla restriccin de IntegridadReferencial...El valor de la clave ajena en cualquier tupla, o es nulo, o coincide con
un valor de clave primaria de alguna tupla en la relacin referenciadaDefinicin de BD : indicar los Atributos Componentes de las Claves Ajenas
... y mantenerlafrente operaciones que puedan violar la integridadDefinicin de BD : indicar Acciones de Mantenimiento de la Integridad Referencial
2.3 Caractersticas generales deintegridad de datos
Resumiendo, el SGBD se encarga de...
Dominio Definicin del Dominio
-
7/26/2019 Semana 5 Base de Datos Relacionales
39/40
39
Dominio Definicin del DominioCODPEL enteros(3)CODGUI enteros(3)CODDIR enteros(3)
CODDIS enteros(2)CODACT enteros(4)CODAGE enteros(2)SEXOS { M, F }TEXTO cadena caracteres variable (500)PORCENT enteros (2)
DINERO enteros(9)NIF cadena caracteres fija (12)TITULOS cadena caracteres variable (120)GENEROS {comedia,drama,terror,suspense,accion,romantica,gore,pulp,roadmovie}PAISES {espaa,francia,gran_bretaa,eeuu,australia,alemania,la_india,argentina}AOS AO
FECHAS FECHANOMBRES cadena caracteres variable (35)APELLIDOS cadena caracteres variable (80)DOMICILIOS cadena caracteres variable (50)TELEFONOS cadena caracteres variable (15)TIPO_PAPEL {protagonista, secundario, reparto, figuracion}
Esquema PRODUCTORA
-
7/26/2019 Semana 5 Base de Datos Relacionales
40/40
Esquema PRODUCTORA
PELICULA (codP:CODPEL, titulo:TITULOS, ao:AO, genero:GENEROS, guion:CODGUI,director:CODDIR, directorFotog:CODDIR, distrib:CODDIS, nacio:PAISES,
estreno:FECHA, numOscar:enteros(2), taquilla:DINERO)DIRECTOR (codDir:CODDIR, nombre:NOMBRES, apellidos:APELLIDOS, nacio:PAISES,
fechaNacim:FECHA, operaPrima:CODPEL)
DIREC_FOTOG (codDF:CODDIR, nombre:NOMBRES, apellidos:APELLIDOS, nacionalidad:PAISES,fechaNacim:FECHA, ultTrabajo:CODPEL)
GUION (codG:CODGUI, titulo: TITULOS, resumen: TEXTO,nomAutorPpal:NOMBRES, fechaFin:FECHA, fechaEntrega:FECHA)
DISTRIBUIDORA(codDis:CODDIS, nombre:NOMBRES, cif:NIF, direccion:DOMICILIO,telefono:TELEFONOS, porcentaje:PORCENT)
ACTOR (codA:CODACT, nombre:NOMBRES, nomReal:NOMBRES, nacionalidad:PAISES,fechaNacim:FECHA, sexo:SEXOS, agencia:CODAGE, cache:DINERO)
AGENCIA (codAg:CODAGE, nombre:NOMBRES, direccion:DOMICILIO, telefono:TELEFONOS)
ACTUA_EN (actor:CODACT, film:CODPEL, papel:TIPO_PAPEL, paga:DINERO)