Modelo Relacional
Enviado por apuas • 29 de Agosto de 2012 • 2.145 Palabras (9 Páginas) • 734 Visitas
Modelo relacional
El objetivo del modelo relacional es crear un "esquema" (schema), lo cual como se mencionará posteriormente consiste de un conjunto de tablas que representan relaciones, relaciones entre los datos.
Estas tablas, pueden ser construidas de diversas maneras:
• Creando un conjunto de tablas iniciales y aplicar operaciones de normalización hasta conseguir el esquema más óptimo.
• Convertir el diagrama e-r a tablas y posteriormente aplicar también operaciones de normalización hasta conseguir el esquema óptimo.
La primera técnica fue de las primeras en existir y, como es de suponerse, la segunda al ser más reciente es mucho más conveniente en varios aspectos:
• El partir de un diagrama visual es muy útil para apreciar los detalles, de ahí que se llame modelo conceptual.
• El crear las tablas iniciales es mucho más simple a través de las reglas de conversión.
• Se podría pensar que es lo mismo porque finalmente hay que normalizar las tablas de todas formas, pero la ventaja de partir del modelo e-r es que la normalización es mínima por lo general.
• Lo anterior tiene otra ventaja, aún cuando se normalice de manera deficiente, se garantiza un esquema aceptable, en la primera técnica no es así.
Tablas
El modelo relacional proporciona un manera simple de representar los datos: una tabla bidimensional llamada relación.
título año duración tipo
Star Wars 1977 124 color
Mighty Ducks 1991 104 color
Wayne's World 1992 95 color
Relación Películas
La relación Películas tiene la intención de manejar la información de las instancias en la entidad Películas, cada renglón corresponde a una entidad película y cada columna corresponde a uno de los atributos de la entidad.
Atributos
Los atributos son las columnas de un relación y describen características particulares de ella.
Esquemas
Es el nombre que se le da a una relación y el conjunto de atributos en ella.
Películas (título, año, duración, tipo)
En un modelo relación, un diseño consiste de uno o más esquemas, a este conjunto se le conoce como esquema relacional de base de datos (relational database schema) o simplemente esquema de base de datos (database schema)
Tuplas
Cada uno de los renglones en una relación conteniendo valores para cada uno de los atributos.
(Star Wars, 1977, 124, color)
Dominios
Se debe considerar que cada atributo (columna) debe ser atómico, es decir, que no sea divisible, no se puede pensar en un atributo como un registro o estructura de datos.
Representaciones equivalentes de una relación
Las relaciones son un conjunto de tuplas, no una lista de tuplas. El orden en que aparecen las tuplas es irrelevante.
Así mismo el orden de los atributos tampoco es relevante
año título tipo duración
1991 Mighty Ducks color 104
1992 Wayne's World color 95
1977 Star Wars color 124
Conversión a tablas desde un modelo con relaciones (1-1,1-m,m-m)
modelo e-r conversión a tablas
• una tabla por cada conjunto de entidades
o nombre de tabla = nombre de conjunto de entidades
• una tabla por cada conjunto de relaciones m-m
o nombre de tabla = nombre de conjunto de relaciones
• definición de columnas para cada tabla
o conjuntos fuertes de entidades
columnas = nombre de atributos
o conjuntos débiles de entidades
columnas = llave_primaria (dominante) U atributos(subordinado)
o conjunto de relaciones R (m-m) entre A, B
columnas (R) = llave_primaria (A) U llave_primaria (B) U atributos(R)
o conjunto de relaciones R (1-1) entre A y B
columnas (A) = atribs(A) U llave primaria(B) U atributos(R)
o conjunto de relaciones R (1-m) entre A y B
columnas (B) = atribs(B) U llave primaria(A) U atributos(R)
El diagrama anterior se convertiría al siguiente esquema:
Debil
atribs_Debil LLP_A atribs_rel_0
A
LLP_A atribs_A
B1
LLP_B1 atribs_B1
B2
LLP_B2 atribs_B2 LLP_A attribs_rel_2
B3
LLP_B3 atribs_B3 LLP_A atribs_rel_3
A_B1
LLP_A LLP_B1 atribs_rel_1
donde:
LLP_X es la llave primaria de la entidad X (un subconjunto de atribs_X)
escuela
id url nombre
departamento
clave url nombre id_escuela
curso
clave seccion nombre clave_depto
...