Está en la página 1de 11

Fundamento de las bases de datos: Modelo entidad-relacin

http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-de-...

Regstrate

Entra

o conctate con

Buscar

Respuestas

Trabajar como desarrollador

Desarrollo web

Actualidad

Desarrolladores

Ms

NO TE PIERDAS

Curiosidades

Open Source

Frameworks

Herramientas de desarrollo

Eventos para Desarrolladores


PUBLICIDAD

05 de noviembre de 2013 | 09:10 CET

Pedro Gutirrez
Google+ @PedroXitrus Editor en Genbetadev

PUBLICIDAD

Sguenos
Newsletter: Suscrbete

Comentarios 18

Versin mvil

Versin tablet

Las bases de datos son un gran pilar de la programacin actual, ya que nos permiten almacenar y usar de forma rpida y eficiente cantidades ingentes de datos con cierta facilidad. En la actualidad se usa de forma mayoritaria las bases de datos relacionales (dominadas por distintos gestores a travs del lenguaje SQL, en gran medida). Pero ahora vamos a dar un pequeo repaso a lo ms esencial del modelo entidad-relacin, que es y ha sido durante aos la mejor forma de representar la estructura de estas bases de datos relacionales (o de representar sus esquemas).

Qu es el modelo entidad-relacin?
Como ya he comentado este modelo es solo y exclusivamente un mtodo del que disponemos para disear estos esquemas que posteriormente debemos de implementar en un gestor de BBDD (bases de datos). Este modelo se representa a travs de diagramas y est formado por varios elementos. Este modelo habitualmente, adems de disponer de un diagrama que ayuda a entender los datos y como se relacionan entre ellos, debe de ser completado con un pequeo resumen con la lista de los
Utilizamos cookies propias y de terceros para mostrarle publicidad relacionada con sus preferencias segn su navegacin. Si continua navegando consideramos que acepta el uso de cookies. Ms informacin >

1 de 11

29/04/2014 01:48 p.m.

Fundamento de las bases de datos: Modelo entidad-relacin

http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-de-...

Regstrate

Entra

o conctate con

Entidad
Las entidades representan cosas u objetos (ya sean reales o abstractos), que se diferencian claramente entre s. Para poder seguir un ejemplo durante el artculo aadir ejemplos sobre un taller mecnico, donde se podra crear las siguientes entidades: Coches (objeto fsico): contiene la informacin de cada taller. Empleado (objeto fsico): informacin de los trabajadores. Cargo del empleado (cosa abstracta): informacin de la funcin del empleado. Estas entidades se representan en un diagrama con un rectngulos, como los siguientes.

Atributos
Los atributos definen o identifican las caractersticas de entidad (es el contenido de esta entidad). Cada entidad contiene distintos atributos, que dan informacin sobre esta entidad. Estos atributos pueden ser de distintos tipos (numricos, texto, fecha). Siguiendo el ejemplo de antes podemos analizar los atributos de nuestra entidad Coches, que nos darn informacin sobre los coches de nuestro supuesto taller. Unos posibles atributos seran los siguientes: nmero de chasis, matrcula, DNI del propietario, marca, modelo y muchos otros que complementen la informacin de cada coche. Los atributos se representan como crculos que descienden de una entidad, y no es necesario representarlos todos, sino los ms significativos, como a continuacin.

En un modelo relacional (ya implementado en una base de datos) una ejemplo de tabla dentro de una BBDD podra ser el siguiente.

Nmero de chasis 5tfem5f10ax007210 6hsen2j98as001982

Matrcula 4817 BFK 8810 CLM

DNI del propietario 45338600L 02405068K

Utilizamos cookies propias y de terceros para mostrarle publicidad relacionada con sus preferencias segn su navegacin. Si continua navegando consideramos que acepta el uso de cookies. Ms informacin >

2 de 11

29/04/2014 01:48 p.m.

Fundamento de las bases de datos: Modelo entidad-relacin

http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-de-...

Regstrate

Entra

o conctate con

seguiran la misma estructura de columnas, tras implementarlo en una BBDD.

Relacin
Es un vnculo que nos permite definir una dependencia entre varias entidades, es decir, nos permite exigir que varias entidades compartan ciertos atributos de forma indispensable. Por ejemplo, los empleados del taller (de la entidad Empleados) tienen un cargo (segn la entidad Cargo del empleado). Es decir, un atributo de la entidad Empleados especificar que cargo tiene en el taller, y tiene que ser idntico al que ya existe en la entidad Cargo del empleado. Las relaciones se muestran en los diagramas como rombos, que se unen a las entidades mediante lneas.

