Introducción al modelo de datos ER

 

 

 

Introduccion al modelo de datos er 1

 

Una descripción general simple pero completa del modelo de datos entidad-relación

El modelo de datos entidad-relación , también llamado ER , es uno de los diversos modelos de datos que puede utilizar para razonar sobre sus datos.

En particular, se trata de un modelo de datos conceptual , ya que no está vinculado a ninguna implementación en particular. Esa es una tarea que se deja al modelo de datos lógico.

El modelo de datos ER es tan general, de tan alto nivel, que puede implementarse en una variedad de tipos de bases de datos completamente diferentes.

Es genial porque no piensas en los detalles de implementación, sino que solo piensas en tus datos y en cómo están organizados . Y mientras lo haces, te ves obligado a analizar el problema de maneras en las que antes no pensabas.

Considero que los diagramas ER son muy útiles para analizar un escenario en el que hay datos involucrados.

El modelo ER le brinda las herramientas para representar, mediante una notación gráfica, todos los datos que necesita modelar, las relaciones entre los diferentes tipos de datos y la información asociada a ellos.

Hay 2 elementos que componen un modelo ER:

  • Las entidades
  • Las relaciones

Las entidades son tipos de datos, como elementos o personas, que tienen propiedades comunes.

Las relaciones son las relaciones entre entidades.

Déjame darte un ejemplo, hablemos de libros y sus autores. Tenemos dos entidades :

  • libro
  • autor

Un libro particular es una instancia de la entidad libro.

Como tenemos 2 entidades, tenemos 2 relaciones entre ellas. Una es la relación entre un solo libro y la entidad de los autores. Otra es la relación entre un solo autor y la entidad de los libros. Si lo pensamos, tenemos:

  • Un libro tiene un autor
  • Un autor puede escribir muchos libros diferentes.

La notación visual para entidades

Dado este sencillo ejemplo, podemos comenzar a introducir la notación visual que nos ayudará a crear el modelo de datos ER de nuestro escenario.

 

Nota: Existen muchas formas distintas de dibujar diagramas ER. Utilizaré la que, en mi opinión , es más visual y tiene más sentido.

Las entidades se representan como rectángulos, con algún texto en ellos para identificarlas:

La notación visual para las relaciones

La relación entre entidades se representa, en su forma más básica, mediante una línea que conecta dos relaciones y un diamante con algún texto para identificar el tipo de relación:

Tenga en cuenta que no creé dos relaciones “el libro tiene autor” y “el autor escribió el libro”. Creé una única relación “autor” entre un libro y un autor.

Cardinalidades

Una vez que tenemos una relación, ahora debemos indicar los números involucrados. En este momento, tenemos muchas preguntas:

  • ¿Cuántos autores puede tener un libro?
  • ¿Puede un autor escribir varios libros?
  • ¿Es necesario que un autor escriba al menos un libro para ser considerado autor?
  • ¿Puede un libro ser escrito por varios autores?
  • ¿Puede existir un libro sin al menos un autor?

Todas esas son buenas preguntas y, en este caso, creo que las respuestas son bastante obvias. Y cuando la respuesta no es obvia, puedes pensar en el problema y agregar tus propias restricciones.

Existen varias formas de indicar visualmente las cardinalidades en un diagrama. Algunos prefieren cambiar la forma de la línea cuando se vincula a una entidad.

Prefiero los números, que hacen las cosas más claras:

Los números anteriores significan esto: un libro puede ser escrito por 1 o más autores. nsignifica cualquier número de elementos.

Y un autor puede haber escrito desde 0 libros (quizás esté escribiendo uno ahora) hasta un número infinito de libros.

La primera se denomina relación de cero a muchos . La segunda es una relación de uno a muchos .

También podemos tener:

  • relaciones uno a uno
  • relaciones de muchos a muchos
  • relaciones de cero a uno

Atributos

Cada entidad puede tener uno o más atributos.Te recomendamos Tostadora de pan

Supongamos que vamos a utilizar la relación anterior en una librería. Cada autor tiene un nombre, una biografía y la URL de un sitio web.

Cada libro tiene un título, una editorial, un año de publicación, un ISBN. La editorial también podría ser una entidad, si queremos. Pero también podemos definirla como un atributo de un libro.

Así es como podemos representar la información anterior:

Atributos de identificador

Las entidades deben identificarse mediante una clave única. La entidad libro puede identificarse de forma única mediante el atributo ISBN. Cada libro tiene un único ISBN (teniendo en cuenta que no representamos una única copia de un libro, sino un “título” de libro).

