MODELO ENTIDAD-RELACIÓN - · PDF filerige la unión de las entidades está...

16
UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH. MODELO ENTIDAD-RELACIÓN Denominado por sus siglas como: E-R; Este modelo representa a la realidad a través de un esquema gráfico empleando los terminología de entidades, que son objetos que existen y son los elementos principales que se identifican en el problema a resolver con el diagramado y se distinguen de otros por sus características particulares denominadas atributos, el enlace que rige la unión de las entidades está representada por la relación del modelo. El modelado entidad-relación es una técnica para el modelado de datos utilizando diagramas entidad relación. Consiste en los siguientes pasos: 1. Se parte de una descripción textual del problema o sistema de información a automatizar (los requisitos). 2. Se hace una lista de los sustantivos y verbos que aparecen. 3. Los sustantivos son posibles entidades o atributos. 4. Los verbos son posibles relaciones. 5. Analizando las frases se determina la cardinalidad de las relaciones y otros detalles. 6. Se elabora el diagrama (o diagramas) entidad-relación. 7. Se completa el modelo con listas de atributos y una descripción de otras restricciones que no se pueden reflejar en el diagrama. Entidad Representa una “cosa” u "objeto" del mundo real con existencia independiente, es decir, se diferencia unívocamente de cualquier otro objeto o cosa, incluso siendo del mismo tipo. Ejemplos: Una persona. (Se diferencia de cualquier otra persona, incluso siendo gemelos). Un automóvil. (Aunque sean de la misma marca, el mismo modelo,..., tendrán atributos diferentes, por ejemplo el número de motor). Una casa (Aunque sea exactamente igual a otra, aun se diferenciara en su dirección). Empleados, clientes, empresas, oficios, diseños de productos, conciertos, excursiones, etc. Las entidades se representan gráficamente mediante rectángulos y su nombre aparece en el interior. Un nombre de entidad sólo puede aparecer una vez en el esquema conceptual.

Transcript of MODELO ENTIDAD-RELACIÓN - · PDF filerige la unión de las entidades está...

Page 1: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

MODELO ENTIDAD-RELACIÓN

Denominado por sus siglas como: E-R; Este modelo representa a la realidad a través de

un esquema gráfico empleando los terminología de entidades, que son objetos que existen

y son los elementos principales que se identifican en el problema a resolver con el

diagramado y se distinguen de otros por sus características particulares denominadas

atributos, el enlace que rige la unión de las entidades está representada por la relación del

modelo.

El modelado entidad-relación es una técnica para el modelado de datos utilizando

diagramas entidad relación.

Consiste en los siguientes pasos:

1. Se parte de una descripción textual del problema o sistema de información a

automatizar (los requisitos).

2. Se hace una lista de los sustantivos y verbos que aparecen.

3. Los sustantivos son posibles entidades o atributos.

4. Los verbos son posibles relaciones.

5. Analizando las frases se determina la cardinalidad de las relaciones y otros detalles.

6. Se elabora el diagrama (o diagramas) entidad-relación.

7. Se completa el modelo con listas de atributos y una descripción de otras

restricciones que no se pueden reflejar en el diagrama.

Entidad

Representa una “cosa” u "objeto" del mundo real con existencia independiente, es decir, se

diferencia unívocamente de cualquier otro objeto o cosa, incluso siendo del mismo tipo.

Ejemplos:

Una persona. (Se diferencia de cualquier otra persona, incluso siendo gemelos).

Un automóvil. (Aunque sean de la misma marca, el mismo modelo,..., tendrán

atributos diferentes, por ejemplo el número de motor).

Una casa (Aunque sea exactamente igual a otra, aun se diferenciara en su

dirección).

Empleados, clientes, empresas, oficios, diseños de productos, conciertos, excursiones, etc.

Las entidades se representan gráficamente mediante rectángulos y su nombre aparece en el

interior. Un nombre de entidad sólo puede aparecer una vez en el esquema conceptual.

Page 2: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

Atributos

Es una característica de interés o un hecho sobre una entidad o sobre una relación. Los

atributos representan las propiedades básicas de las entidades y de las relaciones. Toda la

información extensiva es portada por los atributos. Gráficamente, se representan mediante

bolitas que cuelgan de las entidades o relaciones a las que pertenecen.

