Modelo relacional - script
From Ibbddunq
Contents |
Contexto
Es la tercer clase. En la primera se ve la introducción, en la segunda MER. Si quedó algo por ver de MER, se roba un cachito de la práctica del lunes siguiente.
Como ejemplo para apoyarnos al dar MER vemos el ejemplo del circo, y nos paramos en este ejemplo también para ir contando modelo relacional. Sería bueno arrancar la clase con el dibujo del MER en el pizarrón, al menos la parte que vamos a traducir.
En una clase debería entrar la descripción del modelo relacional, si quedó algo por decir se le puede robar un ratito a la siguiente clase, que es la primera de dos de álgebra relacional.
Ejemplo del circo
Tenemos estas tablas
artista <fnac, nombreReal, nombreArt, cachet, % fnac: fecha de nacimiento viveEn_patente, % relación viveEn 1-N con trailer art_numero, art_nombreArt, art_fechaInscripcion, art_valorCuota, % atributo compuesto inscripción ART maestro_fnac, maestro_nombreArt % relación esElMaestro 0..3 (maestro) - 1 (alumno) % (o sea, cada maestro hasta 3 alumnos, cada % alumno un maestro) artista con artista > clave fnac + nombreArt
acto <nombre, gradoPeligrosidad> clave nombre
puedeParticipar <artista_fnac, artista_nombreArt, acto_nombre> es una relación N-M entre artista y acto clave: los tres
Desarrollo
puntapié inicial
vamos a ver un nuevo modelo de datos, que es distinto al anterior. Como dijimos al principio (de verdad lo dije la 1er clase) es un modelo lógico, que va a servirnos para poder implementarlo en un DBMS.
tabla
En este modelo hay un solo concepto central, el de relación o tabla. Para complicarnos la vida, en este modelo hay un concepto llamado "relación", en el MER también, y no son lo mismo.
En el MER partimos de los conceptos separados de entidad y relación, acá tenemos uno solo, relación o tabla. Una BD es un conjunto de relaciones, en detalle
- un esquema de BD va a ser un conjunto de esquemas de relación.
- una instancia de BD va a ser un conjunto de instancias de relación.
P.ej. en el MER tengo la entidad Artista, acá vamos a tener la tabla artista.
Una relación es
- a nivel esquema, un conjunto de atributos, cada uno con su dominio. Definimos el esquema de la relación artista, con solamente fecha de nacimiento, nombre real, nombre artístico, cachet, aclaramos que después le vamos agregando el resto.
- a nivel instancia, una instancia de relación va a tener toda la información que uno quiere representar en la relación; en el ejemplo, una instancia de artista va a contener toda la información acerca de los artistas en una instancia de BD.
En una misma instancia va a haber info de distintos artistas ... Anotamos un par de filas de artista.
Una misma instancia de relación va a tener lo que vamos a llamar muchas filas o tuplas, cada fila/tupla va a tener un valor para cada atributo.
Lo vemos sobre el ejemplo.
primer comparación entre los dos modelos
lo que modelábamos por separado como entidades o relaciones en el MER, acá lo vamos a modelar siempre como relaciones, de estas relaciones (que son otra cosa que lo que se llama "relación" en el MER).
Lo que es una entidad en el MER se traduce como una, o varias, relaciones del MR.
Lo que es una relación en el MER se traduce como una o varias relaciones, y/o atributos adicionales en alguna de las entidades relacionadas.