Diplomado en Bases de Datos y Aplicaciones de Negocio

UNIDAD 3 Diseño de Bases de Datos Relacionales

4

Conceptos básicos
Sistema de base de datos: Sistema computarizado cuyo propósito general es registrar, mantener y consultar información. Un sistema de b.d. incluye 4 componentes principales : 1.- Base de datos. 2.- Hardware. 3.- Software. 4.- Usuarios.
5

Componentes de un Sistema de Base de Datos

6

Módulo I Introducción a las bases de datos Dr. Francisco Javier Cartujano Escobar

1

Diplomado en Bases de Datos y Aplicaciones de Negocio

Conceptos básicos
Base de Datos: Conjunto de datos (archivos) almacenados y utilizados por las aplicaciones o usuarios; estos datos deben ser: Integrados: Archivos relacionados lógicamente donde se elimina parcial o totalmente la redundancia. Compartidos: Acceso a los datos por varios usuarios siendo posible la concurrencia.

7

Ejemplo de una instancia de Base de datos

Proveedores

Partes

Embarques

8

Conceptos básicos
Hardware: Computadora, medios de almacenamiento, medios de impresión, etc. Usuarios de tres tipos: Finales. Programadores de aplicación. Administrador de la b.d. (DBA). Software: Constituído por el DBMS (Data Base Management System) el cual se encarga de ejecutar todas las operaciones a la base de datos.
9

Módulo I Introducción a las bases de datos Dr. Francisco Javier Cartujano Escobar

2

Diplomado en Bases de Datos y Aplicaciones de Negocio

Algunos componentes de un DBMS

10

Diccionario de Datos
Un diccionario de datos es una base de datos acerca de las bases de datos que hay en el sistema. El diccionario de datos deberá almacenar, entre otras cosas, la siguiente información: + Bases de datos que existen en el sistema. + Los archivos por cada base de datos. + Atributos de cada archivo. + Llaves de cada archivo. + Indices de cada archivo.
11

Diccionario de Datos
+ Asociaciones lógicas entre los archivos de

una base de datos. – Cual es la entidad padre y cual es la entidad hijo. – Por medio de que atributos se relacionan. – Que tipo de relación existe entre ellos. + Passwords de acceso y sus niveles de acceso. + Reglas de integridad. + Reglas de autorización. + Estadísticas. 12

Módulo I Introducción a las bases de datos Dr. Francisco Javier Cartujano Escobar

3

mensajes. Base de datos orientadas a objetos: Bases de datos soportadas bajo el enfoque de orientado a objetos. Estas bases de datos parciales se conectan a través de enlaces de comunicación. donde se tienen clases. Bases de datos Multimedia: Bases de datos que permiten almacenar y manipular texto. como están almacenados físicamente los datos. es decir. gráficas. 14 Nuevas tecnologías en base de datos Data Warehouse: Es una enorme base de datos. a nivel de diseño conceptual o lógico de la base de datos. como ven los usuarios a la base de datos. video y audio 15 Módulo I Introducción a las bases de datos Dr. Nivel interno: Es el más cercano al almacenamiento físico. imágenes.Diplomado en Bases de Datos y Aplicaciones de Negocio Arquitectura de una de base de datos En un sistema de base de datos existen tres niveles de abstracción de los datos: Nivel externo: Es el más cercano a los usuarios. pero que la suma de las partes hacen el todo. Bases de datos en Web: Tecnología que nos permite accesar a bases de datos (generalmente relacionales) a través de la red de internet. Nivel conceptual: Vista total. métodos. 13 Nuevas tecnologías en base de datos Base de datos distribuidas: Es una base de datos que está almacenada parcialmente en diferentes lugares. Francisco Javier Cartujano Escobar 4 . es decir. animaciones. herencia y polimorfismo en la estructura de la base de datos. cuya información proviene de base de datos operacionales con el fin de soportar el proceso de toma de decisiones.

líneas. Francisco Javier Cartujano Escobar 5 .d. Bases de datos Temporales: Bases de datos que requieren algún aspecto del tiempo para almacenar y manipular la información (generalmente la historia de alguna entidad). estas bases de datos permiten almacenar y manipular datos o ejecutar procesos que pueden tener la particularidad de ser móviles. etc. Bases de datos espaciales: Base de datos que permiten almacenar y manipular objetos que tienen características espaciales: puntos. Bases de datos deductivas: Este tipo de base de datos incluye capacidades para definir reglas que pueden definir o inferir información adicional de los hechos que están almacenadas en la b. polígonos. 16 Nuevas tecnologías en base de datos Bases de datos Activas: Bases de datos que permiten especificar una serie de reglas y “disparar” una serie de acciones al ocurrir un evento. 17 DISEÑO DE BASES DE DATOS 18 Módulo I Introducción a las bases de datos Dr. arcos. círculos.Diplomado en Bases de Datos y Aplicaciones de Negocio Nuevas tecnologías en base de datos Bases de datos móviles: Soportadas en la tecnología de comunicación inalámbrica.

