Está en la página 1de 15

Formación 2002. Tema 3. Modelo de Datos.

TEMA 3
MODELO DE DATOS

1. Conceptos básicos. Características de una entidad.


2. Modelo de datos.
3. Entidades y conjunto de entidades.
4. Limitaciones del mapeo.
5. Claves.
6. Diagrama Entidad-Relación.
7. Reducción a tabla de los diagramas E-R.
8. Generalización y especificación de relaciones entre entidades.

Teoría de Bases de Datos Page 1 of 15


Formación 2002. Tema 3. Modelo de Datos.

Conceptos básicos. Características de una entidad.

• Entidad : Objeto sobre el que nosotros almacenamos los datos.


• Ejemplo: Persona, libro, coche, cta bancaria.
• Una entidad está representada por un conjunto de atributos.
• Las enidades pueden ser dependientes entre sí.
• Ejemplo: alumno-curso.Un curso existe porque existe alumnos y existe
alumnos porque hay un curso. Existe una dependencia inrtrínseca.
• Dependencia extrínseca: No todo el personal va a un departamento. Un
trabajador puede que no pertenezca a ningún departamento pero es un
empleado.
• Color de ojos:
a) Atributo de la entidad persona.
b) Entidad porque puede poseer diferentes atributos.
• Con esto se quiere decir que puede existir una jerarquía de entidades.
• Conjunto de entidades: Grupo de entidades del mismo tipo.
• Propiedad o Atributo: Son los datos que nosotros recopilamos de una
entidad.
• Ejemplo: Persona à DNI, tfno, edad, sexo.
• Definición formal: Es una función que mapea un conjunto de entidades en
un dominio.
• Lo que almacenamos no es una entidad, sino los atributos de una entidad.
• Un atributo sólo no define a la entidad a veces, y necesita de más
atributos. Otras veces si. Ejemplo:
a) Pérez no define a una sola persona
b) Pérez + DNI si define a una sola persona.
• Identificador de una entidad: Atributo que identifica inequivocamente a
la entidad.
• Asociación o relación : Representa las relaciones entre entidades. Pueden
ser:
a) Uno-Uno.
b) Uno-Varios.
c) Varios-Varios.

• Ejemplo: Dpto-empleados es una relación Uno-Varios.


• Una entidad puede intervenir en varias asociaciones.
• Exiten dos tipos de entidades:
1. Entidades fuertes: Son aquellas que no dependen de otra
entidad para su existencia. Ejemplo: EMPLEADO.

Teoría de Bases de Datos Page 2 of 15


Formación 2002. Tema 3. Modelo de Datos.

2. Entidades débiles: Son aquellas que dependen de otra entidad


para su existencia: Ejemplo: HIJOS_DE_EMPLEADO.
• Cardinalidad: Define el número máximo y el número mínimo de
ocurrencias de cada tipo de entidad que interviene en una relación. Para
representar la cardinalidad se encierran entre paréntesis los valores
máximos y mínimo de la siguiente forma:
(maximo, mínimo)

2. Modelo de datos.

• Para describir la estructura de una base de datos se define el modelo de


datos.
• Son un grupo de herramientas conceptuales para describir los datos, sus
relaciones, su semántica y sus limitaciones.
• Se han propuesto 3 grupos:
a) Modelo de Datos basado en objetos.
b) Modelo de Datos basado en registros.
c) Modelo Físico de Datos.

2.1. Modelo de Datos basado en Objetos.

• El modelo usado es el modelo Entidad-Relación. (ER).


• El modelo ER se basa en que el mundo real se ve como un conjunto de
objetos llamados entidades y las relaciones que existen entre ellas.
• Ejemplo: Banco-Clientes-Cta.
• Tendremos que distinguir entre:
a) Entidades.
b) Atributos.
c) Relaciones.
• Existen unos gráficos representativos de cada uno de ellos.

Entidades Atributos Relaciones

Teoría de Bases de Datos Page 3 of 15


Formación 2002. Tema 3. Modelo de Datos.

2.2. Modelo Lógico basado en Registros.

• Existen 3 modelos:
a) Modelo Relacional.
b) Modelo en Red.
c) Modelo Jerárquico.

2.2.1 Modelo Relacional.

• Los datos y sus relaciones se repesentan por medio de tablas.


• Tabla: Estructura de datos sobre la que se soporta cualquier base de datos
relacional. Puede representar:
a. Un conjunto de entidades.
b. Asociación de un conjunto de entidades.
• Principo Fundamental: Todas las entidades y los distintos enlaces entre las
mismas están representadas por relaciones.
• Las columnas de las tablas son los atributos.
• Cada columna tiene un nombre arriba.