Yo, bajo mi punto de vista, entiendo mejor esto en una tabla (de una implementacin en una BBDD), por lo que voy a poner el ejemplo de como se representara (resaltada la relacin, que posteriormente veremos como se hara). Empleados

Nombre Carlos Snchez Pepe Snchez Juan Snchez

DNI 45338600L 02405068K 40588860J

Cargo 001 002 002

Cargo del empleado

ID del cargo 001 002

Descripcin Jefe de taller Mecnico

Relaciones de cardinalidad
Podemos encontrar distintos tipos de relaciones segn como participen en ellas las entidades. Es decir, en el caso anterior cada empleado puede tener un cargo, pero un mismo cargo lo pueden compartir varios empleados. Esto complementa a las representaciones de las relaciones, mediante un intervalo en cada extremo de la relacin que especifica cuantos objetos o cosas (de cada entidad) pueden intervenir en esa relacin.
Utilizamos cookies propias y de terceros para mostrarle publicidad relacionada con sus preferencias segn su navegacin. Si continua navegando consideramos que acepta el uso de cookies. Ms informacin >

3 de 11

29/04/2014 01:48 p.m.

Fundamento de las bases de datos: Modelo entidad-relacin

http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-de-...

Regstrate

Entra

o conctate con

solo puede tener una matrcula (y cada matrcula un chasis, ni ms en ningn caso).

Uno a varios o varios a uno: determina que un registro de una entidad puede estar relacionado con varios de otra entidad, pero en esta entidad existir solo una vez. Como ha sido en el caso anterior del trabajador del taller.

Varios a varios: determina que una entidad puede relacionarse con otra con ninguno o varios registros y viceversa. Por ejemplo, en el taller un coche puede ser reparado por varios mecnicos distintos y esos mecnicos pueden reparar varios coches distintos.

Los indicadores numricos indican el primero el nmero mnimo de registros en una relacin y posteriormente el mximo (si no hay lmite se representa con una n).

Claves
Es el atributo de una entidad, al que le aplicamos una restriccin que lo distingue de los dems registros (no permitiendo que el atributo especfico se repita en la entidad) o le aplica un vnculo (exactamente como comentbamos en las relaciones). Estos son los distintos tipos: Superclave: aplica una clave o restriccin a varios atributos de la entidad, para as asegurarse que en su conjunto no se repitan varias veces y as no poder entrar en dudas al querer identificar un registro. Clave primaria: identifica inequvocamente un solo atributo no permitiendo que se repita en la misma entidad. Como sera la matrcula o el nmero de chasis de un coche (no puede existir dos veces el mismo). Clave externa o clave fornea: este campo tiene que estar estrictamente relacionado con la clave primaria de otra entidad, para as exigir que exista previamente ese clave. Anteriormente hemos hablado de ello cuando comentbamos que un empleado indispensablemente tiene que tener un cargo (que lo hemos representado numricamente), por lo cual si intentsemos darle un cargo inexistente el gestor de bases de datos nos devolvera un error.

Resumen
Esto ha sido solo un repaso por encima de lo que es el modelo entidad-relacin, sin entrar en grandes detalles. Tambin, bajo mi punto de vista, creo que es una buena forma de disear correctamente las bases de datos, aunque algunas veces resulta ms rpido implementarlo directamente en nuestro gestor de BBDD sin la necesidad de crear un gran diagrama, sino usando notas ms simples. Y vosotros cmo diseis las bases de datos?
Utilizamos cookies propias y de terceros para mostrarle publicidad relacionada con sus preferencias segn su navegacin. Si continua navegando consideramos que acepta el uso de cookies. Ms informacin >

4 de 11

29/04/2014 01:48 p.m.

Fundamento de las bases de datos: Modelo entidad-relacin

http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-de-...

Regstrate

Entra

o conctate con

Tags

Bases de Datos

Modelo entidad-relacin

PUBLICIDAD

lifeprojector.com.br

Conserto em projetores e datashow Projetos de audio e video.

Artculos recomendados

Respuestas

Desarrollo de aplicaciones mviles (II): Para qu plataformas mviles desarrollar y para cul primero?
(Xataka Mvil)

