Modelo relacional de datos. Modelo relacional de datos. Presentación y orígenes del MR. Modelo relacional de datos

Modelo relacional de datos Modelo relacional de datos Objetivos • Comprender los principios estructurales del modelo de datos relacional formal • En

143 downloads 102 Views 126KB Size

Recommend Stories


Bases de datos 1. Teórico: Modelo Relacional
Bases de datos 1 Teórico: Modelo Relacional MODELO de DATOS RELACIONAL Conceptos del modelo relacional  Restricciones del modelo relacional y esqu

Bases de Datos. Modelo relacional de Codd
Departamento de Lenguajes y Sistemas Informáticos Avda Reina Mercedes s/n. 41012 Sevilla Tlf/Fax 954 557 139 E-mail [email protected] www.lsi.us.es E.T.S

Modelo relacional
Estructura. Filas. Columnas. Tablas. Atributos. Dominios. Tuplas. Claves. Consultas. Operaciones. {SQL}. DDL. Bases de Datos relacionales

Story Transcript

Modelo relacional de datos

Modelo relacional de datos

Objetivos • Comprender los principios estructurales del modelo de datos relacional formal • Entender los conceptos integridad de entidad e integridad referencial, y apreciar su importancia • Entender los significados e implicaciones del concepto nulo en el modelo relacional • Comprender el concepto vista relacional, y la problemática asociada a la modificación de datos a través de vistas • Conocer los lenguajes formales álgebra relacional y cálculo relacional de tuplas, así como el lenguaje relacional estándar SQL-92

Contenidos 2.1 Presentación y orígenes del modelo relacional 2.2 Estructura de datos relacional 2.3 Características generales de integridad de datos 2.4 Manipulación de datos: lenguajes relacionales 2.4.1 Álgebra relacional 2.4.2 Cálculo relacional de tuplas 2.4.3 SQL-92

Tema 2. Modelo relacional de datos

1

Tema 2. Modelo relacional de datos

Modelo relacional de datos

Presentación y orígenes del MR

Bibliografía

• Introducido por Codd, 1970

[EN 2002] Elmasri, R.; Navathe, S.B.: Fundamentos de Sistemas de Bases de Datos. 3ª Edición. Addison-Wesley. (Cap. 7, 8 y 9) [EN 1997] Elmasri, R.; Navathe, S.B.: Sistemas de bases de datos. Conceptos fundamentales. 2ª Edición. Addison-Wesley Iberoamericana. (Cap. 6 y 7)

• Es un Modelo de Datos Lógico - de Representación (basado en registros)

[D 2001] [SKS 1998]

2

• El modelo más usado en las aplicaciones comerciales de procesamiento de datos convencional

Date, C.J.: Introducción a los sistemas de bases de datos. 7ª Edición. Prentice-Hall. (Cap. 3 al 9) Korth, H; Silberschatz, A., Sudarshan, S.: Fundamentos de bases de datos. 3ª Edición. McGraw-Hill. (Cap. 3 y 4)

• Dividido en 3 partes: 1. Estructura de Datos

...

2. Integridad de Datos (características generales) 3. Manipulación de Datos

Tema 2. Modelo relacional de datos

3

Tema 2. Modelo relacional de datos

4

Estructura de datos relacional

Estructura de datos relacional

Base de Datos = Conjunto de Relaciones

La relación PELICULA dominios

• Relación – Estructura de datos fundamental del modelo – Tiene un nombre y representa una entidad genérica – Conjunto de tuplas • Cada tupla representa una entidad concreta

cardinalidad

– Compuesta de atributos con nombre (y dominio) • Cada atributo representa un atributo de la entidad

– Representada mediante una tabla con filas y columnas

• Modelo basado en Teoría matemática – Analogía entre “Relación” (concepto matemático) y “Tabla” – Teoría de Conjuntos y Lógica de Predicados de 1er orden » Sólida Base Formal

--- ----- ---

Nombres --- ----- ---

Géneros

Años

Ciencia-ficción, Drama,Thriller, Comedia...

2002, 1997, 1999, 2001, 1994, 1972...

Países Italia,Argentina, España, EEUU, Francia,Japón..

título

director

género

rodaje nacionalidad duración

Amores Perros

A. González

Drama

2000

The Matrix

México

145

A. Wachowsky Ciencia-ficción 1999

EEUU

138

Torrente

S. Segura

Comedia

1997

España

110

Nos miran