Los atributos son las propiedades que describen a cada entidad en un conjunto de entidades.

Un conjunto de entidades dentro de una entidad, tiene valores específicos asignados para

cada uno de sus atributos, de esta forma, es posible su identificación univoca.

Ejemplos: A la colección de entidades Alumnos, con el siguiente conjunto de atributos

en común, (id, nombre, edad, semestre), pertenecen las entidades:

(1, María, 16 años, 2)

(2, Sara, 18 años, 5)

(3, María, 17 años, 2)

...

Cada una de las entidades pertenecientes a este conjunto se diferencia de las demás por el

valor de sus atributos. Nótese que dos o más entidades diferentes pueden tener los mismos

valores para algunos de sus atributos, pero nunca para todos.

Dominio

Un dominio describe un conjunto de posibles valores para cierto atributo. Como un

dominio restringe los valores del atributo, puede ser considerado como una restricción.

Matemáticamente, atribuir un dominio a un atributo significa "todos los valores de este

atributo deben de ser elementos del conjunto especificado".

Para cada atributo, existe un dominio del mismo, este hace referencia al tipo de datos que

será almacenado o a restricciones en los valores que el atributo puede tomar (Cadenas de

caracteres, números, solo dos letras, solo números mayores que cero, solo números enteros,

enteros, cadenas de texto, fecha, etc...).

Cuando una entidad no tiene un valor para un atributo dado, este toma el valor nulo, bien

sea que no se conoce, que no existe o que no se sabe nada al respecto del mismo.

Relación

Es una correspondencia o asociación entre dos o más entidades. Cada relación tiene un

nombre que describe su función. Las relaciones se representan gráficamente mediante

rombos y su nombre aparece en el interior.

Page 3: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

Las entidades que están involucradas en una determinada relación se denominan entidades

participantes. El número de participantes en una relación es lo que se denomina grado de la

relación. Por lo tanto, una relación en la que participan dos entidades es una relación

binaria; si son tres las entidades participantes, la relación es ternaria; etc.

Correspondencia de cardinalidades

Dado un conjunto de relaciones, en el que participan dos o más conjuntos de entidades, la

correspondencia de cardinalidad indica, el número de entidades con las que puede estar

relacionada una entidad dada.

Dado un conjunto de relaciones binarias y los conjuntos de entidades A y B, la

correspondencia de cardinalidades puede ser:

Uno a uno: Una entidad de A se relaciona únicamente con una entidad en B

y viceversa. Por ejemplo: El noviazgo, el RFC de cada persona, El CURP

personal, El acta de nacimiento, ya que solo existe un solo documento de

este tipo para cada una de las diferentes personas.

Uno a varios: Una entidad en A se relaciona con cero o muchas entidades

en B. Pero una entidad en B se relaciona con una única entidad en A. Por

ejemplo:

Cliente – Cuenta en un banco, Padre-Hijos, Camión-Pasajeros, zoológico-

animales, árbol – hojas.

Varios a varios: Una entidad en A se puede relacionar con 0 o muchas

entidades en B y viceversa. Ejemplo: Arquitecto – proyectos, fiesta –

personas, estudiante – materias.

NOTA:

Cabe mencionar que la cardinalidad para cada conjunto de entidades depende del punto

de vista que se le dé al modelo en estudio, claro está, sujetándose a la realidad.

Llaves primarias.

La distinción de una entidad entre otra se debe a sus atributos, lo cual lo hacen único. Una

llave primaria es aquel atributo el cual consideramos clave para la identificación de los

demás atributos que describen a la entidad. Por ejemplo, si consideramos la entidad

ALUMNO del CBTis123, podríamos tener los siguientes atributos: Nombre Apellido,

Semestre, Especialidad, Dirección, Teléfono, Número de control, de todos estos atributos el

que podremos designar como llave primaria es el número de control, ya que es diferente

para cada alumno y este nos identifica en la institución.

Page 4: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

Claro que puede haber más de un atributo que pueda identificarse como llave primaria en

este caso se selecciona la que consideremos más importante, los demás atributos son

denominados llaves secundarias.

Una clave o llave primaria es indicada gráficamente en el modelo E-R con una línea debajo

del nombre del atributo.

Diagrama Entidad-Relación

Denominado por sus siglas como: E-R; Este modelo representa a la realidad a través de

un esquema gráfico empleando los terminología de entidades, atributos y el enlace que

