Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
BASES DE DATOS El Modelo Relacional Profesora: Painé Pintos Tecnicatura en Desarrollo de Software. COMENZAR INDICE • DEFINICIÓN • OBJETIVOS • ESTRUCTURA BÁSICA • CONCEPTOS PRINCIPALES • DEFINICION FORMAL • PROPIEDADES • TIPOS DE RELACIONES • CLAVES: TIPOS TIPOS; CLAVE FORÁNEA • RESTRICCIONES • PASO DEL DER AL MODELO RELACIONAL ■ RELACIONES: UNO A UNO UNO A UNO, MUCHOS A MUCHOS UNO A UNO, MUCHOS A MUCHOS, DE ORDEN N UNO A UNO, MUCHOS A MUCHOS, DE ORDEN N, UNO A VARIOS UNO A UNO, MUCHOS A MUCHOS, DE ORDEN N, UNO A VARIOS, DE 0 A VARIOS UNO A UNO, MUCHOS A MUCHOS, DE ORDEN N, UNO A VARIOS, DE 0 A VARIOS, R. RECURSIVAS. ■ ENTIDADES DÉBILES ENTIDADES DÉBILES – RELACIONES ISA ■ ATRIBUTOS COMPUESTOS ATRIBUTOS COMPUESTOS – ATRIBUTOS MULTIVALUADOS. • EJEMPLO 1 EJEMPLO 1 – EJEMPLO 2 S http://slide3.xml http://slide4.xml http://slide5.xml http://slide6.xml http://slide.xml http://slide8.xml http://slide.xml http://slide.xml http://slide.xml http://slide.xml http://slide.xml http://slide.xml http://slide.xml http://slide.xml http://slide.xml http://slide.xml http://slide.xml http://slide.xml http://slide.xml http://slide.xml http://slide.xml http://slide25.xml http://slide26.xml DEFINICIÓN VOLVER Modelo Lógico en el que los datos se agrupan en relaciones (actualmente llamadas tablas) Las tablas se refieren a la estructura que aglutina datos referidos a una misma entidad de forma independiente respecto a su almacenamiento físico. OBJETIVOS INDEPEND ENCIA FÍSICA La forma de almacenar los datos, no debe influir en su manipulación lógica. INDEPEND ENCIA LÓGICA Las aplicaciones que utilizan la base de datos no deben ser modificadas porque se modifiquen elementos de la base de datos. FLEXIBILI DAD La base de datos ofrece fácilmente distintas vistas, dependiendo del usuario UNIFORM IDAD Las estructuras lógicas siempre:las tablas. VOLVER ESTRUCTURA BÁSICA Las relaciones o tablas constan de: Tupla = Registro; atributo = campo; •Cada tupla se debe corresponder con un elemento del mundo real. • No puede haber dos tuplas iguales (con todos los valores iguales). VOLVER CONCEPTOS PRINCIPALES un conjunto finito de valores del mismo tipo. ATRIBUTO S Intensión. Se indica la definición exacta de sus posibles valores. p.ej: dominio de EDAD = entre 1 y 99 Extensión. Se indican algunos valores y se sobreentiende el resto. p.ej: dominio PROVINCIA = córdoba, buenos aires… tamaño de una relación en base al número de columnas (atributos) Número de tuplas de una relación DOMI NIO GRAD O CARDINA LIDAD VOLVER DEFINICIÓN FORMAL DE RELACIÓN Una relación está formada por estos elementos: ♦ Nombre. Identifica la relación. ♦ Cabecera de relación. Conjunto de todos los pares atributo-domino de la relación: ♦ Cuerpo de la relación. Representa el conjunto de m tuplas {t1, t2,... tn} que forman la relación. Cada tupla es un conjunto de n pares atributo-valor , donde Vij es el valor j del dominio Di asociado al atributo Ai. ♦ Esquema de la relación. Se forma con el nombre R y la cabecera. ♦ Estado de la relación. Lo forman el esquema y el cuerpo. CUERPO CABECERA NOMBRE VOLVER PROPIEDADES DE LAS RELACIONES TABLA NOMBRE DISTINTO ATRIBUTO:UN SOLO VALOR PARA CADA TUPLA ATRIBUTO: NOMBRE DISTINTO EN CADA TABLA TUPLA ÚNICA (no hay tuplas duplicadas) NO IMPORTA ORDEN DE ATRIBUTOS O TUPLAS VOLVER TIPOS DE RELACIONES PERSISTENTES: (borradas por el usuario) BASES VISTAS INSTANTÁNEAS Independient es, se crean indicando su estructura y sus ejemplares. Tablas que sólo almacenan una definición de consultas (que produce otras tablas o consultas) Cambian al cambiar datos de tablas de origen Tablas que almacenan el resultado de consultas Necesitan “refresco” para actualizarse TEMPORALES Tablas que se eliminan automáticamen te por el sistema. Se utilizan como almac. intermedio de datos (por ej. resultado de consulta) VOLVER CLAVES - TIPOS CLAVE CANDIDATA. Conjunto de atributos que identifican unívocamente cada tupla de la relación. Toda tabla debe tener al menos una. CLAVE PRIMARIA. Clave candidata que se escoge como identificador de las tuplas. Se elige como primaria la candidata que identifique mejor a cada tupla. CLAVE ALTERNATIVA. Cualquier clave candidata que no sea primaria. VOLVER CLAVES - TIPOS CLAVE AJENA / FORÁNEA/ SECUNDARIA Son los datos de atributos de una tabla cuyos valores están relacionados con atributos de otra tabla. VOLVER RESTRICCIONES Se trata condiciones de obligado cumplimiento por las tuplas de la base de datos. Las hay de varios tipos. INHERENTES SEMÁNTICAS no son determinadas por los usuarios, sino por el hecho de que la base de datos sea relacional. ♦ No puede haber dos tuplas iguales ♦ El orden de las tuplas no es significativo ♦ El orden de los atributos no es significativo ♦ Cada atributo sólo puede tomar un valor en el dominio en el que está inscrito clave principal (primary key): la determina el usuario. no puede repetir valores y debe haber una por tabla. unicidad (unique):se añade a aquellos atributos que deben tener valor único (por ej. claves candidatas) obligatoriedad (not null) integridad referencial (foreign key) Restricciones a los datos incorporadas por el usuario. VOLVER INTEGRIDAD REFERENCIAL Sirve para indicar una clave externa sobre uno o más atributos. Los atributos marcados de esta forma sólo podrán contener valores que estén relacionados con la clave principal de la tabla que relacionan (llamada tabla principal). Dichos atributos sí podrán contener valores nulos. Cada valor de la clave secundaria deberá tener un valor definido en la tabla con la que se relaciona. Clave ajena Clave principal No action Cascade Set Null Default ¿qué ocurre si se borra un registro de la tabla cliente? VOLVER PASO DEL DER AL M. RELACIONAL En principio las entidades fuertes del modelo Entidad Relación son transformados al modelo relacional siguiendo estas instrucciones: ♦ Entidades. Las entidades pasan a ser TABLAS ♦ Atributos. Los atributos pasan a ser COLUMNAS O ATRIBUTOS de la tabla. ♦ Identificadores principales. Pasan a ser CLAVES PRIMARIAS ♦ Identificadores candidatos. Pasan a ser CLAVES CANDIDATAS. RELACIÓN VARIOS A VARIOS RELACIÓN DE ORDEN N RELACIÓN UNO A VARIOS RELACIÓN UNO A UNO RELACIÓN 0 A 1 RELACIÓN RECURSIV AS ENTIDADES DÉBILES RELACIONES ISA ATRIBUTOS COMPUESTOS ATRIBUTOS MULTIVALUADOS VOLVER RELACIONES VARIOS A VARIOS VOLVER la relación se transforma en una tabla cuyos atributos son: los atributos de la relación y las claves de las entidades relacionadas (que pasarán a ser claves externas). La clave de esta tabla está formada por ambas claves externas. VOLVER INDICE RELACIONES DE ORDEN N VOLVER Las relaciones ternarias, cuaternarias y n-arias que unen más de dos relaciones se transforman en una tabla que contiene los atributos de la relación más los identificadores de las entidades relacionadas. La clave la forman todas las claves externas VOLVER INDICE RELACIONES DE UNO A VARIOS VOLVER No requieren ser transformadas en una tabla. En su lugar la tabla del lado varios (tabla relacionada) incluye como clave externa el identificador de la entidad del lado uno (tabla principal). VOLVER INDICE RELACIONES DE UNO A UNO VOLVER Hay dos posibilidades: ♦ Colocar la clave de una de las entidades como clave externa de la otra tabla (da igual cual), teniendo en cuenta que dicha clave será clave alternativa además de ser clave secundaria. ♦ Generar una única tabla con todos los atributos de ambas entidades colocando como clave principal cualquiera de las claves de las dos entidades. La otra clave será marcada como clave alternativa. El nombre de la tabla sería el de la entidad más importante desde el punto de vista conceptual. VOLVER INDICE RELACIONES DE 0 A UNO VOLVER Se trata de relaciones entre dos entidadescon cardinalidad máxima de 1 en ambas direcciones, pero en una de ellas la cardinalidad mínima es 0. La solución sería generar dos tablas, una para cada entidad. En la tabla con cardinalidad 0, se coloca como clave secundaria, la clave principal de la otra (dicha clave sería clave alternativa de esa tabla) VOLVER INDICE RELACIONES RECURSIVAS VOLVER Las relaciones recursivas se tratan de la misma forma que las otras, sólo que un mismo atributo puede figurar dos veces en una tabla como resultado de la transformación (por eso es interesante indicar el rol en el nombre del atributo. VOLVER INDICE ENTIDADES DÉBILES VOLVER Toda entidad débil incorpora una relación implícita con una entidad fuerte. Esta relación no necesita incorporarse como tabla en el modelo relacional (al tratarse de una relación n a 1), bastará con añadir como atributo y clave foránea en la entidad débil, el identificador de la entidad fuerte. En ocasiones el identificador de la entidad débil tiene como parte de su identificador al identificador de la entidad fuerte En esos casos no hace falta añadir de nuevo como clave externa el identificador de la entidad fuerte VOLVER INDICE RELACIONES ISA VOLVER •Tanto las superentidades como las subentidades generarán tablas en el modelo relacional. •Los atributos se colocan en la tabla a la que se refiere a la entidad correspondiente. •En el caso de que las subentidades no hereden el identificador con la superentidad, se colocará en las subentidades el identificador de la superentidad como clave secundaria. VOLVER INDICE ATRIBUTOS COMPUESTOS VOLVER Los atributos compuestos, pueden transformarse de dos formas: •Se agrega un solo atributo que tenga un dominio (tipo) que sirva para todos los sub atributos; •Deben crearse varios atributos según corresponda (y cada uno con su dominio particular). Esta decisión se toma en este nivel, pero no deben de mantenerse de forma compuesta. Dicho de otra manera, o se crea un único atributo, o bien, se descompone el atributo compuesto como varios atributos simples, según la necesidad. VOLVER INDICE ATRIBUTOS MULTIVALORADOS VOLVER Se ha visto que los atributos en un diagrama E-R generalmente se asocian directamente en columnas para las tablas apropiadas. Los atributos multivalorados, sin embargo, son una excepción; para estos atributos se crean tablas nuevas. El diagrama incluye el atributo multivalorado Telefonos. Para este atributo multivalorado se crea una tabla TELEFONOS_CLIENTES con columna TELEFONO, referenciando al atributo telefonos de la entidad CLIENTE, y DNI, representando la clave primaria del conjunto de instancias de dicha entidad (CLIENTE) . Cada TELÉFONO de un cliente se representa como una única fila en la tabla. Fijensé que la clave principal de la tabla TELEFONOS_CLIENTES está formada por los atributos DNI y TELEFONO. El atributo DNI también es clave foránea de la tabla CLIENTE. CLIENTE DNI telefon os (1,n) CLIENTE DNI TELEFONOS_CLIENTES DNI TELEFONO DER MODELO RELACIONAL VOLVER INDICE libro edicióntiene (1,n)(1,1) autor posee (1,n) (1,n) pertenece copia (1,1) (1,n) usuario Recibe (0,n) (0,n) Fecha_de vol Fecha_pr estamo NRO_USU ARIO Nombre Nombre DNI id-libro ISBN AÑO IDIOMA NRO VOLVER INDICE VOLVER INDICE
Compartir