Fase 6: Implementación del sistema y afinación. ELKA Modelos lógicos o de implementación. Podemos categorizar a los modelos de datos de acuerdo al nivel de abstracción que utilizan para describir la estructura de la base de datos. UML. D. Fase 1: Especificación de requerimientos y análisis. Fase 4: Diseño lógico de la B. 19 Modelos de Datos Esta categorización nos proporciona la siguiente clasificación: Modelos conceptuales o de alto nivel. Ejemplos: Entidad-Relación. (mapear el diseño conceptual al DBMS) Fase 5: Diseño físico. Fase 3: Selección de un DBMS. Representan a la información lo más cercano a la manera de cómo los usuarios perciben los datos.D. Jerárquico. Representan a la información dependiendo del DBMS que se utilice: Relacional. 21 Módulo I Introducción a las bases de datos Dr. Francisco Javier Cartujano Escobar 6 . Describen detalles de cómo los datos serán almacenados en la computadora. Fase 2: Diseño conceptual de la base de datos. 20 Fases en el diseño de B. de Red y OO Módelos físicos.Diplomado en Bases de Datos y Aplicaciones de Negocio Diseño de Base de Datos Diseñar una base de datos consiste básicamente en la construcción de un modelo de datos de la organización en cuestión. Un modelo de datos es una colección de objetos de información. los cuales nos representan alguna situación del mundo real.

un animal. un carro. atributos y relaciones. es el llamado modelo Entidad-Relacion (entityrelationship). debe quedar almacenado en el diccionario de datos. 22 TEMA 2 MODELO ENTIDAD-RELACION (ER) y ENTIDAD-RELACION AMPLIADO (EER) 23 Definiciones Uno de los enfoques mas conocidos en el modelado de datos conceptual. También se le conoce como la extensión o estado de la b. Francisco Javier Cartujano Escobar 7 .d. Generalmente esta cambia muy frecuentemente. Una entidad es un objeto que existe y puede distinguirse de otros objetos. Generalmente no cambia. 24 Módulo I Introducción a las bases de datos Dr. Por ejemplo: una persona. en un momento dado.Diplomado en Bases de Datos y Aplicaciones de Negocio Esquema e Instancia Esquema: Es la estructura de la base de datos que se especifica en el diseño. d. Este modelo describe a los datos como entidades.d. El DBMS es responsable de que cualquier estado de la b. El esquema de una b. También se le conoce como la intensión de la b. Instancia: Es el contenido de la b.d.d. etc. sea válido (consistente e íntegro).

la entidad empleado pudiera tener como atributos: No. salario. de empleado. es decir. Para cada atributo existe un rango de valores permitidos llamado Dominio. Atributos compuestos es la unión de 2 o más atributos simples. La colección de todas las entidades de un tipo de entidad en particular en la base de datos en cualquier punto del tiempo es llamado el conjunto entidad. que no se puede dividir.Diplomado en Bases de Datos y Aplicaciones de Negocio Definiciones Una entidad esta compuesta por atributos o propiedades que describen a la entidad. Atributos cuyo valor puede ser determinado a partir de atributos almacenados o entidades se les llama atributos derivados. 27 Módulo I Introducción a las bases de datos Dr. Por ejemplo. 26 Definiciones Tipo de entidad define una colección de entidades que tienen los mismos atributos. Atributo Nulo es aquel que no tiene ningún valor asociado. etc. Un atributo simple es aquel que es atómico. nombre. Francisco Javier Cartujano Escobar 8 . Atributo llave es un atributo simple o compuesto que identifica de manera única a una entidad dentro de su conjunto de entidad. Por el contrario un atributo que puede almacenar varios valores es un atributo multivaluado. Atributo complejo atributos que son compuestos y multivaluados. 25 Definiciones Un atributo que puede almacenar un solo valor es llamado atributo univaluado.

Al número de participantes en una relación se le conoce como el grado de la relación. 29 Relaciones A los tipos de entidades implicadas en una relación se les llama los participantes. 28 Instancias de una relación e1 e2 e3 e4 e5 r1 r2 r3 r4 r5 d1 d2 d3 d4 : : Empleado TrabajaPara Depto. Un ejemplo de algunas instancias de un conjunto de relación es mostrado en la siguiente figura. se puede establecer una relación entre el tipo de entidad empleado y el tipo de entidad departamento. 30 Módulo I Introducción a las bases de datos Dr. Un conjunto de relación es el conjunto de todas las instancias entre un tipo de relación. etc. La función que tiene una entidad en una relación se denomina papel o rol.Diplomado en Bases de Datos y Aplicaciones de Negocio Relaciones Un tipo de relación es una asociación o vinculación entre n tipos de entidades. Cuando participan dos tipos de entidades se dice que la relación es binaria. cuando participan tres se dice que es ternaria. Por ejemplo. Francisco Javier Cartujano Escobar 9 .

Sin embargo. en algunos casos el mismo tipo de entidad participa más de una vez en un tipo de relación jugando diferentes roles. Podemos distinguir dos tipos de restricciones: • cardinalidad • participación 33 Módulo I Introducción a las bases de datos Dr. Tales tipos de relaciones son llamadas relaciones recursivas. 31 Instancias de una relación recursiva r1 e1 e2 e3 e4 e5 r4 : : r2 Nombre del Rol Supervisor r3 Supervisado Empleado Supervisa 32 Restricciones en Relaciones En las relaciones puede existir restricciones que limitan la forma de relacionar una entidad con otra.Diplomado en Bases de Datos y Aplicaciones de Negocio Relaciones Recursivas Los papeles pueden ser implícitos y por lo general no se especifican. En tales casos el nombre del rol empieza ser esencial para distinguir el significado de cada participante. el nombre de la entidad puede usado como el nombre del rol. Francisco Javier Cartujano Escobar 10 . Estas restricciones son determinadas por la situación real que se esté modelando.