N. López

Policiaco

2001

España

118

Amelie

J. P. Jeunet

Comedia

2001

Francia

122

Los lunes al sol

F. León

Drama

2002

España

117

atributos 5

Tema 2. Modelo relacional de datos

Títulos

6

Términos básicos

Definiciones formales: DOMINIO

Relación

Tabla

Archivos

Fila

Registro concreto

cabecera de

Nombre de

Tupla

Si la tupla t está en la relación R, entonces t∈R

Atributo

Debe tener un nombre único dentro de cada relación

Cardinalidad

nº de tuplas en una relación

=

Grado

nº atributos en una relación

=

Dominio

colección de valores permitidos para ciertos atributos

=

Tema 2. Modelo relacional de datos

• Conjunto de valores atómicos del mismo tipo, de donde toman su valor los atributos

Procesamiento de Archivos SQL-92

Columna

tuplas

Tema 2. Modelo relacional de datos

Estructura de datos relacional

Formal

--- ----- ---

grado

Estructura de datos relacional

Modelo Relacional

Tiempo

– – – –

La definición de dominios forma parte de la definición de la BD Cada atributo definido sobre un ÚNICO dominioÕ OBLIGATORIO Si A, B representan un mismo concepto, A y B con mismo dominio Dominio D puede contener valores no tomados por ningún atributo

Campo de registro

{valores de A} ⊆ Dominio(A) • Comparaciones Restringidas a Dominio – La comparación de dos atributos sólo tiene sentido si ambos toman valores del mismo dominio – Si el SGBD soporta dominios, podrá detectar este tipo de errores 7

Tema 2. Modelo relacional de datos

8

Estructura de datos relacional

Estructura de datos relacional

Definiciones formales: RELACIÓN (1)

Definiciones formales: RELACIÓN (2)

Una relación R, sobre conjunto de dominios D1, D2 ... Dn se compone de dos partes:

Un esquema de relación:

• Esquema o Cabecera

Un estado de la relación:

PELICULA (titulo:Titulos, duracion:Tiempo, director:Nombres, estreno:Fechas) { { (titulo:Torrente), (duracion:110), (director:S.Segura), (estreno:1997) } { (titulo:The Matrix), (duracion:138), (director:A.Wachowski), (estreno:1999) } ... }

Conjunto de pares Atributo:Dominio

{ (A1:D1), (A2:D2) ... (An:Dn) } – Cada Aj tiene asociado sólo un Dj – Los Di no tienen por qué ser distintos entre sí

• El estado de una relación es variable en el tiempo – nuevas tuplas, modificación o borrado de existentes • El esquema no suele variar Ö costoso: · reescritura de “miles” de tuplas · ¿valores de nuevos atributos para tuplas ya existentes?

• Estado, Cuerpo o Instancia – Conjunto de tuplas que contiene en un instante concreto – tupla = conjunto de pares Atributo:Valor

{ { (A1:vi1), (A2:vi2) ... (An:vin) } }, donde

– Suele incluir un conjunto de Reglas de Integridad (se verá)

i=1..m

Tema 2. Modelo relacional de datos

9

Tema 2. Modelo relacional de datos

Estructura de datos relacional

Estructura de datos relacional

Definiciones formales: RELACIÓN (3)

Definiciones formales: RELACIÓN (4)

• Propiedades de una Relación

• FORMAS NORMALES

1.

No existen tuplas repetidas

2.

Las tuplas no están ordenadas

3.

Los atributos no están ordenados

R está en FN si cumple conjunto de condiciones o restricciones necesarias para estar bien diseñada de acuerdo con el modelo relacional de datos.

esquema = conjunto de pares Atributo:Dominio 4.

10

• Toda relación ha de estar en 1FN (estructura de datos simple)

Los valores de atributos son Atómicos dominio = conjunto de valores atómicos ƒ Intersección fila/columna = un solo valor (no lista de valores) ƒ Si R cumple esta propiedad, R está en 1FN

Tema 2. Modelo relacional de datos

11

Tema 2. Modelo relacional de datos

12

Estructura de datos relacional

Estructura de datos relacional

Definiciones formales: RELACIÓN (5)

Definiciones formales: BD RELACIONAL (1)

• Relación vs. Tabla

• Percibida por usuarios como una colección de relaciones – de diversos grados (nº de atributos) – que varían con el tiempo (nº de tuplas, estado)

