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.
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.
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.
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).
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.
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.
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
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
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).
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.
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.
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
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).
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
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
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.