Una entidad en A está asociada con cualquier numero de entidades en B y una entidad en B está asociada con cualquier numero de entidades en A. Una entidad en A está asociada con cualquier número de entidades en B. Muchas a Una. Una entidad en A está asociada únicamente con una entidad en B y una entidad en B está asociada solo con una entidad en A 34 Cardinalidades entre las relaciones Una a Muchas. Muchas a Muchas. pero una entidad en B está asociada con cualquier número de entidades en a. pero una entidad en B está asociada únicamente con una entidad en A. 35 Ejemplo de relación 1:1 e1 e2 e3 e4 e5 r1 r2 r3 r4 r5 d1 d2 d3 : : : Empleado Administra Depto.Diplomado en Bases de Datos y Aplicaciones de Negocio Cardinalidades entre las relaciones La cardinalidad para una relación binaria especifica el número de entidades con las que las que puede asociarse otra entidad mediante una relación. Dado los conjuntos de entidad A y B. la cardinalidad de la relación puede ser: Una a Una. Francisco Javier Cartujano Escobar 11 . Una entidad en A está asociada únicamente con una entidad en B. 36 Módulo I Introducción a las bases de datos Dr.

Francisco Javier Cartujano Escobar 12 . 37 Ejemplo de relación M:N e1 e2 e3 e4 : r1 r2 r3 r4 r5 r6 p1 p2 p3 p4 : : Empleado TrabajaEn Proyecto 38 Participación y Dependencia de Existencia La restricción de participación especifica si la existencia de una entidad depende de estar relacionada con otra entidad por medio de la relación. Esta participación también es llamada dependencia de existencia ya que la existencia de A depende de la existencia de B.Diplomado en Bases de Datos y Aplicaciones de Negocio Ejemplo de relación N:1 e1 e2 e3 e4 e5 r1 r2 r3 r4 r5 d1 d2 d3 d4 : : Empleado TrabajaPara Depto. 39 Módulo I Introducción a las bases de datos Dr. La participación total indica que toda entidad en A debe estar relacionada con al menos otra entidad en B. La participación puede ser total o parcial.

en contraste entidades que tiene atributos llave propios son llamadas entidades fuertes. En el ejemplo de la relación M:N podríamos agregar el atributo horas a la relación TrabajaEn. 41 Algunos otros conceptos Las entidades débiles se identifican relacionándose con los valores de atributos de otra entidad llamada la entidad propietaria. Francisco Javier Cartujano Escobar 13 . 40 Algunos otros conceptos Los tipos de relaciones también pueden tener atributos. para indicar el número de horas semanales que un empleado dedica a un proyecto en particular.Diplomado en Bases de Datos y Aplicaciones de Negocio Participación y Dependencia de Existencia A la entidad B se le llama la entidad dominante y la entidad A se le llama la entidad subordinada. El tipo de relación que relaciona una entidad débil con su entidad propietaria se le conoce como relación de identificación. Una entidad débil siempre tiene una restricción de participación total. 42 Módulo I Introducción a las bases de datos Dr. Tipos de entidades que no tienen atributos llave propios son llamadas entidades débiles. La participación parcial indica que pudiera haber entidades en A que no estuvieran relacionadas con ninguna entidad en B. por lo que una entidad débil es una entidad subordinada y una entidad propietaria en una entidad dominante.

la cual es el conjunto de atributos que pueden identificar de manera única entidades débiles que estén relacionados a la misma entidad propietaria. puede especificarse a través de un diagrama de ER.d. Tipos de entidades débiles pueden algunas veces ser representados como atributos complejos. Francisco Javier Cartujano Escobar 14 . Estos diagramas pueden construirse a partir de los siguientes componentes: Entidad Entidad Débil Relación Relación de Identificación Atributo Atributo llave 44 Diagramas ER Atributo Multivaluado Atributo derivado Atributo Compuesto E1 Relación 1:1 E2 E1 Relación 1:N E2 E1 Relación M:N E2 E1 E2 Participación total de E2 45 Módulo I Introducción a las bases de datos Dr.Diplomado en Bases de Datos y Aplicaciones de Negocio Algunos otros conceptos Un tipo de entidad débil normalmente tiene una llave parcial. 43 Diagramas ER El esquema conceptual de una b. Una entidad propietaria podría también ser una entidad débil.