– Relación: Representación abstracta de un elemento de datos – Tabla: Representación concreta de tal elemento abstracto

• Las relaciones (tablas) son la estructura lógica de la BD – Niveles externo y conceptual ANSI/X3/SPARC

– Ventajas

• Toda BDR cumple el Principio de Información: Todo contenido de información de la BD está representado de una y sólo una forma: como valores explícitos dentro de posiciones de columnas dentro de filas dentro de tablas

ƒ Representación muy sencilla (tabla) del elemento abstracto básico (relación) del Modelo Relacional ƒ Fácil de utilizar, entender, razonar... – Inconveniente ƒ Aparente orden entre filas y entre columnas de la tabla

• Conexión lógica entre Relaciones (vínculo o interrelación) – Representada mediante valores – No existen punteros (visibles al usuario)

Tema 2. Modelo relacional de datos

13

14

Características generales de integridad de datos

Estructura de datos relacional Definiciones formales: BD RELACIONAL (2)

• Todo estado de BD refleja la realidad

• En una BDR distinguimos... – Esquema de base de datos

– es un modelo de una porción del mundo real (minimundo)

• Algunas configuraciones de valores NO tienen SENTIDO

ƒ Descripción de la base de datos ƒ Conjunto de esquemas de relación

– pues no representan ningún estado posible del minimundo

2 personas distintas con el mismo DNI Un empleado sin NSS Un alumno con -29 años Una película sin director

PELICULA ( titulo:Títulos, director:Nombres, género:Géneros, rodaje:Años, nacionalidad:Países, duración:Tiempo ) ACTOR ( nombre:Nombres, nombreArtistico: Nombres, agente:Nombres, cache:Dinero ) DIRECTOR ( nombre:Nombres, nacionalidad:Países, operaPrima:Títulos ) ...

Ö Definición de la BD (esquema) necesita incluir

– Estado o instancia de base de datos

REGLAS DE INTEGRIDAD

ƒ Visión del contenido de la base de datos en cierto instante ƒ Conjunto de estados de relación

Tema 2. Modelo relacional de datos

Tema 2. Modelo relacional de datos

15

Tema 2. Modelo relacional de datos

16

Características generales de integridad de datos

Características generales de integridad de datos

Reglas de integridad

Superclave y Clave de una relación

• • • •

Sea R una relación

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 varían con el tiempo • Son específicas de cada BD particular, pero el Modelo Relacional incluye... características generales de integridad importantes y necesarias en toda BD

Tema 2. Modelo relacional de datos

Claves Candidatas y Primarias Claves Ajenas (o foráneas o externas)

R(A1:D1 , A2:D2 ,... An:Dn )

• Una superclave de R es un subconjunto SK de atributos tal que cumple la restricción de Unicidad: No existen dos tuplas distintas con la misma combinación de valores para SK • Una clave de R es una superclave tal que cumple la restricción de Irreductibilidad: Ningún subconjunto de CK cumple la r. Unicidad • Clave Simple (1 atributo) o Compuesta (varios atributos) • Cada clave es una restricción de integridad 17

Tema 2. Modelo relacional de datos

Características generales de integridad de datos

Características generales de integridad de datos

Superclave y Clave: Ejemplos

Clave Candidata, Primaria y Alternativa

• Claves como restricción de integridad

• Si R tiene varias claves Ö Claves Candidatas

CLIENTE (codCliente, nombre, ciudad, telefono,...)

Claves (ACTOR) = { {nombre}, {nombreArtistico} } Claves (EMPLEADO) = { {dni}, {nombre, fechaNac}, {nss} }

¿Qué implicaciones tiene establecer como clave... a) CK = {codCliente, ciudad} b) CK = {codCliente} …?

• La Clave Primaria (Primary Key, PK ) es la clave candidata elegida para identificar las tuplas de R

• Varias claves en una relación

Clave Primaria (ACTOR) = {nombreArtistico} Clave Primaria (EMPLEADO) = {nss}

«Relación para registrar las visitas de pacientes a sus médicos de familia. Un mismo paciente puede visitar a su médico varias veces en un mismo día»

• Las Claves Alternativas (Alternative Keys, AK) son el resto de claves candidatas

VISITAMEDICA (nssPaciente, historial, fecha, hora, numVisita, medico, observ) Claves (VISITAMEDICA)={ {nssPaciente, numVisita}, {nssPaciente, fecha, hora}, {historial, numVisita}, {historial, fecha, hora} }