Teoría de Bases de Datos Page 4 of 15


Formación 2002. Tema 3. Modelo de Datos.

Nombre calle ciudad Número


Lowery Maple Queens 900
Shiver North Bronx 556
Shiver North Bronx 647
Hodges Sidehill Brooklyn 801
Hodges Sidehill Brooklyn 647

Número Saldo
900 55
556 100000
647 105366
801 10533

• Relación : Tabla de dos dimesiones.

2.2.2. Modelo de Red.

• La información se representa por un conjunto de registros y las relaciones


entre datos se representan por ligas.
• Los registros tienen una organización arbitraria.

2.2.3. Modelo Jerárquico.

• Es similar al de red sólo que el orden no es abitrario sino en jerarquía.

Teoría de Bases de Datos Page 5 of 15


Formación 2002. Tema 3. Modelo de Datos.

2.3. Modelo Físico de Datos

• Sirve para describir los datos en el nivel más bajo. Este modelo está en
desuso.

3. Entidades y conjuntos de entidades.

• Veamos el siguiente ejemplo:

Banco Cliente Empleado

• Al observar este ejemplo una persona puede ser:

a) Cliente y empleado.
b) Cliente y no empleado.
c) Ni cliente ni empleado.
d) No cliente y empleado.

• Para cada atributo existe un rango de valores permitidos: DOMINO DEL


ATRIBUTO.
Teoría de Bases de Datos Page 6 of 15
Formación 2002. Tema 3. Modelo de Datos.

• Ejemplos:
a) Atributo nombre à Dominio: Conjunto de todos las cadenas de
caracteres de una longitud. Nunca será un número.
b) Atributo cuenta à Dominio: Subconjunto de números enteros.
• Los atributos de una entidad forman parejas: Nombre del atributo, dato del
atributo.
• Usaremos a lo largo del curso 5 entidades que serán las siguientes:
a) Sucursal: Nombre, ciudad, activo.
b) Cliente: Nombre, DNI, calle, ciudad.
c) Empleado: Nombre, teléfono.
d) Cuenta: Número, Saldo.
e) Transacción: Número de transacción, fecha, importe.

En resumen:
• Entidad: Objeto sobre el cual se recoge información de interés para
nuestro sistema de información.
• Atributo: Propiedad y características de las entidades.
• Dominio: Distintos valores que puede tomar un atributo. Cualquier
entidad puede tener un conjunto de atributos y cada atributo un conjunto
de valores. Existen dos tipos de dominios:
a) Dominios generales: Son aquellos cuyos valores están
comprendidos entre un máximo y un mínimo. Ejemplo, salario,
está formado por todos los números enteros positivos de seis
cifras.
b) Dominios restringidos: Son aquellos que pertenecen a un
conjunto de valores específicos. Por ejemplo, sexo, que puede
tomar dos valores H o M.

4. Limitaciones del Mapeo o Grado de Relaciones.

• Cuando hacemos un diagrama ER tenemos ciertas limitaciones:


a) Número de entidades que van a formar parte de la relación.
Normalmente trabajaremos con conjuntos binarios pero pueden formar
parte de una relación de conjuntos n-arios.
Las posibles variaciones de las relaciones entre 2 conjuntos binarios tienen
4 variantes:
a.1) Una a Una: Un elemento de A está relacionado con un elemento de B.

Teoría de Bases de Datos Page 7 of 15


Formación 2002. Tema 3. Modelo de Datos.

a.2) Una a Muchas. Un elemento de A está relacionado con cualquier


elemento de B, pero los elementos de B sólo están relacionados con un
elemento de A.
a.3) Muchas a Una.: Un elemento de A está relacionado con uno de B pero
un elemento de B puede estar relacionado con muchos de A.
a.4) Muchas a Muchas: Muchos de A están relacionados con muchos de B,
y viceversa.

b) Dependencia de exitencia: Una entidad ‘X’ puede depender de la


existencia de otra ‘Y’.
Si ‘X’ depende de ‘Y’, ‘X’ es dependiente por existencia de ‘Y’.

‘Y’: Entidad dominante.


‘X’: Entidad subordinada.

Teoría de Bases de Datos Page 8 of 15


Formación 2002. Tema 3. Modelo de Datos.

Por ejemplo en el caso de las entidades Transacción-Cuenta.

