Fundamento de las bases de datos_ Modelo entidad-relación.pdf

download Fundamento de las bases de datos_ Modelo entidad-relación.pdf

of 11

Transcript of Fundamento de las bases de datos_ Modelo entidad-relación.pdf

  • 7/22/2019 Fundamento de las bases de datos_ Modelo entidad-relacin.pdf

    1/11

    Pedro Gutirrez

    Google+@PedroXitrus

    Editor en Genbetadev

    PUBLICIDAD

    Sguenos

    Newsletter:

    Suscrbete

    Versin mvil Versin tablet

    05 de noviembre de 2013 | 09:10 CET

    Las bases de datosson 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 fo rmado 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

    Respuestas Trabajar como desarrollador Desarrollo web Actualidad Desarrolladores Ms

    NO TE PIERDAS Curiosidades Open Source Frameworks Herramientas de desarrollo Eventos para DesarrolladoresPUBLICIDAD

    Buscar

    Comentarios 18

    Regstrate | Entra o conctate con

    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 >

    amento de las bases de datos: Modelo entidad-relacin http://www.genbetadev.com/bases-de-datos/fundamento-de-las-ba

    1 29/04/2014 0

  • 7/22/2019 Fundamento de las bases de datos_ Modelo entidad-relacin.pdf

    2/11

    Entidad

    Las entidades representan cosasu 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(objetofsico): informacin de los trabajadores.

    Cargo del empleado(cosaabstracta): informacin de la funcin del empleado.

    Estas entidades se representan en un diagrama con un rectngulos, como los siguientes.

    Atributos

    Los atributos def inen 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, modeloy muchos otros que complementen la informacin de cada coche.

    Los atributos se representan como crculos que descienden de una entidad, y no es necesariorepresentarlos 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

    BBDDpodra ser el siguiente.

    Nmero de chasis Matrcula DNI del propietario

    5tfem5f10ax007210 4817 BFK 45338600L

    6hsen2j98as001982 8810 CLM 02405068K

    Regstrate | Entra o conctate con

    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 >

    amento de las bases de datos: Modelo entidad-relacin http://www.genbetadev.com/bases-de-datos/fundamento-de-las-ba

    1 29/04/2014 0

  • 7/22/2019 Fundamento de las bases de datos_ Modelo entidad-relacin.pdf

    3/11

    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 entidadCargo 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 DNI Cargo

    Carlos Snchez 45338600L 001

    Pepe Snchez 02405068K 002

    Juan Snchez 40588860J 002

    Cargo del empleado

    ID del cargo Descripcin

    001 Jefe de taller

    002 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 objetoso cosas(de cada entidad) pueden intervenir en esa

    relacin.

    Regstrate | Entra o conctate con

    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 >

    amento de las bases de datos: Modelo entidad-relacin http://www.genbetadev.com/bases-de-datos/fundamento-de-las-ba

    1 29/04/2014 0

  • 7/22/2019 Fundamento de las bases de datos_ Modelo entidad-relacin.pdf

    4/11

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

    Uno a varioso 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 externao 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.

    ResumenEsto 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

    BBDDsin la necesidad de crear un gran diagrama, sino usando notas ms simples.

    Y vosotros cmo diseis las bases de datos?

    Regstrate | Entra o conctate con

    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 >

    amento de las bases de datos: Modelo entidad-relacin http://www.genbetadev.com/bases-de-datos/fundamento-de-las-ba

    1 29/04/2014 0

  • 7/22/2019 Fundamento de las bases de datos_ Modelo entidad-relacin.pdf

    5/11

    PUBLICIDAD

    Tags Bases de Datos Modelo entidad-relacin

    lifeprojector.com.br

    Conserto em projetores edatashow Projetos de audio evideo.

    Artculos recomendados

    recomendado por

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

    97 cosas que todos los programadores deberan saber

    Las diez tecnologas mejor pagadas que un programador puede aprender

    Quince aplicaciones imprescindibles para llevar en tu USB(Genbeta)

    Mark Zuckerberg se reduce el salario a 1 dlar mensual(Xataka Mxico)

    Ver ms artculos

    Respuestas

    18

    1

    2

    0

    0

    Qu gestor de bases de datos

    prefieres usar y porqu?

    hace 7 meses

    Cmo se hacen los procedimientos

    almacenados que retornan varios

    registros en ORACLE?

    hace 10 meses

    Diferencias entre lenguages SQL y

    NoSQL

    hace 10 meses

    Sobre sincronizacion de bases dedatos

    hace un ao

    Powercenter

    hace 3 aos

    Ver ms respuestas

    Reglas de participacinEntra

    Publicar

    Deja un comentario

    Notificacin de comentarios por correo:

    Todos

    Slo respuestas a los mos

    Nada

    Regstrate | Entra o conctate con

    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 >

    amento de las bases de datos: Modelo entidad-relacin http://www.genbetadev.com/bases-de-datos/fundamento-de-las-ba

    1 29/04/2014 0

  • 7/22/2019 Fundamento de las bases de datos_ Modelo entidad-relacin.pdf

    6/11

    Ordenar por: Ms valorados Ms recientes Cronolgico18 comentarios

    Suscribir Abrir todos Cerrar todos

    - 1 manp

    Responder

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

    6 votos | Karma 67.50

    INTERESANTE

    Respondiendo a manp:

    - 2patxi198

    Responder

    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

    5 votos | Karma 65.00

    INTERESANTE

    Respondiendo a patxi198:

    - 18 jairiski96

    Responder

    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.

    0 votos | Karma 5.00

    Respondiendo a manp:

    - 8 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

    Regstrate | Entra o conctate con

    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 >

    amento de las bases de datos: Modelo entidad-relacin http://www.genbetadev.com/bases-de-datos/fundamento-de-las-ba

    1 29/04/2014 0

  • 7/22/2019 Fundamento de las bases de datos_ Modelo entidad-relacin.pdf

    7/11

    Responder

    que ni conocen esto (tambin es verdad que no es indispensable) pero viene bien

    conocer las bases de la BBDD relacionales.

    1 voto | Karma 23.00

    - 3Cassidy

    Responder

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

    2 votos | Karma 35.00

    INTERESANTE

    Respondiendo a Cassidy:

    - 9 Pedro Gutierrez

    http://xitrus.es

    Responder

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

    1 voto | Karma 23.00

    - 16 josuebspawn

    Responder

    6 de Noviembre de 2013 - 14:39

    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.

    1 voto | Karma 30.00

    INTERESANTE

    - 4 thebronx

    http://salvatorelab.es

    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.

    Regstrate | Entra o conctate con

    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 >

    amento de las bases de datos: Modelo entidad-relacin http://www.genbetadev.com/bases-de-datos/fundamento-de-las-ba

    1 29/04/2014 0

  • 7/22/2019 Fundamento de las bases de datos_ Modelo entidad-relacin.pdf

    8/11

    Respondiendo a thebronx:

    - 7 isola009

    Responder

    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.

    0 votos | Karma 8.00

    Respondiendo a isola009:

    - 12 Pedro Gutierrez

    http://xitrus.es

    Responder

    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.

    0 votos | Karma 13.00

    Respondiendo a thebronx:

    - 5 robertito131

    Responder

    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.

    0 votos | Karma 5.00

    - 11 marbaz

    Responder

    6 de Noviembre de 2013 - 6:21

    estis posteando vuestros apuntes de la carrera?

    jijijiji

    1 voto | Karma 20.00

    Respondiendo a marbaz:

    - 13 Pedro Gutierrez

    http://xitrus.es

    Responder

    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.

    0 votos | Karma 13.00

    Regstrate | Entra o conctate con

    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 >

    amento de las bases de datos: Modelo entidad-relacin http://www.genbetadev.com/bases-de-datos/fundamento-de-las-ba

    1 29/04/2014 0

  • 7/22/2019 Fundamento de las bases de datos_ Modelo entidad-relacin.pdf

    9/11

    - 10 manutek

    Responder

    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.

    3 votos | Karma 18.00

    - 14 Gerardo

    http://www.treeweb.es/

    Responder

    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

    0 votos | Karma 10.00

    Respondiendo a Gerardo:

    - 15 Pedro Gutierrez

    http://xitrus.es

    Responder

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

    0 votos | Karma 13.00

    - 6 jorgeregidor

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

    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

    0 votos | Karma 8.00

    - 17 adordth

    Responder

    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.

    0 votos | Karma 8.00

    Regstrate | Entra o conctate con

    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 >

    amento de las bases de datos: Modelo entidad-relacin http://www.genbetadev.com/bases-de-datos/fundamento-de-las-ba

    1 29/04/2014 0

  • 7/22/2019 Fundamento de las bases de datos_ Modelo entidad-relacin.pdf

    10/11

    Suscribir Abrir todos Cerrar todos

    Bases de datos enXojo, todo lo quenecesitas

    La nueva versin 2.6de MongoDB listapara usarse enproduccin

    MariaDB 10 sigueaportando mejoras alcdigo legacy deMySQL, soporteNoSQL y msescalable

    WebScaleSQL, elproyecto libre deFacebook, Twitter,Google y Linkedinpara hacer MySQLms escalable

    Pop, el motor deanimaciones dePaper, liberado porFacebook

    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

    PUBLICIDAD

    Ms en Genbeta Dev

    TECNOLOGA

    Xataka Xataka Mvil Xataka Foto Xataka Android Xataka On

    Regstrate | Entra o conctate con

    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 >

    amento de las bases de datos: Modelo entidad-relacin http://www.genbetadev.com/bases-de-datos/fundamento-de-las-ba

    11 29/04/2014 0

  • 7/22/2019 Fundamento de las bases de datos_ Modelo entidad-relacin.pdf

    11/11