Tema 2. Modelo relacional de datos

18

Claves Alternativas (ACTOR) = {nombre} Claves Alternativas (EMPLEADO) = { {dni}, {nombre, fechaNac} } 19

Tema 2. Modelo relacional de datos

20

Características generales de integridad de datos

Características generales de integridad de datos

Clave Ajena (Externa o Foránea)

Clave Ajena (Externa o Foránea)

• Conjunto de atributos FK de una relación R2, tal que:

• Cada componente de una FK debe estar definido sobre el mismo dominio que el correspondiente atributo de la PK a la que referencia

1. Existe otra relación R1 con clave primaria PK , y 2. Cada valor de FK en R2 es idéntico al de PK en alguna tupla de R1

Conjunto de atributos de una relación que hace referencia a la clave primaria de otra relación (o la misma)

PACIENTE (nss, nombre, dirección, ...) HISTORIAL (nss, especialidad, fechaApert, ...) VISITA (nss, especialidad, numVisita, fecha, ...)

• PELICULA (título, género, duración, director, ...) DIRECTOR (nombre, nacionalidad, ...)

• Clave Ajena Simple o Compuesta

• EMPLEADO (codEmp, nombre, jefe, nss, ...)

• El uso de Claves Ajenas facilita... – Eliminación de la Redundancia: Integridad entre archivos – Mecanismo del Modelo Relacional de datos para establecer VÍNCULOS ENTRE RELACIONES

• LIBRO (título, isbn, autor, editorial, edición, año, ...) ESCRITOR (dni, nombre, ...) ARTICULO (título, tema, autor, revista, página, ...) 21

Tema 2. Modelo relacional de datos

Características generales de integridad de datos Clave Ajena (Externa o Foránea) Cada cliente sólo puede tener una cuenta a su nombre. Una cuenta puede tener más de un cliente como titular. CLIENTE nombre

Clave Ajena (Externa o Foránea)

(3)

200

35000

505

40000

821

50000

ciudad

cuenta

García, A

Gran Vía, 6

Murcia

200

López, B

Ronda Norte, 3

Murcia

821

Azorín, C

Paseo Nuevo, 9 Valencia

505

Pérez, C

Plaza Mayor, 2

505

(4)

• Restricción de Integridad Referencial Todo valor de una FK debe coincidir con un valor en la correspondiente PK – La BD no debe contener claves ajenas sin correspondencia:

...

dirección

Si una tupla en una relación hace referencia a otra relación, debe referirse a una tupla existente en esa relación Vínculo Cliente-Cuenta

ARTICULO

FK

ESCRITOR

• 1 Puede existir algún valor de PK al que NO haga referencia ningún valor de la FK – ESCRITOR que no haya escrito artículos: ninguna tupla de ARTICULO hará referencia a la tupla correspondiente a dicho escritor

... Tema 2. Modelo relacional de datos

22

Tema 2. Modelo relacional de datos

Características generales de integridad de datos

CUENTA número saldo ...

Valencia

(2)

23

Tema 2. Modelo relacional de datos

24

Características generales de integridad de datos

Características generales de integridad de datos

Clave Ajena (Externa o Foránea) (y 5)

Mantenimiento de la Integridad Referencial

• Diagrama Referencial

• Las operaciones que no satisfacen –violan– la Integridad Referencial, dejan la BD en un estado incorrecto

– Expresión de la existencia de Claves Ajenas

• Camino Referencial LIBRO

título isbn autor editorial ...

ESCRITOR

dni nombre ... editorial

ARTICULO

título tema autor revista pág ...

EDITORIAL nombre dirección ...

Ejemplo de un Hotel: – ¿Qué pasaría si se eliminara la tupla (501, D, ...) en HABITACIÓN? – ¿Y si se eliminara la tupla (100, D, ...)? – ¿Y si se anotara la ocupación de la habitación 900? OCUPACIÓN codClie habit ...

• Ciclo Referencial

EMPL codEmp ... dep

DEPTO codDep ... dire

Tema 2. Modelo relacional de datos

CLI04

100

115

I

CLI02

420

420

I

CLI05

115

100

D

100

304

D

405

I

501

D

CLI10

– Camino que empieza y acaba en la misma relación – Caso especial: Autorreferencia EMPLEADO codEmp ... jefe 25

HABITACIÓN numHabit tipo ...

Tema 2. Modelo relacional de datos

Características generales de integridad de datos