rige la unión de las entidades está representada por la relación del modelo.

Ejemplos de diagramas Entidad – Relación

Relación UNO a UNO

Indicamos con este ejemplo que existe una relación de pertenencia de uno a uno, ya que

existe una tarjeta de circulación registrada por cada automóvil.

Relación UNO a MUCHOS

El siguiente ejemplo indica que un cliente puede tener muchas cuentas, pero que una

cuenta puede llegar a pertenecer a un solo cliente (Decimos puede, ya que existen cuentas

registradas a favor de más de una persona).

Page 5: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

Paso del modelo E-R al modelo relacional

Una base de datos relacional es un conjunto de relaciones normalizadas. Para representar el

esquema de una base de datos relacional se debe dar el nombre de sus relaciones, los

atributos de éstas, los dominios sobre los que se definen estos atributos, las claves primarias

y las claves ajenas.

Ejemplo de una relación Muchos a Muchos y su transformación.

Partiendo de nuestro diagrama E - R

Esquema relacional

Una base de datos relacional es un conjunto de relaciones normalizadas. Para representar el

esquema de una base de datos relacional se debe dar el nombre de sus relaciones, los

atributos de éstas, los dominios sobre los que se definen estos atributos, las claves primarias

y las claves ajenas.

ESTUDIANTE (CONTROL, APELLIDO, PROMEDIO)

CURSO (NUMERO_CURSO, NOMBRE_CURSO)

INSCRITO_EN (CONTROL, NUMERO_CURSO, SEMESTRE, CALIF)

En el esquema, los nombres de las relaciones aparecen seguidos de los nombres de los

atributos encerrados entre paréntesis. Las claves primarias son los atributos subrayados.

Page 6: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

El siguiente paso será transformar el esquema relacional en Tablas. A continuación se

muestra un estado (instancia) de la base de datos cuyo esquema se acaba de definir.

ESTUDIANTE

Control Apellido Promedio

12345 López 8

9876 Martínez 9

5678 Soriano 9

CURSO

Numero_curso Nombre_curso

012 Diseño

025 Programación

034 Estructuras

INSCRITO

Control Numero_curso Semestre Calif

12345 012 3 9

9876 025 5 8

9876 034 5 10

Cada tabla contiene una Instancia de nuestra base de datos.

Bases de datos relacionales

Las bases de datos que pertenecen a esta categoría se basan en el modelo relaciones, cuya

estructura principal es la relación, es decir una tabla bidimensional compuesta por líneas y

columnas. Cada línea, que en terminología relacional se llama tupla, representa una entidad

que nosotros queremos memorizar en la base de datos. Las características de cada entidad

están definidas por las columnas de las relaciones, que se llaman atributos. Entidades con

características comunes, es decir descritas por el mismo conjunto de atributos, formarán

parte de la misma relación.

Page 7: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

Diferencia entre un DBMS y una base de datos.

La base de datos es una colección de archivos interrelacionados almacenados en conjunto

sin redundancia y la dbms es un conjunto de númerosas rutinas de software

interrelacionadas cada una de ellas es responsable de una determinada tarea.

Elección apropiada de un DBMS

Se tiene que elegir el que tenga la mejor interfaz a las necesidades de la empresa y sobre

todo que este apto para la base de datos que vayamos a utilizar.

Componentes de un sistema de base de datos.

Personas

Máquinas

Programas

Datos

Los datos.

Es lo que se conoce como base de datos propiamente dicha. Para manejar estos datos

utilizamos una serie de programas.

Los Programas.

Son los encargados de manejar los datos, son conocidos como DBMS (Data Base

Management System) o también SGBD (Sistema Gestor de Base de Datos). Los DBMS

tienen dos funciones principales que son:

- La definición de las estructuras para almacenar los datos.

- La manipulación de los datos.

El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL,

Structured Query Language o Lenguaje Estructurado de Consultas, un estándar

implementado por los principales motores o sistemas de gestión de bases de datos

relacionales.

Durante su diseño, una base de datos relacional pasa por un proceso al que se le conoce

como normalización de una base de datos.

Formas normales

Las relaciones que describe Codd al definir su modelo relacional, son transformadas en

tablas al momento de trabajar con una base de datos. Las Formas Normales buscan

optimizar estas estructuras eliminando básicamente la redundancia utilizando como medio