departamentos y proyectos de una compañía. compuestos. Un depto. controla varios proyectos. etc) 3 Identificar llave de las entidadades. 4 Detectar relaciones entre entidades. Debemos registrar nombre. Parentesco. FechaInicAdm. dirección y su salario. Puede estar en distintas localidades. Cada depto. Administrador. Número. También queremos registrar el supervisor de cada empleado. Ejemplo Deseamos registrar el número de horas por semana que un empleado trabaja para cada proyecto. {TrabajaSobre(Proy. derivados. multivaluados. pero podría trabajar en diferentes 47 proyectos aunque no sean controlados por su depto. 46 Ejemplo Diseñar una base de datos que lleve el control de empleados. La cía. DEPARTAMENTO: Nombre. 5 Si es necesario refinar el modelo. Salario. edad y parentesco. Dirección. tiene un número único. un nombre único y un empleado que lo administra. su NSS. Para cada empleado deseamos almacenar su nombre. Supervisor. PROYECTO: Nombre. Localidad. Un empleado es asignado a un solo depto. cada uno tiene un nombre único. {Localidades}. 2 Identificar tipos de entidades (fuertes o débiles) y atributos (simples. DeptControla. está organizada en deptos. Queremos llevar el control de los dependientes de cada empleado para fines de afiliación al seguro social. Deseamos registrar la fecha cuando el empleado inicio la administración del Depto. Edad. utilizando ER contempla los siguientes pasos generales: 1 Descripción del problema. 1 Descripción del problema. 6 Realizar el diagrama ER. Módulo I Introducción a las bases de datos Dr.Diplomado en Bases de Datos y Aplicaciones de Negocio Pasos en el Diseño Conceptual El diseño de b.d. Francisco Javier Cartujano Escobar 15 . Número. ApelPaterno. horas)} 48 DEPENDIENTE (débil): Nombre. Además un Depto. un número único y una sola localidad. 2 Identificar tipos de entidad y atributos. EMPLEADO: Nombre(Pila. su cardinalidad y su participación (total o parcial). SSN. ApelMaterno).

TIENE_DEPENDIENTES: 1:N entre Empleado (parcial) y Dependiente(total). esta también es una relación de identificación. Ambas participaciones son parciales. TRABAJA_EN: N:1 entre Empleado(total) y Depto(total) CONTROLA: 1:N entre Depto(parcial) y Proyecto(total) SUPERVISA: 1:N entre Empleado (papel de supervisor) y 49 Empleado (papel de supervisado). 50 6 Diagrama ER Materno Pila Nombre N Paterno 1 Nombre Edad Supervisa Dependiente N Ssn EMPLEADO 1 N 1 Tiene_Depend Horas Parentesco Trabaja_En 1 Número Administra 1 FechInic M Trabaja_Sobre N Localidad DEPTO. Francisco Javier Cartujano Escobar 16 . Ambas participaciones son parciales. 4 Identificar relaciones. El atributo Horas es asignado a esta relación. DEPARTAMENTO: Número PROYECTO:Número EMPLEADO: SSN DEPENDIENTE (débil): Nombre + edad+parentesco (parcial).Diplomado en Bases de Datos y Aplicaciones de Negocio Ejemplo 3 Identificar llaves. Nombre Localidades NoEmpleados 1 N PROYECTO Número Nombre 51 Controla Módulo I Introducción a las bases de datos Dr. ADMINISTRA: 1:1 entre Empleado(parcial) y Depto (total). TRABAJA_SOBRE: M:N entre Empleado(total) y Proyecto(total). El atributo FechaInic es asignado a esta relación. Ejemplo SUPERVISA: 1:N entre Empleado (papel de supervisor) y Empleado (papel de supervisado).

Cada uno de estos grupos es llamado una subclase y la entidad que agrupa a todas es llamada la superclase. El modelo ER es ampliado para incorporar estos nuevos elementos semánticos y generar lo que se conoce como modelo ER reforzado (EER: Enhanced-ER). 52 Superclase y Subclase En muchos casos es posible que en un tipo de entidad se puedan formar subgrupos con un signficado especial para la base de datos. Una subclase es un tipo de entidad por derecho. Francisco Javier Cartujano Escobar 17 . 53 Superclase y Subclase Una entidad en la subclase no puede existir si no existe en la superclase. Entre la superclase y subclase se forma una relación de clase/subclase. Una entidad en la superclase puede ser incluída en varias subclases. Note que una entidad en una subclase representa la misma entidad del mundo real que en la entidad superclase pero con un papel específico distinto. Cada subclase adicionalmente puede tener sus propios atributos especificos o locales. pero no es necesario que sea miembro de alguna.Diplomado en Bases de Datos y Aplicaciones de Negocio Modelo ER Reforzado (EER) Los conceptos proporcionados por ER son suficientes para representar muchos esquemas de base de datos “tradicionales”. Herencia es el proceso de heredar (pasar) todos los atributos y relaciones de la superclase a sus subclases. A estos tipos de modelos se les conoce como modelos de datos semánticos. sin embargo el surgimiento de nuevas aplicaciones requiere el incorporar mas características semánticas del mundo real. 54 Módulo I Introducción a las bases de datos Dr.

NoMotor. NoMotor. ésta es llamada la superclase de la especialización. 55 Ejemplo de Diagrama ERR para especialización Ssn Nombre Sexo EMPLEADO d Tipo d $ / Hora SECRETARIA Idiomas INGENIERO ADMINISTRADOR EMPLEADO ASALARIADO Administra Salario TECNICO Nivel EMPLEADO POR HORA PROYECTO 56 Generalización y Especialización Generalización es el proceso inverso de la especialización. NoEjes. los tipos de entidad carro(IdVehículo. precio. El conjunto de subclases que forman una especialización es definido por alguna característica que distingue a las entidades de la superclase. La especialización se representa con un triángulo uniendo la superclase y sus subclases. los generalizamos en una sola superclase y los tipos de entidad originales se transforman en subclases. precio). NoPasajeros) y camión(IdVehículo. 57 Módulo I Introducción a las bases de datos Dr. El triangulo apunta a la superclase. Francisco Javier Cartujano Escobar 18 . identificamos diferentes tipos de entidades que tengan atributos en común. precio.Diplomado en Bases de Datos y Aplicaciones de Negocio Generalización y Especialización Especialización es el proceso de definir un conjunto de subclases de un tipo de entidad. Tonelaje) se pueden generalizar en la superclase Vehículo(IdVehículo. Es posible tener diferentes especializaciones sobre el mismo tipo de entidad. es decir. velocidad. NoMotor. Por ejemplo.

Puede existir la restricción de subclases disjuntas. Las subclases son llamadas subclases definidas por predicado y a la condición predicado de definición y el atributo es llamado atributo de definición o el discriminador 58 Ejemplo de subclases definidas por predicado Nombre Ssn Sexo TipoTrabajo EMPLEADO TipoTrabajo d “Secretaria” “Ingeniero” SECRETARIA Idiomas INGENIERO “Técnico” Tipo TECNICO Nivel 59 Restricciones de Generalización/Especialización Cuando no existe una condición para determinar la membresia en una subclase. 60 Módulo I Introducción a las bases de datos Dr.Diplomado en Bases de Datos y Aplicaciones de Negocio Restricciones de Generalización/Especialización Podemos tener diferentes especializaciones sobre un mismo tipo de entidad. Las entidades podrían pertenecer a diferentes subclases en cada especialización. lo que significa que una entidad puede ser miembro a lo más de una de las subclases de la especialización. Francisco Javier Cartujano Escobar 19 . El usuario determina a que subclase pertenece cada vez que una entidad se agrega a la base de datos. En algunas especializaciones se pueden determinar las entidades que perteneceran a cada subclase por medio de una condición que verifique el valor de un atributo. Indicamos una especialización disjunta por medio de una d dentro del triangulo de especialización . la subclase es llamada definida por el usuario.

la misma entidad podría ser miembro de más de una subclase de la especialización. Una subclase con más de una superclase es llamada subclase compartida. la cual puede ser total o parcial. Una especialización total significa que toda entidad en la superclase deberá ser miembro de alguna subclase en la especialización. es decir. Este caso se indica colocando una o dentro del triángulo. En una jerarquía o red de especialización una subclase hereda los atributos de todas sus superclases predecesoras. 63 Módulo I Introducción a las bases de datos Dr. Una línea doble de la superclase al triángulo es utilizada para indicar especialización total. la cual posee herencia múltiple.Diplomado en Bases de Datos y Aplicaciones de Negocio Restricciones de Generalización/Especialización Otro caso es que las subclases se “sobre pongan” (overlap). Note que las restricciones de disjuntos/overlap y de completés son independientes. Una especialización tiene la restricción de completés. Este caso se indica por medio una línea simple. Francisco Javier Cartujano Escobar 20 . 61 Restricciones de Generalización/Especialización Por su parte una especialización parcial permite que una entidad no pertenezca a cualquiera de las subclases de la especialización. produciendo 4 posibles casos: Disjunto total Disjunto parcial Overlap Total Overlap parcial 62 Restricciones de Generalización/Especialización Una jerarquía de especialización tiene la restricción de que toda subclase participa en una sola relación de clase/subclase. En contraste una red de especialización permite que una subclase participe en más de una relación de clase/subclase.

Diplomado en Bases de Datos y Aplicaciones de Negocio Usamos Generalización o Especialización ? En el proceso de especialización iniciamos con un tipo de entidad y entonces definimos subclases por especializaciones sucesivas formando una jerarquía para después pasar. Es posible que se llegue a la misma jerarquía o red en forma inversa: generalizando sucesivamente y correspondiendo a una síntesis conceptual bottom-up. a una red. ATRIBUTOS TUPLOS 66 Módulo I Introducción a las bases de datos Dr. si es necesario. Francisco Javier Cartujano Escobar 21 . En la práctica una combinación de los dos procesos es empleado. 64 TEMA 3 MODELO LOGICOS DE BASES DE DATOS Relacional Jerárquico Redes 65 Modelo Relacional Los datos están almacenados en tablas llamadas: Relaciones. Este enfoque corresponde a un proceso de refinación conceptual top-down. a los renglones se les llaman tuplos y a las columnas se les llama atributos.

En un contexto de base de datos el orden de los tuplos es adecuado... El valor de n es lo que se le conoce como el grado de la relación.dn pertenezca a Dn.Diplomado en Bases de Datos y Aplicaciones de Negocio Modelo Relacional Definición de relación.. d2 pertenece a D2. Francisco Javier Cartujano Escobar 22 . se dice que R es una relación sobre estos n conjuntos. si es un conjunto de tuplos _n ordenados de la forma (d1.. pero desde el punto de vista matemático si importa...Dn (No necesariamente distintos).. pero desde el punto de vista matemático no importa el orden.dn) tales que d1 pertenezca a D1.. d3. Al numero de tuplos de una relación se le llama Cardinalidad de la relación 67 Modelo Relacional 68 Modelo Relacional En un contexto de base de datos el orden de las columnas no importa... En una base de datos relacional se requiere que todas las relaciones satisfagan la condición siguiente : Todo valor en la relación debe ser atómico 69 Módulo I Introducción a las bases de datos Dr.Dn son los dominios de R. los D1.. Dada una serie de conjuntos D1. d3 pertenezca a D3. D3.. D2. d2..

b) Compuesta: Formada por 2 o mas atributos. El resto se 70 consideran llaves alternas. Francisco Javier Cartujano Escobar 23 . Un ejemplo de estos conceptos es mostrado en la siguiente figura. La determinación de las llaves y las relaciones dependen de la semántica de la situación del mundo real que se esté modelando. 71 Modelo Relacional 72 Módulo I Introducción a las bases de datos Dr. que también identifica en forma única a un tuplo. Llaves candidatas: Son los atributos de los cuales se elige a la llave primaria. Las llaves primarias pueden ser de 2 tipos: a) Simple: Formada por un solo atributo. con la finalidad de relacionarlas. Llave Alterna: Es otro atributo diferente de la llave primaria.Diplomado en Bases de Datos y Aplicaciones de Negocio Modelo Relacional Llave Primaria: Atributo(s) cuyos valores son únicos dentro de la relación y por lo tanto identifican en forma única a un tuplo dentro de la misma. Esta es una característica importante del modelo relacional ya que es el único medio por el cual se pueden relacionar dos tablas. Modelo Relacional Atributo Heredado y Extranjero: Es aquel atributo que fue heredado de una relación padre a una relación hijo.