Características generales de integridad de datos

Mantenimiento de la Integridad Referencial (2)

Mantenimiento de la Integridad Referencial (3)

• ¿Cómo evita el SGBD esos estados incorrectos? ‰ Rechazar toda operación que pueda provocar un estado ilegal,

R2 ⎯→ R1 Operación: Eliminar una tupla t de R1 que es referenciada por otras de R2

‰ Aceptar (y ejecutar) tales operaciones, pero

Ejemplo: Eliminar la tupla (100, D, ...) de HABITACIÓN Acciones posibles:

El SGBD puede... o

realizar

acciones que restauren la integridad de los datos

1. Rechazar la operación (acción por defecto) Sólo permite borrar t si ninguna otra tupla hace referencia a t

Ù Diseñador de la BD puede especificar al SGBD

2. Cascada. Propagar la eliminación

Acciones de Mantenimiento de la Integridad Referencial para que la BD SIEMPRE alcance un estado final legal Tema 2. Modelo relacional de datos

26

1º Borrar todas las tuplas de R2 que referencian a t 2º Eliminar t 3. Establecer nulos – (* se verá después *) 27

Tema 2. Modelo relacional de datos

28

Características generales de integridad de datos

Características generales de integridad de datos

Mantenimiento de la Integridad Referencial (4)

Mantenimiento de la Integridad Referencial (5)

R2 ⎯→ R1 Operación: Modificar el valor de una FK a un valor no existente en la PK de R1

Operación: Modificar el valor de la PK de una tupla t de R1 que es referenciada por otras tuplas de R2

Ejemplo: Acción:

Ejemplo: Modificar la tupla (100, D,...) a (130, D,...) en HABITACIÓN Acciones posibles:

Modificar (CLI02, 420,...) a (CLI02, 900,...) en OCUPACIÓN

1. Rechazar la operación (acción por defecto) Sólo permite modificar la PK de t si ninguna tupla referencia a t

1. Rechazar la operación (SIEMPRE)

2. Cascada. Propagar la modificación - Toda tupla de R2 que referencia a t seguirá haciendolo:

Õ Intento de violación de la restricción de Integridad Referencial

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á después *)

Tema 2. Modelo relacional de datos

29

Tema 2. Modelo relacional de datos

30

Características generales de integridad de datos

Características generales de integridad de datos

Mantenimiento de la Integridad Referencial (6)

Mantenimiento de la Integridad Referencial (y 7)

R2 ⎯→ R1 Operación: Inserción de una tupla t en R2 cuyo valor de FK no se corresponde con ningún valor de la PK en ninguna tupla de R1

• Encadenamiento de eliminaciones (análogo para Modificación) R3 → R2 → R1 R2 → R1, Acción de Eliminación en Cascada R3 → R2, Acción de Eliminación X - Eliminar una tupla de R1 Ö eliminar tuplas de R2 que la referencian - Pero existen tuplas en R3 que referencian esas tuplas de R2...

Ejemplo: Insertar una tupla (CLI03, 555, ...) en OCUPACIÓN Acciones posibles:

¿cómo afecta la Acción de Eliminación X en esta operación? ƒ Si X = en CASCADA, no-problem! Ö eliminar esas tuplas de R3 ƒ Si X = RECHAZAR Ö La operación completa fallará

- Rechazar la operación (SIEMPRE)

• Las operaciones de actualización en una BD son siempre atómicas: se realiza “TODO o NADA”

Õ Intento de violación de la restricción de Integridad Referencial Tema 2. Modelo relacional de datos

PROFESOR → ÁREA → DEPARTAMENTO ASIGNATURA → TITULACIÓN → UNIVERSIDAD 31

Tema 2. Modelo relacional de datos

32

Características generales de integridad de datos

Características generales de integridad de datos

Nulos

Implicaciones de los nulos en la integridad

• En el mundo real existe...

• Nulo y Claves Primarias

– información perdida fechaNacimiento desconocida – ausencia de información ¿tiene teléfono? – valores no aplicables a ciertos atributos fechJubilac a empleado activo

Restricción de Integridad de Entidad: Ningún atributo componente de una clave primaria puede contener nulo

• Para representar estas situaciones en los sistemas de BD se utiliza el NULO (null)

EMPLEADO (codEmp, nss, nombre, telefono, depto, jefe...) ¿Qué pasaría si codEmp pudiera contener NULO?

