Sunteți pe pagina 1din 14

2.

3 Modelo relacional De acuerdo a [ Korth/Silberschatz ] El modelo relacional se ha establecido como el primer modelo de datos para las aplicaciones de procesamiento de datos. Los primeros sistemas de bases de datos se basaban en el modelo de red o en el modelo jerrquico. Estos dos modelos antiguos se hallan mas ligados a la implementacin subyacente de la base de datos que el modelo relacional. El modelo relacional se utiliza ahora en numerosas aplicaciones fuera del dominio de procesamiento de datos tradicional.

Segn [Elmasri/Navathe] El modelo relacional de los datos fue introducido por Codd (1970). Se basa en una estructura de datos simples y uniforme la relacin y tiene fundamentos tericos slidos. Este modelo se esta estableciendo firmemente en el mundo de las aplicaciones de bases de datos.

Segn [Kroenke ] Este modelo fue introducido por Codd en 1970. Es una forma particular de estructurar y procesar una base de datos. La ventaja del modelo relacional es que los datos se almacenan, al menos conceptualmente, de un modo que los usuarios entienden con mayor facilidad. Los datos se almacenan como tablas y las relaciones entre las filas y las tablas son visibles en los datos. Adems permite a los usuarios obtener informacin de las bases de datos sin asistencia de sistemas profesionales de adminis tracin de informacin.

Resumen: El modelo relacional de los datos fue introducido por Codd (1970). Se basa en una estructura de datos simples y uniforme la relacin y tiene fundamentos tericos slidos. Es una forma particular de estructurar y procesar una base de datos.

El modelo relacional se ha establecido como el primer modelo de datos para las aplicaciones de procesamiento de datos. Los primeros sistemas de bases de datos se basaban en el modelo de red o en el modelo jerrquico. Estos dos modelos antiguos se hallan mas ligados a la implementacin subyacente de la base de datos que el modelo relacional .El modelo relacional se utiliza ahora en numerosas aplicaciones fuera del dominio de procesamiento de datos tradicional. La ventaja del modelo relacional es que los dat os se almacenan, al menos conceptualmente, de un modo que los usuarios entienden con mayor facilidad. Los datos se almacenan como tablas y las relaciones entre las filas y las tablas son visibles en los datos. Adems permite a los usuarios obtener informacin de las bases de datos sin asistencia de sistemas profesionales de administracin de informacin.

2.1.3.1 ESTRUCTURA DEL MODELO RELACIONAL De acuerdo a [ Korth/Silberschatz ] Una base de datos relacional consiste en un conjunto de tabla, a cada una de las cuales se les asigna un nombre exclusivo. Cada fila de la tabla representa una relacin entre un conjunto de valores. Dado que cada tabla es un conjunto de dichas relaciones, hay una fuerte correspondencia entre el concepto de tabla y el concepto ma temtico de relacin

Segn [Elmasri/Navathe] El modelo relacional representa la base de datos como una coleccin de relaciones. En trminos informales, cada relacin semeja una tabla, o hasta cierto punto, un archivo simple. Si se visualiza una relacin como una tabla de valores, cada fila de la tabla representa una coleccin de valores de datos relacionados entre s. Dichos valores se pueden interpretar como hechos que describen una entidad o un vnculo entre entidades del mundo real. El nombre de la tabla y los nombres de las columnas ayudan a interpretar el significado de los valores que estn en cada fila de la tabla. En la terminologa del modelo relacional, una fila se denomina tupla, una cabecera de columna es el atributo y la tabla es una relacin. El tipo de datos que puede aparecer en cada columna se llama dominio.

Segn la pagina electrnica http://usuarios.lycos.es/cursosgbd/UD3.htm La relacin es el elemento bsico en el modelo relacional y se puede representar como una tabla:

En ella podemos distinguir un conjunto de columnas, denominadas atributos, que representan propiedades de la misma y que estn caracterizadas por un nombre; y un conjunto de filas llamadas tuplas que son las ocurrencias de la relacin. Existen tambin unos dominios donde los atributos toman sus valores. El nmero de filas de una relacin se denomina cardinalidad de la relacin y el nmero de columnas es el grado de la relacin.