En el modelo jerárquico existen dos tipos de nodos: Nodos superiores: los nodos raiz de los árboles. Nodos dependientes: el resto de los nodos. En la base de datos no deben existir valores de atributos heredados que no tengan asociado un valor en la tabla padre. Una posible vista jerárquica de la base de datos anterior es la siguiente: 75 Módulo I Introducción a las bases de datos Dr. La comprensión es la parte permanente de la relación:estructura nominadora y restricciones de 73 integridad Instancia de una base de datos relacional S S# S1 S2 S3 NOMBRE SALAZAR JARAMILLO BERNAL STATUS 20 10 30 CIUDAD LONDRES PARIS PARIS SP S# S1 S1 S1 S2 S2 S3 P# CANT P1 300 P2 200 P3 400 P1 300 P2 400 P2 200 P P# P1 P2 P3 P4 NOMBRE TUERCA PERNO TORNILLO TORNILLO COLOR ROJO VERDE AZUL ROJO PESO CIUDAD 12 LONDRES 17 PARIS 17 ROMA 14 LONDRES 74 Modelo Jerárquico En este modelo existe una jerarquía entre los datos. Ningún componente de la llave primaria puede tener valor nulo.Diplomado en Bases de Datos y Aplicaciones de Negocio Reglas de Integridad del Modelo Relacional Regla de Integridad No.1 (integridad de la entidad). La extensión de una relación es el conjunto de tuplos que aparecen en la relación en cualquier instante dado. Francisco Javier Cartujano Escobar 24 . por ejemplo un árbol. Regla de Integridad No 2 (integridad referencial).