principal las dependencias funcionales. Las Formas Normales son un pequeño número de

Page 8: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

reglas que de cumplirse hacen que las estructuras posean la menor cantidad de redundancia

posible.

Primera Forma Normal (1NF): No hay campos múltiples (todo los campos son

atómicos). Todas las filas deben tener el mismo número de columnas.

Segunda Forma Normal (2NF): Todo campo que no sea clave debe depender por

completo de toda la clave.

Tercera Forma Normal (3NF): No hay dependencias transitivas. Un campo debe

depender de la clave y no de otro campo.

Forma Normal de Boyce-Codd (BCNF): Todos los determinantes de la tabla son

clave candidata.

Cuarta Forma Normal (4NF): Una fila no debe contener dos o más campos multi-

valorados (aquellos que pueden contener más de un valor simultáneamente) sobre

una entidad.

Quinta Forma Normal (5NF): Una tabla puede almacenar atributos dependientes a

la clave sólo por unión.

Clave única

Cada tabla puede tener uno o más campos cuyos valores identifican de forma única cada

registro de dicha tabla, es decir, no pueden existir dos o más registros diferentes cuyos

valores en dichos campos sean idénticos. Este conjunto de campos se llama clave única.

Pueden existir varias claves únicas en una determinada tabla, y a cada una de éstas suele

llamársele candidata a clave primaria.

Clave primaria

Una clave primaria es una clave única elegida entre todas las candidatas, para especificar

los datos que serán relacionados con las demás tablas. La forma de hacer esto es por medio

de claves foráneas.

Sólo puede existir una clave primaria por tabla y ningún campo de dicha clave puede

contener valores NULL.

Clave foránea

Una clave foránea es una referencia a una clave en otra tabla. Las claves foráneas no

necesitan ser claves únicas.

Por ejemplo, el código de departamento puede ser una clave foránea en la tabla de

empleados, pero obviamente se permite que haya varios empleados en un mismo

departamento.

Clave índice

Page 9: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

Las claves índice surgen con la necesidad de tener un acceso más rápido a los datos. Los

índices pueden ser creados con cualquier combinación de campos de una tabla. Las

consultas que filtran registros por medio de estos campos, pueden encontrar los registros de

forma no secuencial usando la clave índice.

Integridad referencial.

La integridad referencial es un sistema de reglas que utilizan la mayoría de las bases de

datos relacionales para asegurarse que los registros de tablas relacionadas son válidos y

que no se borren o cambien datos relacionados de forma accidental produciendo errores de

integridad.

Recordemos el tipo de relaciones que se pueden tener en una base de datos relacional.

Entre dos tablas de cualquier base de datos relacional pueden haber dos tipos de relaciones,

relaciones uno a uno y relaciones uno a muchos:

Relación Uno a Uno

Cuando un registro de una tabla sólo puede estar relacionado con un único registro de

la otra tabla y viceversa.

Por ejemplo: tenemos dos tablas una de empleados y otra de departamentos y queremos

saber qué empleado es jefe de qué departamento, tenemos una relación uno a uno entre las

dos tablas ya que un departamento tiene un solo jefe y un empleado puede ser jefe de un

solo departamento.

Relación Uno a Varios:

Cuando un registro de una tabla (tabla secundaria) sólo puede estar relacionado con un

único registro de la otra tabla (tabla principal) y un registro de la tabla principal puede

tener más de un registro relacionado en la tabla secundaria, en este caso se suele hacer

referencia a la tabla principal como tabla 'padre' y a la tabla secundaria como tabla 'hijo',

entonces la regla se convierte en 'un padre puede tener varios hijos pero un hijo solo tiene

un padre.

Por ejemplo: tenemos dos tablas una con los datos de diferentes poblaciones y otra con los

habitantes, una población puede tener más de un habitante, pero un habitante pertenecerá

(estará empadronado) en una única población. En este caso la tabla principal será la de

poblaciones y la tabla secundaria será la de habitantes. Una población puede tener varios

habitantes pero un habitante pertenece a una sola población. Esta relación se representa

incluyendo en la tabla 'hijo' una columna que se corresponde con la clave principal de la

tabla 'padre', esta columna es lo denominamos clave foránea (o clave ajena o clave externa).

Page 10: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

