Supongamos que tengo una tabla «Transacciones» que tiene una columna «ID de cliente» (clave externa) y una tabla de clientes que tiene «ID» (clave principal) . ¿Cómo muestro la relación entre las dos tablas y demuestro que el «ID de cliente» es la clave externa de la tabla «Transacciones», que es la clave principal en la tabla «Cliente»?
Busqué en Google esta pregunta y también revisé este foro para mi consulta, pero no pude encontrar un ejemplo exacto con un diagrama que responda a mi pregunta.
Por favor, explíqueme, si es posible, con un diagrama.
Comentarios
- Encontré el siguiente enlace que dice que podemos mostrar una clave externa solo en un diagrama ER conceptual. lucidchart.com / pages / ER-diagram-symbols-and-Meaning . Dime cómo puedo hacerlo.
- Yo ‘ he aprendido en la escuela (!!) que las claves primarias se pueden representar con un subrayado directo debajo de los atributos y las claves externas con una línea de puntos
- De acuerdo. Pero, ¿cómo demuestro que la clave externa en uno table es lo mismo que la clave principal de otra tabla cuyos nombres son diferentes en sus respectivas ta bles (como se pregunta en el ejemplo de la pregunta sobre ‘ ID ‘ y ‘ Cliente ID ‘)?
- Como esta pregunta se refiere a una notación «No-Chen» (porque pide mostrar relaciones fk), he abierto una nueva pregunta explícitamente para un modelo ER en notación Chen en dba.stackexchange.com/questions/271264/…
Respuesta
Los diagramas ER se usaron originalmente solo para representar el modelo ER. El modelo ER no utiliza claves externas para representar relaciones. Utiliza líneas entre cajas. Las líneas tienen algún tipo de indicador de cardinalidad en cualquier extremo o en ambos extremos. A veces, una relación se indicará por separado con un diamante.
Hoy en día, más de la mitad de los diagramas ER que flotan son en realidad diagramas de un modelo relacional y no de un modelo ER. Un modelo relacional tiene las claves foráneas incluidas en las tablas, y estas sirven para implementar las relaciones que identifica el modelo ER. Y un modelo relacional tendrá una tabla adicional, a menudo denominada «tabla de unión» entre dos tablas de entidades que están vinculadas por una relación de varios a varios. Esta tabla de unión contiene dos o más claves foráneas.
Hay muchas formas de representar un modelo relacional. Quizás el más simple es el «Diagrama de relaciones» que MS Access puede producir a partir de una base de datos completa. Esto será bastante completo, si el constructor de la base de datos ha identificado las claves externas.
Hay muchas herramientas que son más sofisticadas que MS Access para hacer diagramas a mayor escala. Algunos de estos se utilizan antes de crear la base de datos. Algunos se usan después.
Comentarios
- Actualmente solo estoy haciendo un diagrama en un papel. ¿Puede mostrar cómo las dos tablas anteriores (en la pregunta) se pueden representar en un diagrama de relación?
- Si busca en » ER Diagram Clientes Transacciones » obtendrá una gran cantidad de imágenes que muestran varias formas de hacer lo que desea.
Respuesta
Al dibujar diagramas ER, utilicé la siguiente convención gráfica: Etiquete las líneas de relación con los nombres de columna de clave externa, así:
Esto aclara qué columna de la tabla secundaria es la clave externa de la tabla principal. Se puede indicar el estado de la clave principal subrayando el atributo en cuestión.
Lo que puede ser más útil que esto es una convención de nomenclatura que deja en claro cuál es la clave principal de una tabla (se hace fácilmente si usa claves sustitutas por convención) y qué es una columna de clave externa.
Algunos diagramas de modelos relacionales también incluyen una etiqueta de participación de clave a la izquierda de los nombres de columna en la lista de columnas (por ejemplo, » PK «, » FK1 «, » FK2 «, …) que puede ayudar especialmente si tiene claves compuestas.
Comentarios
- ¿Esta convención también se publicó en algún lugar o es solo tu (buena) idea?
- @Lorenz it ‘ s my Adaptación para un diagrama físico-entidad-relación de la versión de la notación de pie de cuervo ‘ ( en.wikipedia.o rg / wiki / … ) publicado por James Martin ( en.wikipedia.org/wiki/James_Martin_(author) ) en su libro Ingeniería de la información que usaba el nombre de la relación como etiqueta en las relaciones.Para mí, es ‘ una extensión sensata del modelo lógico al modelo físico.
- Incluso si ayuda, sigue siendo una idea privada, entonces, esto no fue totalmente claro de la expresión «He usado».
Respuesta
Prefiero este formato, usando «patas de gallo» para ilustrar las uniones de muchos a uno
Comentarios
- También me gustan las patas de gallo para los diagramas ER. Para los diagramas relacionales, prefiero la punta de flecha. tenga en cuenta que un pie de gallo va en el » muchos » final de una línea, mientras que una punta de flecha va en el » un » final de una línea.
- Aquí solo faltan los símbolos FK / PK en los extremos de la línea 🙂 Aún así, esta respuesta de seguimiento a la primera publicación del enlace de dlink ‘ obtuvo muy pocos votos en mi opinión. dlink ‘ s enlace previamente publicado fue criticado, ya fue mencionado en el primer comentario de la pregunta antes por @MKSingh quien había preguntado;), ¡PERO! parece que el enlace es mejor de lo que se indica allí. Si miras el video que se ofrece bajo » Símbolos ERD físicos «, muestra exactamente cómo representar múltiples FK en un ERD, aquí está el enlace directo, vaya a 7:28, youtube.com/watch?v=QpdhBUYk7Kk
Respuesta
Muchos años después, tenga en cuenta las diferentes notaciones de los diagramas ER, la pregunta no es lo suficientemente precisa.
Eche un vistazo a todas respuestas en
https://stackoverflow.com/questions/48191228/is-erd-considered-a-kind-of-uml-diagram#48198083
y
¿Cuál es un diagrama ER? . Una respuesta aquí incluso establece que la notación Chen es la ERD, mientras que la notación Crow Foot se dice que es un EAD (diagrama de atributos de entidad), consulte @JoshuaGuttman.
La notación Chen no muestra explícitamente las relaciones FK , como ya explica la respuesta aceptada, mientras que otras notaciones pueden hacer esto.
Si, por ejemplo, toma la notación Crow Foot o Baker «s en su lugar, puede tomar la » respuesta » más precisa de @dlink donde las líneas conducen exactamente a los FK. Entonces todavía no está claro qué hacer con los FK compuestos que conducen a PK compuestos, y probablemente debido a que, los programas profesionales simplemente no vinculan gráficamente los finales de línea con los FK. Entonces, el nombre es todo lo que puede hacer referencia, lo cual es suficiente de todos modos si se mantiene estrictamente en una convención de nombres (como CustomerID a Customer.ID, u otras reglas) . Consulte, por ejemplo, Visual Paradigm en https://www.visual-paradigm.com/guide/data-modeling/what-is-entity-relationship-diagram/
Responder
Esta página, de LucidCharts tiene un buen escrito sobre cómo debería verse el ERD.
En Símbolos ERD físicos, muestra cómo representar claves.
[ https://www.lucidchart.com/pages/ER-diagram-symbols-and-meaning]
Comentarios
- Bienvenido dlink. Intente proporcionar respuestas completas que sean más que un simple enlace , de lo contrario, pueden eliminarse.