la vista jerárquica anterior pudiera presentar los siguientes problemas: Insertar: Al tratar de crear o insertar un registro dependiente y no existe un superior donde ponerlo. Es adecuado para modelar relaciones 1:N. Francisco Javier Cartujano Escobar 25 . Al borrar un padre se borran automáticamente sus hijos. debe crearse un nodo ficticio y ponerlo debajo de el. 78 Módulo I Introducción a las bases de datos Dr. 77 Modelo Jerárquico El realizar operaciones de inserción. Ninguna ocurrencia de registro dependiente podría existir si no existe su superior.Diplomado en Bases de Datos y Aplicaciones de Negocio Modelo Jerárquico 76 Modelo Jerárquico Características: Las ligas o enlaces conectan ocurrencias de un registro superior con cero o varios dependientes. borrado y actualización.

es necesario modificar todas las ocurrencias de este registro en todos los árboles para dejar a la base de datos consistente. 79 Modelo de Red Características: Los datos están representados por registros y ligas. Actualizar. filmina. Si queremos modificar un dependiente que ocurre en varios árboles. es mostrada en la sig.Diplomado en Bases de Datos y Aplicaciones de Negocio Modelo Jerárquico Borrar: Si se borra un superior automáticamente se borran también todos los hijos. es decir de muchos a muchos. Si en esos hijos está un dependiente que únicamente existe en ese árbol. El enfoque de Red permite modelar relaciones M:N. se pierde información de ese dependiente. Francisco Javier Cartujano Escobar 26 . sin embargo. 80 Modelo de Red 81 Módulo I Introducción a las bases de datos Dr. una red permite que la ocurrencia de un registro pueda tener cualquier número de superiores inmediatos. Una vista de red de la base de datos de proveedores-partes-embarques.

Selecciona uno de los atributos llaves de E como llave primaria de T. Paso 3: Para cada asociación R binaria 1:1.Diplomado en Bases de Datos y Aplicaciones de Negocio TEMA 4 DISEÑO DE BASES DE DATOS RELACIONALES UTILIZANDO MAPEO DE EER A RELACIONES 82 Algoritmo de mapeo de EER-Relacional Paso 1: Para cada tipo de entidad fuerte E. Francisco Javier Cartujano Escobar 27 . Selecciona una de estas. Incluye los atributos de R en S. Si un atributo es compuesto agrega los componentes simples de él. crea una relación (tabla) T que incluya todos los atributos simples de E. 83 Algoritmo de mapeo de EER-Relacional Hereda hacia T los atributos llave de la tabla(s) que correspondan a las entidades propietaria(s) y estos atributos establécelos como llave de T junto con la llave parcial de la entidad débil W. Paso 2: Para cada tipo de entidad débil W con el tipo de entidad propietaria E. 84 Módulo I Introducción a las bases de datos Dr. Es mejor seleccionar como S la entidad con participación total en R. crea una tabla T que incluya todos los atributos simples de W (o componentes simples de atributos compuestos). identifica las tablas S y F correspondientes a las entidades que forman la asociación. e incluye como atributo heredado en S la llave primaria de F. por ejemplo S.