Una clave foránea es pues un campo de una tabla que contiene una referencia a un registro

de otra tabla. Siguiendo nuestro ejemplo en la tabla habitantes tenemos una columna

población que contiene el código de la población en la que está empadronado el habitante,

esta columna es clave ajena de la tabla habitantes, y en la tabla poblaciones tenemos una

columna código de población clave principal de la tabla.

Relación Varios a Varios:

Cuando un registro de una tabla puede estar relacionado con más de un registro de la

otra tabla y viceversa. En este caso las dos tablas no pueden estar relacionadas

directamente, se tiene que añadir una tabla entre las dos que incluya los pares de valores

relacionados entre sí.

Por ejemplo: tenemos dos tablas una con los datos de clientes y otra con los artículos que

se venden en la empresa, un cliente podrá realizar un pedido con varios artículos, y un

artículo podrá ser vendido a más de un cliente.

No se puede definir entre clientes y artículos, hace falta otra tabla (por ejemplo una tabla de

pedidos) relacionada con clientes y con artículos. La tabla pedidos estará relacionada con

cliente por una relación uno a muchos y también estará relacionada con artículos por un

relación uno a muchos.

Page 11: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

Integridad referencial

Cuando se define una columna como clave foránea, las filas de la tabla pueden contener en

esa columna o bien el valor nulo (valor desconocido), o bien un valor que existe en la otra

tabla, un error sería asignar a un habitante una población que no está en la tabla de

poblaciones.

NOTA: En SQL, NULL no es un valor. Es una condición, o estado, de un dato, en el cual

su valor es desconocido. Debido a que es desconocido, NULL no puede comportarse como

un valor. Cuando Ud. intenta realizar operaciones aritméticas con NULL, o lo mezcla con

valores en otras expresiones, el resultado de la operación será siempre NULL. No es cero o

blanco o una “cadena vacía” y no se comporta como ninguno de estos valores. Piense en

NULL como DESCONOCIDO para que podamos entender algunos resultados. Si el valor

de Número es desconocido:

1 + 2 + 3 + Numero = NULL (desconocido). Fin NOTA

Eso es lo que se denomina integridad referencial y consiste en que los datos que

referencian otros (claves foráneas) deben ser correctos. La integridad referencial hace

que el sistema gestor de la base de datos se asegure de que no hayan en las claves foráneas

valores que no estén en la tabla principal.

La integridad referencial se activa en cuanto creamos una clave foránea y a partir de

ese momento se comprueba cada vez que se modifiquen datos que puedan alterarla.

Actualización y borrado en cascada

El actualizar y/o eliminar registros en cascada, son opciones que se definen cuando

definimos la clave foránea y que le indican al sistema gestor qué hacer.

Actualizar registros en cascada:

Esta opción le indica al sistema gestor de la base de datos que cuando se cambie un valor

del campo clave de la tabla principal, automáticamente cambiará el valor de la clave

foránea de los registros relacionados en la tabla secundaria.

Eliminar registros en cascada:

Esta opción le indica al sistema gestor de la base de datos que cuando se elimina un

registro de la tabla principal automáticamente se borran también los registros

relacionados en la tabla secundaria.

Page 12: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

Definición

FOREIGN KEY (llave_foranea)

REFERENCES tabla_relacionada (llave_primaria)

Recuerda en la modelación de bases de datos que una llave foránea indica que entidad es la

débil y que entidad es la fuerte, definiendo así una relación.

Supongamos que tenemos una relación uno a muchos (1,*) entre las tablas cliente y factura.

Cliente se conforma de los campos: Id, nombre, teléfono y dirección. La tabla factura posee

los siguientes atributos: numero de factura y fecha de la factura.

Un cliente puede ser generador de muchas facturas en un negocio de comercio, pero cada

factura generada solo corresponde a un único cliente una única vez. Esta relación de

acuerdo al modelado de bases de datos nos indica que la llave foránea se vincula a la

entidad débil, es decir, la tabla factura.

Llave foránea en la relación entre las tablas cliente y factura

CLIENTE

ID_CLIENTE NOMBRE TELEFONO DIRECCION

001 JUAN ALIMAÑA 123456 AV 0 -45E

002 ARMANDO CASAS 3128934568 CALLE 1ª 3-45

005 PEDRO CALDERON 3119806594 AV 4- 3-45

FACTURA