Una relacin se puede representar en forma de tabla, pero va a tener una serie de elementos caractersticos:

No puede haber filas duplicadas, es decir, todas las tuplas tienen que ser distintas. El orden de las filas es irrelevante. La tabla es plana, es decir, en el cruce de una fila y una columna slo puede haber un valor (no se admiten atributos multivaluados).

Dominio y Atributo Un dominio D es un conjunto finito de valores homogneos y atmicos caracterizados por un nombre; decimos homogneos porque son todos del mismo tipo y atmicos porque son indivisibles. Todo dominio ha de tener un nombre por el cual nos podamos referir a l y un tipo de datos; as el tipo de datos del dominio "nacionalidades" es una tira de caracteres de longitud 10. El dominio "nacionalidades" tiene valores : Espaa, Francia,... Si descompusiramos Espaa en E,s,p,... perdera la semntica. Ejemplos de dominios seran:

Colores: Es el conjunto de los colores D={rojo, verde, azul,} Nmeros de DNI: Es conjunto de nmeros del DNI vlidos, formados por ocho dgitos. Edad: Edades posibles de los empleados entre 18 y 80 aos.

Un atributo es el papel que tiene un determinado dominio en una relacin. Es muy usual dar el mismo nombre al atributo y al dominio. En el caso de que sean varios los atributos de una misma tabla definidos sobre el mismo dominio, habr que darles nombres distintos, ya que una tabla no puede tener dos atributos con el mismo nombre. Por ejemplo los atributos edad_fsica y edad_mental pueden estar definidos sobre el mismo dominio edad; o los atributos precio_compra y precio_venta pueden estar definidos sobre el mismo dominio de enteros de longitud 5. Adems de los dominios y atributos simples que acabamos de definir, en los ltimos trabajos de algunos autores [Codd (1990), Date (1990)] se introduce el concepto de dominio compuesto. Un dominio compuesto se puede definir como una combinacin de dominios simples que tiene un nombre y a la que se pueden aplicar ciertas restricciones de integridad. Por ejemplo, un usuario puede necesitar manejar, adems de los tres dominios Da, Mes y Ao, un dominio compuesto denominado Fecha que sera la combinacin de los tres primeros, y al que podramos aplicar las adecuadas restricciones de integridad a fin de que no aparecieran valores no vlidos para la fecha; algo anlogo ocurre Con el nombre y los

apellidos, que, segn las aplicaciones, puede ser conveniente tratarlos en conjunto o por separado. De la misma forma, es posible definir un atributo compuesto Fecha que tomara sus valores del dominio compuesto de igual nombre.

2.1.3.2 DEFINICIN DE Relacin Matemticamente, una relacin se puede definir como un subconjunto del producto cartesiano de una lista de dominios, donde cada elemento de la relacin, tupla, es una serie de n valores ordenados. En esta definicin matemtica de relacin, que es la que aparece en los primeros trabajos de Codd, no se alude a los atributos, es decir, al papel que tienen los dominios en la relacin y, adems, en ella el orden de los valores dentro o de una tupla es significativo. A fin de evitar estos inconvenientes, se puede dar otra definicin de relacin ms adecuada al punto de vista de las bases de datos, para lo cual es preciso distinguir, dos conceptos en la nocin de relacin:

Intensin o Esquema de relacin, denotado R (Al:D1, A2:D2, ..., An:Dn) es un conjunto de n pares atributo-dominio subyacente (Ai:Di). La intensin es la parte definitoria y esttica de la relacin, que se corresponde con la cabecera cuando la relacin se percibe como una tabla. Extensin u ocurrencia (instancia) de relacin (llamada a veces simplemente relacin), denotada por r(R) es un conjunto de m tuplas {t1, t2, ... tm} donde cada tupla es un conjunto de n pares atributo-valor.

Ejemplo: Intensin de una relacin: AUTOR (NOMBRE:Nombres, INSTITUCION: Instituciones) Extensin de una relacin: NACIONALIDAD:Nacionalidades,