. Paso 6: Para cada atributo multivaluado A. más la llave primaria de la tabla que representa a la entidad o asociación que incluye a A..a2. Hereda en S las llaves primarias de las tablas asociadas a las entidades que están definiendo R.a1. donde los atributos de C son {k.. crea una nueva tabla S para representar R. Identifica a la tabla S que esté asociada a la entidad cuyo papel es N en R. crea una nueva tabla T que incluya al atributo A..an} y PK(L)={k}.Sm}. crea una tabla S para representar R.. Entonces. Hereda hacia S las llaves primarias de las tablas que representan a las entidades participantes en R. Paso 4: Para cada asociación R binaria 1:N.. Incluye en S los atributos de R.. Paso 8: Por cada especialización considera una superclase C y m subclases {S1. 86 Algoritmo de mapeo de EER-Relacional Incluye en S cualquier atributo de R. selecciona una de las sigs. Paso 5: Para cada asociación R binaria M:N.an} y k es la llave. Incluye atributos de R en S.Diplomado en Bases de Datos y Aplicaciones de Negocio Algoritmo de mapeo de EER-Relacional Si ambas participaciones son totales. opciones: a)Crea una tabla L para C con Atrib(L) = {k. Crea una tabla Li para cada subclase Si con Atrib(Li)={k} U {atributos de Si} y PK(Li) = {k} 87 Módulo I Introducción a las bases de datos Dr. Incluye en S la llave primaria de la tabla F que representa a la entidad cuyo papel es 1 en R. 85 Algoritmo de mapeo de EER-Relacional La llave primaria de S es la combinación de dichas llaves. La llave primaria de T es la combinación de estos dos atributos. Francisco Javier Cartujano Escobar 28 .a1. Paso 7: Para cada asociación R n-aria.. La llave primaria de S es generalmente la concatenación de todas las llaves heredadas.S2. es posible mezclar a las dos entidades en una sola tabla.

tm} y PK{L}=k.an} y PK(Li)={k}.. con Atrib(Li)={atributos de Si} U {k.t2..a1.. a1. Francisco Javier Cartujano Escobar 29 ...U {atributos de Sm} U {t1..U {atributos de Sm} U {t} y PK(L)=k..a1.an} U {atributos de Si} U. Las clases deben ser overlap y cada ti es un atributo booleano indicando si un 88 tuplo pertenece a Si . Las clases deben ser disjuntas y t es un atributo discriminador indicando a que subclase pertenece el tuplo. c) Crea una sola tabla L con Atrib(L) = {k. d) Crea una sola tabla L con Atrib(L) = {k. 89 TEMA 5 DISEÑO DE BASES DE DATOS RELACIONALES USANDO NORMALIZACION 90 Módulo I Introducción a las bases de datos Dr...Diplomado en Bases de Datos y Aplicaciones de Negocio Algoritmo de mapeo de EER-Relacional b) Crea una tabla Li para cada subclase Si.. Algoritmo de mapeo de EER-Relacional Paso 9: Para subclases compartidas (aquellas que tienen herencia múltiple) se puede aplicar cualquiera de los incisos del paso 8.. pero preferentemente el 8a..an} U {atributos de Si} U...

Dada una relación R. Dependencia funcional (DF). 93 Módulo I Introducción a las bases de datos Dr. 91 Normalización Universo de las Relaciones 92 Normalización Normalización es el proceso mediante el cual.X ------> R. podemos saber el valor del atributo Y. denotado por: R. Tanto X como Y pueden ser compuestos. 4NF y 5NF.Diplomado en Bases de Datos y Aplicaciones de Negocio Normalización El proceso de normalización esta basada en el concepto de formas normales.Y si dado el valor de X. Francisco Javier Cartujano Escobar 30 . otras cumplen 2NF pero ademas cumplen 3NF y así sucesivamente. cierta tabla va cumpliendo los requisitos de las formas normales con el fin de estar bien diseñada. el atributo Y de R es funcionalmente dependiente del atributo X de R. Todas las relaciones están en 1NF. Una Forma Normal (NF) se puede definir como un conjunto de restricciones que debe cumplir cierta relación o tabla. 3NF. Existen básicamente cinco formas normales abreviadas como 1NF. 2NF. algunas de esas relaciones ademas de estar 1NF también están en 2NF .

Los atributos compuestos pueden agruparse por medio de un rectángulo mayor 95 Normalización Diagrama de D. Francisco Javier Cartujano Escobar 31 .d.F. para la b. En estos diagramas se representan a los atributos por medio de rectángulos. Diagrama de dependencias funcionales. las dependencias funcionales se representan por medio de arcos dirigidos del atributo X hacia el atributo Y.status 94 Normalización Note que las llaves primarias o llaves alternas son atributos X.s# ----> S. pero para ser atributo X no es necesario que sea llave primaria o alterna. S.Cd.s# ----> S.s# ----> S.nombre S. de prove-part-embarques 96 Módulo I Introducción a las bases de datos Dr.Diplomado en Bases de Datos y Aplicaciones de Negocio Normalización Ejemplo: S# S1 S2 S3 S4 S5 NOMBRE Salazar Caicedo Bernal Aldana CD L P P L A STATUS 20 10 30 20 30 S.