NUM_FACTURA FECHA ID_CLIENTE

1003 01-03-2016 005

1010 10-03-2016 002

1014 15-03-2016 005

1022 28-03-2016 001

1024 28-03-2016 001

Page 13: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

En el anterior diagrama de entidad-relación vemos que idCliente se ha incluido como

atributo en la tabla factura. De modo que al crear la tabla factura debemos agregar la

restricción FOREIGN KEY a idCliente.

1. La relación es un vínculo lógico entre dos entidades. una relación representa las

reglas del negocio que pueden ser expresadas de manera verbal. Muchas de las

relaciones entre entidades son de una a muchas, en donde una instancia de la

entidad padre puede estar relacionada con muchas instancias de la entidad hija. Por

ejemplo la relación entre EMPLEADO y TIENDA deberá ser representada como:

una TIENDA (Entidad padre) tiene asignados muchos EMPLEADOs (Entidad

Hija).

2. El Segundo tipo de relación es "muchos a muchos". En este tipo de relación muchas

instancias de una entidad pueden estar relacionadas a muchas instancias de otra

entidad. Relaciones de "muchos a muchos" deben ser resueltas creando una entidad

intermediaria conocida como entidad de "referencia-cruzada' (o XREF). La entidad

XREF es creada con las llaves primarias de ambas entidades originales. Ambas

entidades originales se convierte en Padres de la entidad XREF. Sin embargo la

relación "muchos a muchos" se convierte en dos "una a muchas" relaciones.

Una Llave foránea existe cuando la llave primaria de la entidad padre existe en la entidad

hija. Una llave foránea requiere que estos valores deben estar presentes en la entidad padre

antes que los valores sean insertados en la entidad hija. El concepto de mantenimiento de

llaves foráneas es conocido como "Integridad Referencial".

Relaciones entre dos entidades deben ser clasificadas como identificadas y no identificadas.

Relaciones identificadas existen cuando la llave primera de la entidad padre está incluida en

la llave primaria de la entidad hija. Por otro lado, la relación no identificada existe cuando

la llave primaria de la entidad padre está incluida en la entidad hija pero no como parte de

la llave primaria de la entidad hija. En adición, relaciones no identificadas podrían ser

clasificadas como "mandatorias" o no "mandatorias". Una relación mandatoria no

identificada existe cuando el valor en la tabla hija no puede ser nulo. Por otro lado la

relación no mandatoria no identificada existe cuando el valor en la tabla hija puede ser

nulo.

Cardinalidad nos ayuda a entender la naturaleza de las relaciones entre la entidad hija y la

entidad padre. La carnalidad de una relación puede ser determinada haciendo la siguiente

pregunta: "Cuantas instancias de la entidad hija están relacionadas con cada instancia de la

entidad padre?". Existen 4 tipos de cardinalidad: (1). uno a cero o mas (Cardinalidad

común), (2). uno a uno o más (P Cardinalidad), (3). uno a cero o uno (Z Cardinalidad), y

(4). uno to exactamente N (N Cardinalidad).

Page 14: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

En conclusión, el diseño efectivo de base de datos ayudara el equipo de desarrollo a reducir

sobre todo tiempo y costos. Internarse en el proceso de diseño de base de datos y la

creación del modelo de datos ayuda al equipo de desarrollo a entender a fondo los

requerimientos de los usuarios y genera el desarrollo de un sistema más reflexivo de los

requerimientos de usuario y las reglas del negocio.

Reducción de diagramas E-R a tablas

Un diagrama E-R, puede ser representado también a través de una colección de tablas.

Para cada una de las entidades y relaciones existe una tabla única a la que se le asigna

como nombre el del conjunto de entidades y de las relaciones respectivamente, cada tabla

tiene un número de columnas que son definidas por la cantidad de atributos y las cuales

tienen el nombre del atributo.

La transformación de nuestro ejemplo Venta en la que intervienen las entidades de

Vendedor con los atributos RFC, nombre, puesto, salario y Artículo con los atributos Clave,

descripción, costo.

Cuyo diagrama E-R es el siguiente:

Entonces las tablas resultantes siguiendo la descripción anterior son:

Tabla Empleado

Nombre Puesto Salario RFC

Sofia Vendedor 2000 TEAT701210XYZ

Cesar Auxiliar ventas 1200 COV741120ABC