18 1

Qu gestor de bases de datos prefieres usar y porqu?


hace 7 meses

97 cosas que todos los programadores deberan saber

Cmo se hacen los procedimientos almacenados que retornan varios registros en ORACLE?

Las diez tecnologas mejor pagadas que un programador puede aprender

hace 10 meses

Quince aplicaciones imprescindibles para llevar en tu USB


(Genbeta)

2 0
recomendado por

Diferencias entre lenguages SQL y NoSQL


hace 10 meses

Mark Zuckerberg se reduce el salario a 1 dlar mensual


(Xataka Mxico)

Sobre sincronizacion de bases de datos


hace un ao

Ver ms artculos

Powercenter
hace 3 aos

Ver ms respuestas

Deja un comentario
Entra
Reglas de participacin Notificacin de comentarios por correo: Todos Slo respuestas a los mos Nada

Publicar
Utilizamos cookies propias y de terceros para mostrarle publicidad relacionada con sus preferencias segn su navegacin. Si continua navegando consideramos que acepta el uso de cookies. Ms informacin >

5 de 11

29/04/2014 01:48 p.m.

Fundamento de las bases de datos: Modelo entidad-relacin

http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-de-...

Regstrate

Entra

o conctate con

18 comentarios
Suscribir Abrir todos Cerrar todos

Ordenar por:

Ms valorados

Ms recientes

Cronolgico

manp

INTERESANTE
5 de Noviembre de 2013 - 4:22

Enhorabuena por el artculo, muy bien redactado y explicado. Pero sinceramente, no creo que sea muy til para la mayora de los que visitamos esta web. Un saludo ;)

Respondiendo a manp:

6 votos | Karma 67.50

Responder

patxi198

INTERESANTE
5 de Noviembre de 2013 - 4:33

yo creo que te sorprenderia cuantos programadores no saben esto, o no lo tienen bien aprendido aunque si que es cierto, que quizas estos programadores no vengan por estos lares. Igualmente enhorabuena por el articulo. Aunque hubiera explicado en las claves primaria, la diferencia entre clave natural y clave autonumerica, ya que no siempre podemos tener una clave natural


Respondiendo a patxi198:

5 votos | Karma 65.00

Responder

18

jairiski96

8 de Noviembre de 2013 - 4:28

Pues yo, como aprendiz de programador, te doy las gracias. En 10 minutos he aprendido lo que mi profesora de ofimtica (Que tambin da bases de datos[en mi curso de grado medio]) no ha logrado explicar en 3 horas. Genial tambin el artculo de la arquitectura von-neumman, aunque no s si lo has redactado tu o no. Saludos, @jairoV96.


Respondiendo a manp:

0 votos | Karma 5.00

Responder

Pedro Gutierrez
http://xitrus.es

5 de Noviembre de 2013 - 11:03

Realmente me he echado a escribirlo para complementar las explicaciones de clase y echarles un cable a mis compaeros, que es algo que sin saber de BBDD cuesta un

Utilizamos cookies propias y de terceros para mostrarle publicidad relacionada con sus preferencias segn su navegacin. Si continua navegando consideramos que acepta el uso de cookies. Ms informacin >

6 de 11

29/04/2014 01:48 p.m.

Fundamento de las bases de datos: Modelo entidad-relacin

http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-de-...

Regstrate

Entra

o conctate con

que ni conocen esto (tambin es verdad que no es indispensable) pero viene bien conocer las bases de la BBDD relacionales.

Cassidy

1 voto | Karma 23.00

Responder

INTERESANTE
5 de Noviembre de 2013 - 4:46

Hola, buen artculo bsico y sencillamente explicado. Slo un par de cosas (pejigueras): La relacin, por norma general, se expresa con un slo verbo o verbo + artculo. Ese "Es en el taller", no mola. La entidad tambin debe contener un slo sustantivo. En el ejemplo de Empleados / Cargo el empleados.id_cargo 003 puede llevar a confusin en el ejemplo. O se aade un cargo con id 003 o se pone a 001/002 el de Juan Snchez. El resto guay :-)


Respondiendo a Cassidy:

2 votos | Karma 35.00

Responder

Pedro Gutierrez
http://xitrus.es

5 de Noviembre de 2013 - 11:04

Si, es un poco "chapucero" poner algo tan largo, pero ha sido para garantizar que se entiende. En cuanto a lo de Empleados y Cargos del empelado es una relacin 1:N, que lo he mencionado un poco antes para abrir camino a estos tipos. Pero gracias por el comentario ;)


