Diseño de bases de datos
Oralia Cortés Grajales
Eugenia Mejía de Restrepo





Diseño de bases de datos







Oralia Cortés Grajales
Eugenia Mejía de Restrepo Concepción

Título de la obra:
Diseño de bases de datos


Autoras:
Oralia Cortés Grajales
Eugenia Mejía de Restrepo Concepción



Código JavaScript para el libro: Joel Espinosa Longi, IMATE, UNAM.
Recursos interactivos: DescartesJS
Fuentes: Lato y UbuntuMono
Fórmulas matemáticas: $\KaTeX$
Núcleo del libro interactivo: septiembre 2023


Esta obra está bajo una licencia Creative Commons 4.0 internacional: Reconocimiento-No Comercial-Compartir Igual. Todos los objetos interactivos y los contenidos de esta obra colectiva están protegidos por la Ley de Propiedad Intelectual.

Tabla de contenido

Introducción

Se tiene la necesidad de mantener la información ordenada y accesible en cualquier momento en una organización, es aquí donde se requiere la construcción de una base datos, un paso fundamental es crear un buen sistema de información, este diseño permite la creación de un esquema que representa la estructura global lógica de la base de datos, es así como el modelo entidad relación es el modelo más utilizado para representar los datos dado que es un modelo semántico que representa el significado de los datos, el objetivo fundamental de la fase de requerimientos es crear un modelo de los datos del usuario o del cliente que identifique las cosas que se van a almacenar en la base de datos con su estructuras y las relaciones.

Tipos de modelos de datos

Jerarquía o árbol

Puede representar dos tipos de relaciones entre los datos: relaciones de uno a uno y relaciones de uno a muchos.

Modelo tipo red o grafo

Esta representación de muchos a muchos, de tal forma que cualquier registro dentro de la base de datos puede tener varias ocurrencias superiores a él.

Modelo relacional

Conjunto de tablas con una estructura compuesta por columnas y registros, se está utilizando con más frecuencia en la práctica, debido a las ventajas que ofrece sobre los dos modelos anteriores

Orientada a objetos

Almacena objetos, relaciones y el comportamiento entre los objetos.


Diseño en el Modelo entidad relación

Este modelo se emplea para interpretar, especificar y documentar los requerimientos para un sistema de bases de datos ya que proporciona estructuras que muestran el diseño general de los requerimientos de datos de los usuarios, sus principales ventajas son:

  • Constituye la base del modelo conceptual de datos.
  • Es el modelo semántico más popular encontrado en los libros.
  • Proporciona estructuras que muestran el diseño general de los requerimientos de datos de los usuarios.
  • Va de lo particular a lo general.
  • Está enfocado al diseño de muchas situaciones.

Existen varias representaciones del modelo entidad relación según el libro o la herramienta donde se construye para esto es necesario antes conocer cada elemento y lo que permite representar.

Reconociendo entidades

Es el paso central del proceso de modelo entidad relación.

ENTIDADES

EJEMPLOS

PERSONAS Jurídicas o naturales

Cliente, alumno, vendedor, profesor, empleado, etc.

OBJETOS

Tangibles y no tangibles como: artículo, cuenta etc.

LUGARES

Bodega, ciudad, aula.

TRANSACCIONES

Compra, venta, evaluación.

CONCEPTOS O ABSTRACCIONES

Tipo crédito, Tipo servicio, Tipo cliente etc.

Haz clic para ver ejemplo

Evaluación interactiva - Test de asociación


Reconocer relaciones

Relación: Es una asociación nombrable, significativa y estable entre dos entidades.

¿CÓMO REPRESENTAR UNA RELACION?

Toda relación tiene dos extremos y para cada uno de los cuales existen:

1. Una condición mandatoria u opcional

Mandatoria: se representa con línea continua ____________ y se utiliza la palabra debe, toma valores desde $1, 2, ..., N$.

Opcional: Se representa con línea discontinua - - - - - - - - - y se utiliza la palabra puede, toma valores desde $0, 1, 2, ..., N$.

Ejemplo con dos extremos

2. Una leyenda