Transacción es subordinada de Cuenta. También se llama entidad débil.


Cuenta es la entidad fuerte.

5. Claves o Llaves.

• Superclave: Conjunto de los posibles atributos del conjunto que nos


permite sacar la información.
• Clave primaria: Dato o conjunto de datos que enlaza con el resto de la
entidad. Es la columna o conjunto de columnas que permiten identificar
una ocurrencia de la tabla.
• Ejemplo: Tabla clientes:
a) DNI.
b) Nombre
c) Domicilio
d) Telefono.
• Se ven todas las posibles combinaciones de atributos que permiten
recuperar toda la información. Todas estas posibles combinaciones serían
claves candidatas. De todas ellas será clave la que sea más pequeña.
• La clave debe cumplir dos requisitos:
a) Identificación unívoca: En cada fila de la tabla el valor de la
clave ha de identificarla de forma unívoca.
b) No redundancia: No se puede descartar ningún atributo de la
clave para identificarla.
• Clave ajena (foreign key): Está formada por una o más columnas de una
tabla cuyos valores corresponden con los de la clave primaria de otra
tabla. Las claves ajenas representan las relaciones entre tablas.
Ejemplo de nuestra base:

#clt_num clt_apell clt_nom clt_pais clt_pob

#vnt_clt vnt_tda vnt_art vnt_cant vnt_precio vnt_fch

Podemos ver que clt_num es clave primaria, y vnt_clt es una clave ajena de
otra tabla.

6. Diagrmas E-R.

• Rectángulo: Representa la entidad.

Teoría de Bases de Datos Page 9 of 15


Formación 2002. Tema 3. Modelo de Datos.

• Círculo: Representa a un atributo de la entidad.


• Rombo: Representa a la relacción.
• Flechas: Conectan las entidades a atributos y relaciones.
Observemos las siguiente figura:

• Tipos de relacciones:
a) 1:m Relación una a muchos. (ß)
b) m:1 Relación muchos a 1. (à)
c) m:m Relación muchos a muchos. (--)
• La relación ‘a uno’ se representa por una punta de flecha (à).
• Por ejemplo la relación anterior nos está diciendo que un cliente tiene
muchas cuentas y que una cuenta puede pertenecer a varios clientes.
• Veamos un ejemplo más complejo:

Teoría de Bases de Datos Page 10 of 15


Formación 2002. Tema 3. Modelo de Datos.

• En este caso no es una relación binaria.


• Un cliente sólo puede abrir una cuenta en una sucursal.
• Se tomaría el par (cliente,cuenta) à sucursal.

7. Reducción a tabla.

• Sobre los diagramas E-R hay que decir que puden originar confusiones.
Para ello los diagramas E-R los pasaremos a tablas.
• Los nombres de las tablas van a ser los mismos que le hemos dado en el E-
R a las entidades, de manera que la entidad cliente será la tabla cliente.
• El identificador único de la entidad se convierte en clave primaria.
• Si tenemos un conjunto de entidades fuertes E de atributos a1, a2, a3...an
se representará en una tabla llamada E de n columnas de nombres
a1,a2...an.
• Ejemplo: Entidad Sucursal con atributos nombre, ciudad. Su tabla
asociada será la tabla Sucursal cuyas columnas serán nombre y ciudad.

Teoría de Bases de Datos Page 11 of 15


Formación 2002. Tema 3. Modelo de Datos.

• Cada uno de los renglones, fias o tuplas contienen los valores


correspondientes de un registro determinado.
• Si tenemos el conjunto D1 = {numero cuenta} y D2 = {saldo}, cada tupla
está formada por valores que pertenecen a D1 y D2.

• Toda relación N:M se transforma en una tabla que tendrá como clave
primaria la concatenación de los atributos claves de las entidades que
asocia.
• En la transformació n de relaciones 1:N existen 2 soluciones:

a) Transformación en una tabla. Se hace como si fuera una relación


N:M. Esta solucións se realiza cuando se prevee que en un futuro
la relación se convertirá en N:M y cuando la relación tiene
atributos propios.

b) Propagar la clave : Se propaga el atributo principal de la entidad


que tiene de cardinalidad máxima 1 a la que tiene cardinalidad
máxima N, desapareciendo el nombre de la relación.

• En la transformación de relaciones 1:1 se tienen en cuenta las


cardinalidades de las entidades que participan. Existen 2 soluciones:

a) Transformarlo en una tabla. Si las entidades poseen


cardinalidades (0,1), la relación se convierte en una tabla.