josuebspawn

1 voto | Karma 23.00

Responder

INTERESANTE
6 de Noviembre de 2013 - 14:39

16

Refrescar conceptos y la memoria va muy bien. Para los iniciados puede ser una introduccin a las bases de datos relacionales. Sea chapucero o no, el pararse a escribir una entrada por parte de una persona que dedica su tiempo a dar una pequea muestra del saber sobre estos temas es de agradecer cuanto mnimo.


thebronx
http://salvatorelab.es

1 voto | Karma 30.00

Responder

5 de Noviembre de 2013 - 5:28

mira que me gustan poco los esquemas... si la base de datos es sencilla es una prdida de tiempo andar con esquemitas, y si es complicada, ver un esquema con tropecientas entidades y relaciones por todas partes lo nico que hace es que vayas directamente a las tablas a ver ejemplos reales ya que no hay dios que saque algo en claro de semejante laberinto.

Utilizamos cookies propias y de terceros para mostrarle publicidad relacionada con sus preferencias segn su navegacin. Si continua navegando consideramos que acepta el uso de cookies. Ms informacin >

7 de 11

29/04/2014 01:48 p.m.

Fundamento de las bases de datos: Modelo entidad-relacin

http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-de-...

Regstrate Respondiendo a thebronx:

Entra

o conctate con

isola009

5 de Noviembre de 2013 - 6:45

Hay herramientas que te generan los diagramas automticamente y tambin hay software que diseando esquemticamente, te crea las tablas. Cada uno sabr cmo lo quiere hacer, lo importante cuando heredas un cdigo ajeno es tener ambas cosas.

Respondiendo a isola009:

0 votos | Karma 8.00

Responder

12

Pedro Gutierrez
http://xitrus.es

6 de Noviembre de 2013 - 11:03

El problema es que algunos de esos programas que te pasan del modelo entidad-relacin te meten paja innecesaria. Pero si, viene bien tener todo esto cuando te toca manipular un esquema que ha hecho otro.


Respondiendo a thebronx:

0 votos | Karma 13.00

Responder

robertito131

5 de Noviembre de 2013 - 6:44

En general no esquematizas toda la base de datos. Hay tablas que son comunes para casi todos los proyectos y que ya las conoces de memoria en su forma normalizada. El modelado es til cuando trabajas con estructuras de datos complejas o desconocidas.


marbaz

0 votos | Karma 5.00

Responder

11

6 de Noviembre de 2013 - 6:21

estis posteando vuestros apuntes de la carrera? jijijiji


Respondiendo a marbaz:

1 voto | Karma 20.00

Responder

13

Pedro Gutierrez
http://xitrus.es

6 de Noviembre de 2013 - 11:04

Nooooo... Si. Realmente no es de la carrera, es de una Formacin Profesional, pero si son cosas de mi temario habitual. Genbeta Dev me permite ampliar cosas de clase o re-explicarlas para echarles un cable a mis compaeros y de paso refresco la memoria a muchos que lo vieron hace aos.


acepta el uso de cookies. Ms informacin >

0 votos | Karma 13.00

Responder

Utilizamos cookies propias y de terceros para mostrarle publicidad relacionada con sus preferencias segn su navegacin. Si continua navegando consideramos que

8 de 11

29/04/2014 01:48 p.m.

Fundamento de las bases de datos: Modelo entidad-relacin

http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-de-...

Regstrate

Entra

o conctate con

10

manutek

5 de Noviembre de 2013 - 17:01

Esta muy mal hecho, aunque es un ejemplo! Para empezar una entidad no puede decir "Empleados, coches" sino "Empleado, coche" por que confunde decirlo en plural, otro detalle nunca usaria palabras largas para las realciones como "Es en el taller" usaria "Posee o Pertenece"! eso si depende de cada quien. Por ultimo un ID debe ser 1,2,3 no 001,002,003.


Gerardo
http://www.treeweb.es/

3 votos | Karma 18.00

Responder

14

6 de Noviembre de 2013 - 12:19

Por el ttulo pensaba que era cmo surgi el modelo entidad-relacin pero slo son resmenes de apuntes de bases de datos relacionales. No hay nada sobre cardinalidad, normalizacin/desnormalizacin, lgebra relacional, ni ndices