Generalmente es un verbo:Inscribir, prestar, matricular, guardar, almacenar, etcétera.

3. Un grado de cardinalidad

uno a uno $1:1$, uno a muchos $1:N$, y muchos a muchos $N:M$.

Grados de cardinalidad

Ejemplos de relaciones

Haz clic en la flechas del siguiente presentador de diapositivas

Evaluación interactiva - Selección múltiple

Crear diagrama de estructura de datos

Se toma todas las relaciones sin repetir entidades

Ejemplo

Una línea compuesta por una o más estaciones y una estación pertenece a una o más líneas.

Una línea debe tener uno o más trenes y un tren debe pertenecer a una línea.

Una estación debe tener uno o más accesos y un acceso debe pertenecer a una estación.

Reconocer atributos

Cualquier detalle que sirve para identificar, describir, cualificar, clasificar o expresar el estado de una entidad: Texto, número, fecha, figuras o sonidos.

Reglas para ubicar la claves foráneas:

  1. Si la relación es de 1 : 1 cualquiera de las dos entidades le pasa la clave primaria a la otra, teniendo en cuenta que si la condición es debe esta es la que recibe la clave externa.
  2. Si la relación es de 1 : N, la entidad lado muchos es la que recibe la clave externa.

Refinar el modelo

Se destruye toda relación Muchos a muchos (N : M) que tenga el modelo para que queden de uno a muchos (1 : N).

¿CÓMO ELIMINAR LAS RELACIONES DE N:M?

Se crea una nueva entidad que intersecta a las entidades participantes y donde el identificador único (clave primaria) se forma mediante la combinación de las claves primarias de dichas entidades (ver imagen en la página siguiente).

Las entidades estudiante y club son las entidades participantes y la entidad est_club es la entidad de intersección o entidad débil y toda la relación se llama relación de dependencia.

La entidad de intersección puede tener únicamente la clave primaria y en caso de colocarle otros atributos hay que tener en cuenta que este dependa de los dos atributos que forman la clave primaria.

cedula y num_club forman la clave principal compuesta y a la vez cada una de ellas es clave externa o foránea

Vídeo interactivo - Modelo entidad relación

Observa el siguiente video con mucha atención:

Actividad interactiva - Sopa de letras

Vídeo interactivo - Resumen

Observa el siguiente video con mucha atención:

Diseño de una situación en modelo entidad relación

Una Escuela de Informática quiere generar un sistema para tener controlado en una base de datos todo lo referente a los Trabajos Fin de Carrera (TFC): alumnos que los realizan, profesores que los dirigen, temas de los que tratan y tribunales que los corrigen. Por tanto, es de interés:

Que los alumnos se definan por su número de matrícula, CI y nombre. Un alumno realiza, evidentemente, sólo un T.F.C. Que los TFC se definen por su tema, por un número de orden y por la fecha de comienzo. Un TFC determinado, no puede ser realizado por varios alumnos.

Que un profesor se define por su CI, nombre y domicilio; y puesto que los TFC son del área en el que trabaja, NO interesa conocer el TFC que dirige sino a qué alumno se lo dirige. Que un Tribunal está formado por varios profesores y los profesores pueden formar parte de varios tribunales. Por otra parte, sí es de interés para el tribunal conocer qué alumno es el que se presenta, con qué TFC y en qué fecha lo ha defendido. El tribunal se define por un número de tribunal, lugar de examen y por el número de componentes. Al margen de esto, un alumno puede haber pertenecido a algún grupo de investigación del que haya surgido la idea del TFC Dichos grupos se identifican por un número de grupo, su nombre y por su número de componentes (continúa en la siguiente página).

Un alumno no puede pertenecer a más de un grupo y no es de interés saber si el grupo tiene algo que ver o no con el TFC del alumno; sí siendo de interés la fecha de incorporación a dicho grupo.

Por otra parte, un profesor, al margen de dirigir el TFC de algunos alumnos, puede haber colaborado con otros en la realización de dicho TFC pero siendo otro profesor el que lo dirige. En este caso, sólo es interesante conocer qué profesor ha ayudado a qué alumno (a un alumno le pueden ayudar varios profesores).