Identificamos los atributos clave primarios subrayándolos:

Por otra parte, el autor no tiene un identificador único por el momento. Dos autores pueden tener el mismo nombre.

Por lo tanto, debemos agregar un atributo clave único. Por ejemplo, un idatributo:

 

Los atributos de identificador pueden abarcar varios atributos.

Por ejemplo, el ID del pasaporte y el país del autor identifican de forma única a la persona y podrían reemplazar el idatributo que agregamos:

¿Cuál elegir? Es una cuestión de lo que tenga más sentido en su aplicación. Si estamos modelando una librería, no podemos esperar tener el país y el número de pasaporte de todos los autores de libros. Por lo tanto, utilizaremos un código aleatorio que idelegiremos y asociaremos con cada autor.

Atributos de relación

Los atributos no son exclusivos de las entidades. Las relaciones también pueden tener atributos.

Supongamos que necesitamos modelar una biblioteca. Además de las entidades libro y autor, ahora introducimos la entidad lector , una persona que toma prestado el libro para leerlo. Tomamos su nombre y número de documento de identidad cuando lo toma prestado:

Pero aún nos falta información. Necesitamos saber cuándo la persona tomó prestado el libro y la fecha en que lo devolvió, para poder almacenar la información sobre todo el historial de un libro en particular en nuestra biblioteca. Esta información no pertenece ni a las entidades libro ni lector, sino a la relación:

Entidades débiles

Hablamos sobre las claves primarias anteriormente y cómo ayudan a identificar de forma única una entidad.

Algunas entidades dependen de otras entidades para su existencia y se denominan entidades débiles .

Supongamos que necesitamos modelar pedidos para una tienda online.

Para cada pedido, almacenaremos el ID del pedido, que comienza en 1 y aumenta con el tiempo, la fecha y hora en que se realizó y la información sobre el cliente, para que sepamos a quién facturar y dónde enviarlo.

Luego también necesitamos saber qué pidieron. Creamos una entidad débil, “artículo pedido”, que representa cada artículo que se encuentra en el carrito en el momento de realizar el pago.

Esta entidad almacenará el precio del artículo en el momento de realizar el pago (por lo que cuando cambiemos el precio de los productos en oferta, no afectará a los pedidos ya realizados), la cantidad de artículos que se pidieron y las opciones elegidas. Digamos que vendemos camisetas, por lo tanto, necesitamos almacenar el color y la talla de la camiseta solicitada.

Es una entidad débil porque una entidad de elemento ordenado no puede existir sin una entidad de orden.

Relaciones recursivas

Una entidad puede tener una relación recursiva consigo misma. Supongamos que tenemos una entidad persona. Podemos modelar la relación padre-hijo de esta manera:

Una persona puede tener de 0 a n hijos, un hijo tiene 2 padres (considerando el escenario más simple).

Relaciones ISA

ISA significa IS-A y es una forma de modelar generalizaciones en el modelo ER.

Lo utilizamos para agrupar entidades similares bajo un paraguas común. Por ejemplo, un autor y un lector, en el caso del ejemplo de los libros y la biblioteca, se pueden generalizar utilizando una entidad persona.

Ambos tienen un nombre, por lo que podemos extraer el nombre hasta la entidad persona, y simplemente gestionar las particularidades de ser autor o lector en la entidad correspondiente:

Relaciones no binarias

No todas las relaciones son estrictamente binarias. Tomemos como ejemplo una lección.

Hoy a las 10:00 se lleva a cabo una clase en un aula de la escuela, con un profesor hablando a la clase sobre física.

Entonces, se da una lección en un momento particular del día, involucra una materia, un profesor, una clase y un aula.

Podemos modelarlo de esta manera:




Tal vez te puede interesar:

  1. Introducción a React
  2. Agregar evento de clic a los elementos DOM devueltos desde querySelectorAll
  3. Cómo cambiar el valor de un nodo DOM
  4. Cómo comprobar si un elemento DOM tiene una clase

Introducción al modelo de datos ER

La notación visual para entidadesLa notación visual para las relacionesCardinalidadesAtributosAtributos de identificadorAtributos de relaciónEntidades débi

programar

es

2025-01-02

 

Introduccion al modelo de datos er 1
Introduccion al modelo de datos er 1

Si crees que alguno de los contenidos (texto, imagenes o multimedia) en esta página infringe tus derechos relativos a propiedad intelectual, marcas registradas o cualquier otro de tus derechos, por favor ponte en contacto con nosotros en el mail [email protected] y retiraremos este contenido inmediatamente

 

 

Update cookies preferences