Respondiendo a Gerardo:

0 votos | Karma 10.00

Responder

15

Pedro Gutierrez
http://xitrus.es

6 de Noviembre de 2013 - 12:24

Si, solo es sobre el modelo de entidad-relacional por encima, lo ms bsico, si me metiese en detalles o en la historia de cuando se cre este modelo (por Peter Chen) sera eterno el artculo y no cumplira su cometido, que es el de repasar el modelo. Aunque sobre la historia de Peter Chen y porqu y como cre este modelo podra hablar en ms adelante... Saludos :)

jorgeregidor
http://www.linkedin.com/pub/jorg...

0 votos | Karma 13.00

Responder

5 de Noviembre de 2013 - 6:44

muy bueno el articulo!! y yo creo que nunca esta demas a quienes nos lo sabemos pegarle un repasito y a quien no lo sepa que se lo aprenda, porque es lo mas basico a la hora de disear DB y si es verdad que alguno no sabe ni que existe


adordth

0 votos | Karma 8.00

Responder

17

7 de Noviembre de 2013 - 19:46

Casi no me lo creo cuando comentaron que hay programadores que no saben esto. In lo personal, prefiero tender in diagrams E-R por my sencilla o compleja que sea LA base de datos.


acepta el uso de cookies. Ms informacin >

0 votos | Karma 8.00

Responder

Utilizamos cookies propias y de terceros para mostrarle publicidad relacionada con sus preferencias segn su navegacin. Si continua navegando consideramos que

9 de 11

29/04/2014 01:48 p.m.

Fundamento de las bases de datos: Modelo entidad-relacin

http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-de-...

Regstrate

Entra

o conctate con

Suscribir

Abrir todos

Cerrar todos

PUBLICIDAD

Ms en Genbeta Dev

Bases de datos en Xojo, todo lo que necesitas

La nueva versin 2.6 de MongoDB lista para usarse en produccin

MariaDB 10 sigue aportando mejoras al cdigo legacy de MySQL, soporte NoSQL y ms escalable

WebScaleSQL, el proyecto libre de Facebook, Twitter, Google y Linkedin para hacer MySQL ms escalable

Pop, el motor de animaciones de Paper, liberado por Facebook

TECNOLOGA
Xataka Xataka Mvil Xataka Foto Xataka Android Xataka On

ESTILOS DE VIDA
Trendencias Trendencias Belleza Trendencias Hombre Trendencias Shopping Trendencias Lifestyle Directo al Paladar Bebs y Ms Peques y Ms Vitnica Decoesfera Embelezzia Ambiente G Poprosa

MOTOR
Motorpasin Motorpasin F1 Motorpasin Moto Motorpasin Futuro

OCIO
Blog de Cine Vaya Tele! Hipersnica Diario del Viajero Papel en Blanco

ECONOMA
El Blog Salmn Pymes y Autnomos Tecnologa Pyme Ahorro Diario

LATINOAMRICA
Xataka Brasil Trendencias Brasil Motorpasin Brasil Xataka Mxico Motorpasin Mxico Directo Al Paladar Mxico Xataka Android Mxico Vida Extra Mxico Vitnica Mxico

PARTICIPAMOS EN
Circula Seguro Circula Seguro PT Actibva Anexo M Happing Magazine Blog Sage Optimismo Digital En Naranja Bloggin Zenith Urbanfire Tecnologa de t a t Ciudadano 0,0 Blog Fanta Mi Mundo Philips

Utilizamos cookies propias y de terceros para mostrarle publicidad relacionada con sus preferencias segn su navegacin. Si continua navegando consideramos que acepta el uso de cookies. Ms informacin >

10 de 11

29/04/2014 01:48 p.m.

Fundamento de las bases de datos: Modelo entidad-relacin

http://www.genbetadev.com/bases-de-datos/fundamento-de-las-bases-de-...

Regstrate QUIENES SOMOS? Bershka Bscene


Instituto de la Felicidad

Entra

o conctate con

CONDICIONES DE USO

POLTICA DE COOKIES

AVISO LEGAL

PUBLICIDAD

AYUDA

CONTACTO

Utilizamos cookies propias y de terceros para mostrarle publicidad relacionada con sus preferencias segn su navegacin. Si continua navegando consideramos que acepta el uso de cookies. Ms informacin >

11 de 11

29/04/2014 01:48 p.m.

También podría gustarte