Claves Una clave candidata de una relacin es un conjunto no vaco de atributos que identifican unvoca y mnimamente cada tupla. Por la propia definicin de relacin, siempre hay al menos una clave candidata, ya que al ser la relacin un conjunto no existen tuplas repetidas y por tanto, el conjunto de todos los atributos identificar unvocamente a las tuplas. Una relacin puede t ener ms de una clave candidata, entre las cuales se debe distinguir:

Clave primaria : es aquella clave candidata que el usuario escoger, por consideraciones ajenas al modelo relacional, para identificar a las tuplas de una relacin. Clave alternativa : son aquellas claves candidatas que no han sido elegidas.

Se denomina clave ajena de una relacin R2 a un conjunto no vaco de atributos cuyos valores han de coincidir con los valores de la clave primaria de otra relacin R1. La clave ajena y la correspondiente clave primaria han de estar definidas sobre los mismos dominios.

Resumen: El modelo relacional representa la base de datos como una coleccin de relaciones. En trminos informales, cada relacin semeja una tabla , a cada una de las cuales se les asigna un nombre exclusivo. Cada fila de la tabla representa una relacin entre un conjunto de valores. Si se visualiza una relacin como una tabla de valores, cada fila de la tabla representa una coleccin de valores de datos relacionados entre s. Dichos valores se pueden interpretar como hechos que describen una entidad o un vnculo entre entidades del mundo real. El nombre de la tabla y los nombres de las columnas ayudan a interpretar el significado de los valores que estn en cada fila de la tabla. En la terminologa del modelo relacional, una fila se denomina tupla, una cabecera de columna es el atributo y la tabla es una relacin. El tipo de datos que puede aparecer en cada columna se llama dominio.

2.1.3.3 ESTRUCTURA BSICA

De acuerdo a [ Korth/Silberschatz ] Considere la siguiente tabla: Tiene cuatro atributos que son las cabeceras de columna: nombre sucursal, numero-cuenta, nombre-cliente y saldo. Siguiendo la terminologa del modelo relacional, se hace referencia a estas cabeceras como atributos. Para cada estructura hay un conjunto de valores permitidos denominado dominio de ese atributo. Todas las filas de cuenta deben consistir en una tupla. Se exigir que para todas las relaciones r los dominios de todos los atributos de r sean atmicos. Un dominio es atmico si los elementos el dominio se consideran unidades indivisibles. Lo importante no es lo que sea el propio dominio, sino la manera en la que se utilizan los elementos del dominio en la base de dato. Es posible que varios atributos tengan el mismo dominio. Un valor de dominio que es miembro de todos los dominios posibles es el valor nulo, que indica que el valor es desconocido o no existe. Los valores nulos crean algunas dificultades cuando se tiene acceso a la base de datos o cuando se actualiza, y que por tanto deben eliminarse si es posible.

La siguiente tabla muestra la diferencia de representacin con respecto a diagramas E-R y el modelo relacional.

Segn [Elmasri/Navathe] Un dominio es un conjunto de valores atmicos. Por atmico queremos decir que cada valor en el dominio es indivisible en lo tocante al modelo relacional. Un mtodo de especificacin de los dominios consiste en especificar un tipo de datos al cual pertenecen los valores que constituyen el dominio. Tambi n resulta til especificar un nombre de dominio que ayude a interpretar sus valores. Tambin debe especificar un tipo de dato o formato para cada dominio. As pues, un dominio debe tener un nombre, un tipo de datos y un formato. Tambin puede incluirse informacin adicional para interpretar los valores de un dominio. Un esquema de relacin, describe la estructura de una relacin. Se compone de un nombre de relacin, R, y una lista de atributos. Cada atributo es el nombre de un papel desempeado por algn dominio. El grado de una relacin es el nmero de atributos de su esquema de relacin. Una relacin ( o ejemplar de relacin ) del esquema de relacin, es un conjunto de n-tuplas, Cada n-tuplas es una lista ordenada de n valores, donde cada valor, es un elemento de dominio, o bin un valor nulo especial. Tambin se acostumbra usar los trminos intensin de una relacin para el esquema y extensin (o estado ) de una relacin para un ejemplar de la relacin.