Tabla artículo

Clave Descripción Costo

A100 Abanico 460

C260 Colcha matrimonial 1200

Page 15: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

Tabla Venta

RFC Clave

TEAT701210XYZ C260

COV741120ABC A100

Nótese que en la tabla de relación - Venta -, contiene como atributos a las llaves

primarias de las entidades que intervienen en dicha relación, en caso de que exista un

atributo en las relaciones, este atributo es anexado como una fila más de la tabla;

Por ejemplo si anexamos el atributo fecha a la relación venta, la tabla que se originaría

sería la siguiente:

RFC Clave Fiche

TEAT701210XYZ C260 10/02/2017

COV741120ABC A100 11/02/2017

EJERCICIOS A REALIZAR

EJERCICIO NUMERO 1: Los profesores de la asignatura Administración de

Bases de Datos de la Universidad de Pamplona deciden crear una base de datos que

contenga la información de los resultados de las pruebas realizadas a los alumnos.

Para realizar el diseño se sabe que:

Los alumnos están definidos por su n° de matrícula, nombre y el grupo al que asisten a

clase.

Dichos alumnos realizan dos tipos de pruebas a lo largo del curso académico:

1. Exámenes escritos: cada alumno realiza varios a lo largo del curso, y se definen por el n°

de examen, el n° de preguntas de que consta y la fecha de realización (la misma para todos

los alumnos que realizan el mismo examen). Evidentemente, es importante almacenar la

nota de cada alumno por examen.

2. Prácticas: se realiza un n° indeterminado de ellas durante el curso académico, algunas

serán en grupo y otras individuales. Se definen por un código de práctica, título y el grado

de dificultad. En este caso los alumnos pueden examinarse de cualquier práctica cuando lo

deseen, debiéndose almacenar la fecha y nota obtenida.

En cuanto a los profesores, únicamente interesa conocer (además de sus datos personales:

Código y nombre), quien es el qué ha diseñado cada práctica, sabiendo que en el diseño de

Page 16: MODELO ENTIDAD-RELACIÓN -  · PDF filerige la unión de las entidades está representada por la relación del modelo. Ejemplos de diagramas Entidad

UNIVERSIDAD DE PAMPLONA ADMINISTRACION DE BASE DE DATOS

DOCENTE: MsC (c) Esp. ALEXIS OLVANY TORRES CH.

una práctica puede colaborar más de uno, y que un profesor puede diseñar más de una

práctica. Interesa, además, la fecha en que ha sido diseñada cada práctica por el profesor

correspondiente.

EJERCICIO NÚMERO 2: “PISCILAGOS” es un club náutico y desea tener

informatizados los datos correspondientes a sus instalaciones, empleados, socios y

embarcaciones que se encuentran en dicho club. El club está organizado de la

siguiente forma:

Los socios pertenecientes al club vienen definidos por su nombre, dirección, Código,

teléfono y fecha de ingreso en el club.

Las embarcaciones vienen definidas por: matricula, nombre, tipo y dimensiones.

Los amarres tienen como datos de interés el número de amarre, la lectura del contador de

agua y luz, y si tienen o no servicios de mantenimiento contratados.

Por otro lado, hay que tener en cuenta que una embarcación pertenece a un socio aunque un

socio puede tener varias embarcaciones. Una embarcación ocupará un amarre y un amarre

está ocupado por una sola embarcación. Es importante la fecha en la que una embarcación

en asignada a un amarre.

Los socios pueden ser propietarios de amarres, siendo importante la fecha de compra del

amarre. Hay que tener en cuenta que un amarre pertenece a un solo socio y que NO HAY

ninguna relación directa entre la fecha en la que se compra un amarre y en la que una

embarcación se asigna a un amarre.

El club náutico está dividido en varias zonas definidas por una letra, el tipo de barcos que

tiene, el número de barcos que contiene, la profundidad y el ancho de los amarres. Una

zona tendrá varios amarres y un amarre pertenece a una sola zona.

En cuanto a los empleados, estos vienen definidos por su código, nombre, dirección,

teléfono y especialidad. Un empleado está asignado a varias zonas y en una zona puede

haber más de un empleado, siendo de interés el número de barcos de los que se encarga en

cada zona. Hay que tener en cuenta que un empleado puede no encargarse de todos los

barcos de una zona.