– Si una tupla tiene un atributo que contiene un nulo, significa que el valor real de tal atributo es desconocido

• Nulo y Claves Ajenas El Modelo Relacional permite nulo como valor de clave ajena

– Es posible especificar si un atributo puede o no contener nulo

0

nulo no es un valor en sí mismo, sino un indicador de ausencia de información

depto = null Ö empleados no asignados a ningún departamento jefe = null Ö empleados sin jefe

" No hay dos nulos iguales (num_telefono NULL ≠ edad NULL) Tema 2. Modelo relacional de datos

33

Tema 2. Modelo relacional de datos

Características generales de integridad de datos

Características generales de integridad de datos

Implicaciones de los nulos en la integridad (2)

Implicaciones de los nulos en la integridad (3)

• Hemos de extender la definición de clave ajena

• Hay que extender algunas acciones de mantenimiento de la Integridad Referencial: R2 ⎯→ R1 Operación: Eliminar una tupla t de R1 que es referenciada por otras de R2

Sea R2 una relación. FK es una clave ajena en R2 si es un subconjunto de sus atributos tal que: 1. Existe otra relación R1 con clave primaria PK y 2. En todo momento, cada valor de FK en R2

Acciones posibles:

a) es NULO, o

1. Rechazar la operación (acción por defecto)

b) es idéntico a un valor de PK en alguna tupla de R1

2. Cascada. Propagar la eliminación 3. Establecer nulos

• Restricción de Integridad Referencial

1 Sólo si la FK de R2 permite NULO

La Base de Datos no debe contener valores no nulos de clave ajena sin correspondencia Tema 2. Modelo relacional de datos

34

- Toda tupla de R2 que referencia a t pasa a contener NULL en FK - Eliminar la tupla t 35

Tema 2. Modelo relacional de datos

36

Características generales de integridad de datos

Características generales de integridad de datos

Implicaciones de los nulos en la integridad (y 4)

Resumiendo, el SGBD se encarga de... • Comprobar las claves candidatas (primaria y alternativas): No existen dos tuplas distintas con igual valor para una clave  Definición de BD : indicar los Atributos Componentes de las Claves Candidatas

R2 ⎯→ R1 Operación: Modificar el valor de la PK de una tupla t de R1 que es referenciada por otras tuplas de R2

• Comprobar la restricción de Integridad de entidad Ningún atributo componente de una clave primaria contiene nulo  Definición de BD : indicar los Atributos Componentes de la Clave Primaria

Acciones posibles: 1. Rechazar la operación (acción por defecto) 2. Cascada. Propagar la modificación

• Comprobar la restricción de Integridad Referencial... 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 relación referenciada  Definición de BD : indicar los Atributos Componentes de las Claves Ajenas

3. Establecer nulos 1 Sólo si la FK de R2 permite NULO - Toda tupla de R2 que referencia a t pasa a contener NULL en FK - Modificar el valor de la PK de t

Tema 2. Modelo relacional de datos

• ... y mantenerla frente operaciones que puedan violar la integridad  Definición de BD : indicar Acciones de Mantenimiento de la Integridad Referencial 37

Tema 2. Modelo relacional de datos

38

Esquema “PRODUCTORA”

• Ejemplo de una Base de Datos y Definición de algunos dominios

PELICULA

(codP:CODPEL, titulo:TITULOS, año:AÑO, 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)

Tema 2. Modelo relacional de datos

39

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)

Tema 2. Modelo relacional de datos

40

Dominio

Definición del Dominio

CODPEL CODGUI CODDIR CODDIS CODACT CODAGE SEXOS TEXTO PORCENT DINERO NIF TITULOS GENEROS PAISES AÑOS FECHAS NOMBRES APELLIDOS DOMICILIOS TELEFONOS TIPO_PAPEL

enteros(3) enteros(3) enteros(3) enteros(2) enteros(4) enteros(2) { M, F } cadena caracteres variable (500) enteros (2) enteros(9) cadena caracteres fija (12) cadena caracteres variable (120) {comedia,drama,terror,suspense,accion,romantica,gore,pulp,roadmovie} {españa,francia,gran_bretaña,eeuu,australia,alemania,la_india,argentina} AÑO FECHA cadena caracteres variable (35) cadena caracteres variable (80) cadena caracteres variable (50) cadena caracteres variable (15) {protagonista, secundario, reparto, figuracion}

Tema 2. Modelo relacional de datos

41

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.