b) Propagar la clave. Si una de las entidades posee cardinalidad


(0,1) y la otra (1,1) conviene propagar la clave de la entidad con
cardinalidad (1,1) a la tabla resultante de la entidad de
cardinalidad (0,1). Si ambas poseen cardinalidades (1,1) se puede
propagar la clave de cualquiera de ellas a la tabla resultante de la
otra.
• Lo que tenemos en la tabla cuenta sería un subconjunto del conjunto de
todas las tuplas posibles, osea, el producto cartesiano de D1x D2.

Veamos un ejemplo:

Supongamos el diagrama E-R siguiente:

Teoría de Bases de Datos Page 12 of 15


Formación 2002. Tema 3. Modelo de Datos.

Vamos a explicar un poco qué significa este gráfico.


1. Existen 2 entidades: Departamento y Empleados.
2. Los atributos de departamento son: nombre, ciudad y nº de dept, que es la clave
primaria de la entidad departamento.
3. Los atributos de empleaods son los que observamos, donde nº empleado es la
clave primaria de la entidad emp leados.
4. Existen 2 realciones:
a. Departamento-Empleados. Es una relación 1:N, es decir, 1 departamento
puede tener muchos empleados (0,N) o ninguno, pero cada empleado
pertenece a un solo departamento (1,1).
b. Empleados-Empleados: Relación 1:N donde un empleado tiene un jefe y
solo uno (1,1), y un jefe puede tener muchos empleados (0,N). A su vez, el
jefe es un empleado.

Transformación a tabla:

1. Cada entidad se convierte en una tabla. El nombre que damos a las tablas es el
mismo que el de las entidades. Serán las tablas EMPLEADOS Y
DEPARTAMENTO.

Teoría de Bases de Datos Page 13 of 15


Formación 2002. Tema 3. Modelo de Datos.

2. Los atributos de las entidades se convierten en columnas de las tablas. Los


atributos se colocan a la derecha del nombre de la tabla separadas por comas y
encerrados entre paréntesis:

EMPLEADOS(NºEMPLE, NOMBRE, APELLIDO, SALARIO, COMISION)


DEPARTAMENTO(NºDEPART, NOMBRE, CIUDAD)

3. Las claves primarias son los atributos que identifican cada entidad. Para
representar las claves primarias subrayamos el atributo.
EMPLEADOS(NºEMPLE, NOMBRE, APELLIDO, SALARIO, COMISION)
DEPARTAMENTO(NºDEPART , NOMBRE, CIUDAD)

4. Se transforman las relaciones 1:N mediante propagación de la clave:

a. Para la relación PERTENECE se propaga el atributo de la entidad que


tiene 1 como cardinalidad máxima, DEPARTAMENTO, a la que tiene
de cardinalidad máxima N, que es EMPLEADO. El atributo que se
propaga es Nº DEPART.

EMPLEADOS(NºEMPLE, NOMBRE, APELLIDO, SALARIO, COMISION, Nº DEPART)

b. Para la relación JEFE se hace exactamente igual. La tabla empleados


tendrá entonces que añadir el atriibuto Nº EMPLE, que es el número
del empleado del jefe del empleado.

EMPLEADOS(NºEMPLE, NOMBRE, APELLIDO, SALARIO, COMISION, Nº DEPART, JEFE)

5. El modelo relacional es el siguiente:


EMPLEADOS(NºEMPLE, NOMBRE, APELLIDO, SALARIO, COMISION, Nº DEPART, JEFE)

DEPARTAMENTO(NºDEPART, NOMBRE, CIUDAD)

8. Generalización y especialización.

• Generalización: Resultado de la unión de dos o más conjuntos de


entidades de bajo nivel para producir un conjunto de entidades de más alto
nivel.
• Ejemplo: Supongamos que tenemos dos tipos de cuentas:
a) Cta ahorro.
b) Cta cheques.
En definitiva son cuentas. Hemos generalizado estas dos tipos de cuentas.

Teoría de Bases de Datos Page 14 of 15


Formación 2002. Tema 3. Modelo de Datos.

• Especialización: Resultado de tomar un subconjunto de un conjunto de


entidades de alto nivel para formar un conjunto de entidades de más bajo
nivel.
• En nuestro ejemplo Cta sería la entidad de alto nivel, y cta ahorro y cta
cheque serían de más bajo nivel.
• En la generalización, cada entidad de alto nivel es también una entidad de
bajo nivel. En la especialización no.

Teoría de Bases de Datos Page 15 of 15

También podría gustarte