Resumen: Un dominio es un conjunto de valores atmicos, queremos decir que cada valor en el dominio es indivisible. Un dominio debe tener un nombre, un tipo de datos y un formato. Tambin puede incluirse informacin adicional para interpretar los valores de un dominio. Un esquema de relacin, describe la estructura de una relacin. Se compone de un nombre de relacin, R, y una lista de atributos. Cada atributo es el nombre de un papel desempeado por algn dominio. El grado de una relacin es el nmero de atributos de su esquema de relacin. Una relacin ( o ejemplar de relacin ) del esquema de relacin, es un conjunto de n-tuplas, Cada n-tuplas es una lista ordenada de n valores, donde cada valor, es un elemento de dominio, o bien un valor nulo especial. Tambin se acostumbra usar los trminos intensin de una relacin para el esquema y extensin (o estado ) de una relacin para un ejemplar de la relacin.

ESQUEMA DE LA BASE DE DATOS De acuerdo a [ Korth/Silberschatz ] Cuando se habla de bases de datos se debe diferenciar entre el esquema de la base de datos, o diseo lgico de la misma, y el ejemplar de la base de datos, que es una instancia de los datos de la misma en un momento dado. El concepto de relacin se corresponde con el concepto de variable de los lenguajes de programacin. El concepto de esquema de relacin se corresponde con el concepto de definicin de los tipos de los lenguajes de programacin. El concepto de ejemplar de relacin se corresponde con el concepto de valor de una variable en los lenguajes de programacin. El valor de una variable dada puede cambiar con el tiempo de manera parecida, el contenido del ejemplar de una relacin puede cambiar con el tiempo cuando una relacin se actualiza. Los esquemas de las relaciones incluyen una lista de los atributos y de sus dominios correspondientes.

Es conveniente dar un nombre a un esquema de una relacin, as como damos nombres a las definiciones de tipo en los lenguajes de programacin. As: Esquema-depsito (nombre _ sucursal, nmero _ cuenta, nombre _ cliente, saldo) Deposito es una relacin sobre el esquema depsito por: Depsito (esquema-depsito) El esquema de una relacin es una lista de atributos y sus correspondientes dominios: (nombre _ sucursal: cadena, numer nombre _ cliente: cadena, saldo: entero) _ cuenta: entero,

El uso de atributos comunes en esquemas de relacin es una forma de relacionar tuplas de distintas relaciones.

2.3. Casos prcticos Ejercicio 1: Consideremos una base de datos de barcos de guerra donde cada uno de ellos cuenta con la siguiente informacin. Su Su desplazamiento (peso) en Su tipo; por ejemplo, buque de combate, destructor. Nombre toneladas

Adems tenemos los siguientes tipos especiales de barco que contienen alguna otra informacin: Gunships (caoneros) , son barcos que transportan armas grandes, como los buques de combate o los cruceros. En estos queremos registrar el nmero calibre de las grandes armas. Carriers (portaaviones) son barcos que transportan aviones. En ellos queremos registrar la longitud de la pista de aterrizaje y el conjunto de grupos de vuelos que les estn asignados. Submarines (submarinos) , que pueden desplazarse por debajo del agua. En ellos queremos registrar la profundidad mxima segura. Puede usted suponer que ni los buques de guerra ni los portaaviones son submarinos.

Battlecarries (portaviones de combate) son caoneros y portaaviones al mismo tiempo y cuentan con toda la informacin relacionada con ambos tipos de barcos Realice los siguientes puntos:

Obtenga el diseo E/R de estos conjuntos de entidades. Defina cada una de las tablas que genera el diseo anterior estableciendo de manera clara las claves primarias y ajenas de cada una de ellas. Muestre como se representara al portaaviones de combate ISE. Tena un desplazamiento de 36,000 toneladas, estaba equipado con 8 caones de 14 pulgadas , tenia una pista de aterrizaje de 200 pies y transportaba los grupos de vuelo 1 y 2 .