manera 99 Módulo I Introducción a las bases de datos Dr. supondremos la siguiente base de datos. Francisco Javier Cartujano Escobar 32 . Normalización Con el fin de analizar el proceso de normalización. Las dependencias funcionales es un tratamiento semántico de los datos. es decir dependen de la 97 situación del mundo real.Diplomado en Bases de Datos y Aplicaciones de Negocio Normalización Dependencia funcional completa: El atributo Y es funcionalmente dependiente en forma completa del atributo X. Primera S# S1 S1 S1 S2 S2 S3 S4 S5 NOMBRE LUIS LUIS LUIS PACO PACO HUGO NICO TATO CD J J J Z Z T J Z STATUS 10 10 10 5 5 20 10 5 P# P1 P2 P3 P1 P3 P2 P2 P1 CANT 10 20 10 5 15 20 15 20 Llave: (S#. Un atributo es no primo si no participa en la llave primaria. si Y es funcionalmente dependiente de X y no depende funcionalmente de ningún subconjunto de X. Atributos mutuamente independientes son aquellos donde ninguno es funcionalmente dependiente del otro. 98 Normalización Las DFs de la tabla "Primera" se verían de la sig.P#) Considere la condición de que status depende de cd.

si se desea actualizar información referente a un proveedor. Llave:(S#. todos los dominios de la relación solo contienen valores atómicos. tendrá que actualizarse en todas las ocurrencias de ese proveedor. no solamente habremos borrado el embarque si no también la única información del proveedor en cuestión Modificaciones: Como existe redundancia de información. Fig. Solución: dividir la tabla en dos nuevas tablas. de otro modo se rompe la regla de integridad No. La tabla Primera cumple con la primera forma normal. 101 Normalización Segunda S# S1 S2 S3 S4 S5 NOMBRE LUIS PACO HUGO NICO TATO CD STATUS J 10 Z 5 T 20 J 10 Z 5 S# S1 S1 S1 S2 S2 S3 S4 S5 P# P1 P2 P3 P1 P3 P2 P2 P1 SP CANT 10 20 10 5 15 20 15 20 Llave:S# This image cannot currently be display ed. 1. Ver sig.Diplomado en Bases de Datos y Aplicaciones de Negocio 1a Forma Normal Una relación R está en Primera forma normal (1FN) si y solo si.P#) 102 Módulo I Introducción a las bases de datos Dr. Francisco Javier Cartujano Escobar 33 . pero tiene los siguientes problemas: Insertar: No se puede insertar exclusivamente los datos de un proveedor hasta que éste suministre alguna parte. 100 1a Forma Normal Borrar: Si borramos un embarque que hace referencia a un proveedor que aparece en la tabla únicamente en ese tuplo.

La solución a estos problemas es que Segunda se divida en dos nuevas tablas. 103 2a Forma Normal Borrar: Si se borra a un proveedor que esta localizado en una ciudad que ocurre una sola vez en la tabla. está en 1NF y cada atributo no primo es totalmente dependiente de la llave prima. Francisco Javier Cartujano Escobar 34 . se debe de hacer en cada ocurrencia de dicha ciudad. Modificaciones: Si desea actualizar el status de cierta ciudad. habremos borrado no únicamente al proveedor si no también la única ocurrencia de dicha ciudad. La tabla Segunda y la tabla SP cumplen con la 2NF (ver DFs) pero aun la tabla segunda presenta los sigs. 104 Normalización S S# S1 S2 S3 S4 S5 NOMBRE LUIS PACO HUGO NICO TATO CD J Z T J Z CD CD STATUS J 10 Z 5 T 20 Llave:S# Llave:(CD) 105 Módulo I Introducción a las bases de datos Dr. Esto se muestra a continuación. problemas: Insertar: No se puede insertar una nueva ciudad con su respectivo status si no existe un proveedor que exista en dicha ciudad.Diplomado en Bases de Datos y Aplicaciones de Negocio 2a Forma Normal Una relación R está en Segunda Forma Normal (2NF) si y solo si.

Generalmente una base de datos queda bien diseñada cuando sus tablas cumplen 3NF.P#) 107 Módulo I Introducción a las bases de datos Dr. Francisco Javier Cartujano Escobar 35 . Ciudad y SP cumplen tercera forma normal. La clave es ver que no hay información redundante y no haya problemas en las operaciones de 106 actualización Normalización Una vista general de la base de datos diseñada correctamente es el sig: SP S S# NOMBRE S1 LUIS S2 PACO S3 HUGO S4 NICO S5 TATO CD J Z T J Z Ciudad CD J Z T STATUS 10 5 20 Llave: CD Llave: S# S# S1 S1 S1 S2 S2 S3 S4 S5 P# P1 P2 P3 P1 P3 P2 P2 P1 CANT 10 20 10 5 15 20 15 20 Llave: (S#. Esto significa que los atributos no primos son mutuamente independientes. está en 2NF y todo atributo no primo es dependiente no transitivamente de la llave primaria.Diplomado en Bases de Datos y Aplicaciones de Negocio 3a Forma Normal Una relación R está en Tercera Forma Normal (3NF) si y solo si. Las tablas S.

Sign up to vote on this title
UsefulNot useful