Ejercicio 2 Disear un diagrama Entidad Relacin que permite llevar el control de obras, escritores, artistas y programacin de obras en diferentes teatros.

Tome en cuenta las siguientes restricciones:


Una obra fue escrita por uno o ms escritores y un escritor realiz una o ms obras. Un artista puede colaborar en 0 (cero) o mas obras programadas y una obra programada puede ser interpretada por uno o mas artistas. Una obra puede ser programada una o mas veces en el mismo teatro y en diferentes teatros y en un teatro pueden estar programadas una o mas obras en diferentes fechas.

Nota: Una vez terminado el diseo E-R, tradzcalo a tablas

Ejercicio 3: Trace un diseo en el modelo E/R para una base de datos que registre la informacin relativa a equipos, jugadores y sus aficionados y que incluya: 1. Para cada equipo: su nombre, sus jugadores, el nombre de su capitn (uno de los jugadores) y los colores de su uniforme. 2. Para cada jugador: su nombre, los equipos en los que ha jugado, incluyendo la fecha en que fue contratado y en la que dejo de pertenecer al equipo. 3. Para cada aficionado: su nombre, los equipos favoritos, los jugadores favoritos y el color favorito. Una vez obtenido el diagrama E/R construya las tablas de datos resultantes indicando las claves principales y ajenas del diseo .

Ejercicio 4: Construyase un diagrama Entidad Relacion para una Compaa de Discos (SONY MUSIC) que desea llevar el control de todos los Cantantes asociados a ella, as como los Discos de cada uno de ellos. Dentro de las peticiones que desea la compaa estan las siguientes: Dado el ttulos de una cancin, desplegar sus interpretes Dado un interprete, desplegar todos los discos de el. Dado el titulo de una cancin, desplegar el nombre del autor y la fecha en que fue escrita.

Dado el nombre de un cantante, despliegue el nmero de discos que tiene.

Ejercicio 5: Dadas las siguientes tablas, construya los MODELOS ENTIDAD RELACION Alumnos = (No_Ctrl. Nombre, Especialidad, Sexo, Semestre) Maestros = (No_Tarjeta, Nombre, Profesin, Grado_Estudios) Materias = (Clave_Mat, Nombre, Horas_ Tericas, Horas_Practicas, No_Crditos, Clave_Saln) Curso = (No_Ctrl, Clave_Mat, Calificacin) Imparte = (No_Tarjeta, Clave_Mat, Periodo) Saln = (Clave_Saln, Ubicacin, Capacidad) Empleado = (nombre, nss_empleado, fecha_nacimiento, sexo, salario, nss_supervisor, #_dpto) Departamento = (nombre, #_dpto, nss_gerente, fecha_inicio_gerente) Lugares_dpto = (#_dpto, lugar) Proyecto = (nombre, #_proy, lugar, #_dpto) Trabaja_en = (nss_empleado, #_proy, horas) Dependiente = (nss_empleado, nombre_dependiente, sexo, fecha_nacimiento, parentesco)

PREGUNTAS 1.- Explique la clasificacin de los atributos 2.- Explique qu es una relacin recursiva y d dos ejemplos reales donde se puedan utilizar. 3.- Una ENTIDAD puede ser concreta o abstracta. Mencione 3 ejemplos (con sus atributos) de cada una de ellas. 4.- Defina que es un DOMINIO y mencione 5 ejemplos de ellos 5.- Explique la CLASIFICACION DE LOS ATRIBUTOS 6.- Qu es una RELACION?, explique claramente los TIPOS que existen y mencione 2 ejemplos para cada uno de ellos 7.- Qu es una RELACION RECURSIVA y d un ejemplo?

8.- Una RELACION puede tener ATRIBUTOS DESCRIPTIVOS. Mencione 2 ejemplos de relaciones reales que tengan al menos algn atributo descriptivo. 9.- Mencione la SIMBOLOGIA utilizada en el modelo Entidad Relacion y d 3 ejemplos para cada uno de ellos: 10.- Qu es la HERENCIA de atributos y cuando se utiliza esta?

S-ar putea să vă placă și