Академический Документы
Профессиональный Документы
Культура Документы
Bases de Datos
3/13/12
UNIDADES TEMTICAS
UNIDAD INTRODUCCIN Y GENERALIDADES
Fechas
Evaluaciones
I.
Introduccin a las Bases de Datos Funciones de los Sistemas de Bases de Datos Actores en los Sistemas de Bases de Datos Ventajas de utilizar un SGBD Estructura Global de un Sistema de Bases de Datos 11 y 12 de mayo 18 de mayo
II.
Categoras de los modelos de datos Modelo de datos utilizando Entidad-Relacin Modelo Entidad-Relacin extendido y Modelado de Objetos Herencia, Generalizacin, Restricciones y Caractersticas de la Especializacin y Generalizacin. Modelado Conceptual de Objetos mediante diagramas de clase UML Tipos de relacin de grado superior a dos 18 de mayo al 19 de junio 19 de junio
3/13/12
UNIDADES TEMTICAS
UNIDAD MODELO RELACIONAL
Fechas
Evaluaciones
III.
Conceptos del Modelo Relacional Restricciones Relacionales Integridad de Entidades, Integridad Referencial y Claves Externas Transformacin de E-R a Modelo Relacional Transformacin de los conceptos de E-R extendido en relaciones 22 de junio al 07 de julio 07 de julio
IV.
LGEBRA RELACIONAL
Introduccin al Algebra Relacional Operaciones del Algebra Relacional Definicin de datos, restricciones y cambios de esquema Operaciones de Actualizacin y tratamiento de las restricciones Visualizando restricciones en el control de integridad Especificacin de valores por omisin y acciones de disparo referencial
10 de julio al 04 de agosto
07 de agosto
V.
07 al 18 de agosto
18 de agosto
3/13/12
Steele, P., Heydt R. DBASE IV 1.1 y SQL, Programacin para expertos Grupo Noriega Editores 1 Edicin Mxico 1993 Campbell, M. DBASE IV Gua de autoenseanza Ediorial: Mc. Graw Hill 1 Edicin Mxico 1991 Liskin, M. DBASE IV a su alcance Editorial: Mc Graw Hill 1 Edicin Espaa 1991 Liskin, M. DBASE IV Manual de bolsillo Editorial: Mc Graw Hill 1 Edicin 3/13/12 Mxico 1992
BSIC A
Weiderhold, G. Diseo de Bases de Datos Ediorial: Mc. Graw Hill 2 Edicin Mxico 1988 Moreno, P., Ruez, S., Bello, J. Introduccin al DBASE Editorial: Mc Graw Hill 1 Edicin Mxico 1993 Ashton Tate Introduccin al DBASE IV Ashton Tate 1988
BIBLIOGRAF A COMPLEMENTARI A
Catapult, Inc. Microsoft Fox Pro MS-DOS versin 2.5 Editorial: Microsoft Press EEUU 1993 Ricciardi, S. Running Microsoft Fox Pro for MSDOS Ediorial: Microsoft Press EEUU 1993 Jones, E. Aplique Fox Pro 2.5 para Windows Editorial: Mc. Graw Hill 1 Edicin Espaa 1993
3/13/12
FORMA DE EVALUACIN Asistencia Participacin Trabajos en equipo (Examen Individual) Proyecto Final en equipo 15 % 20 % 30 % 35
3/13/12
15 %
Se pasa lista al inicio de la clase Se pasa lista al trmino de la clase Se cancela la asistencia si:
El alumno es indisciplinado3/13/12 la en
20
cin % Despus de la explicacin en clase, se dar un determinado tiempo para que el alumno redacte su propia definicin o proporcione ejemplos de lo recin visto y ser enviado por mail a la profesora (estas participaciones se harn cada que sea necesario definir algn concepto o que se requiera clarificar ms con ejemplos). NO cuenta como participacin una
3/13/12
30 %
Se formarn 3 equipos de 6 integrantes y 1 equipo de 5 integrantes. La calificacin de los trabajos ser lo obtenido de manera individual.
(Examen individual)
Se har un trabajo en equipo por Unidad que consistir en la documentacin terica de la Unidad (NO de Internet, sino lo que el equipo aporta en definiciones y conceptos a lo que se vio en clase), ser un archivo en PDF que ser IMPRESO y enviado por CORREO el mismo da del ltimo examen de la Unidad. Estos trabajos se pueden ir armando en cada clase con las participaciones y la retroalimentacin de la profesora. Deben contener:
3/13/12 todos los integrantes del equipo, nombre de la profesora, nombre del
35 %
en equipo
Portada que contenga: Nombre de asignatura, nombre completo de todos los integrantes del equipo, nombre de la profesora, nombre del proyecto, fecha de entrega.
El documento ser mximo de 20 hojas, aquellos que rebasen sern devueltos sin ser revisados.
3/13/12
I.
INTRODUCCIN Y GENERALIDADES
Introduccin a las Bases de Datos Funciones de los Sistemas Gestores de Bases de Datos
Actores en los Sistemas Gestores de Bases de Datos Ventajas de utilizar un Sistema Gestor de Bases de Datos
Coleccin compartida de datos relacionados desde el punto de vista lgico, junto con una descripcin de esos datos (metadatos), diseada para satisfacer las necesidades de informacin de una organizacin. Conjunto exhaustivo y no redundante de datos estructurados, organizados de forma independiente a su utilizacin o implantacin en mquina, accesibles en tiempo real y compatibles con usuarios concurrentes y sus respectivas Las Bases de Datos sirven para necesidades (peticiones) de almacenar, procesar y extraer datos informacin.
3/13/12
Qu es una Base de Datos? Una base de datos es una coleccin de informacin organizada de forma que un programa de ordenador pueda seleccionar rpidamente los fragmentos de datos que necesite. Una base de datos es un sistema de archivos electrnico.
Las bases de datos se organizan por campos, registros y archivos. Un campo es una pieza nica de informacin; un registro es un sistema completo de campos; y un archivo es una coleccin de registros. Por ejemplo, una gua de telfono es anloga a un archivo. Contiene una lista de registros, 3/13/12
Una base de datos es un archivo, existen diferentes tipos de archivos, cmo de texto, imgenes, pistas de audio, video, entre otras junto con los archivos de bases de datos. Cada tipo de archivo tiene sus caracterstica nicas que los diferencian y programas especficos que nos permiten hacer uso de ellos.
3/13/12 En el caso de las bases de datos, tienen un
En qu se diferencia una Base de Datos de los archivos tradicionales? Hojas de clculo Docume ntos Presentaci ones Archivos de texto Editar imgenes Archivos de audio
Exce l Wor d Power Point Block de notas Paint, Corel, etc. Reproductor de Windows, Winamp, etc.
3/13/12
SGBD DBM S
Bases de Datos
Archivos tradicionales
Sistema Gestor de Bases de Datos (SGBD). Es un software que proporciona servicios para la creacin, el almacenamiento, el procesamiento y la consulta de la informacin almacenada en base de datos de forma segura y eficiente. Un SGBD acta como un intermediario entre las aplicaciones y los datos.
3/13/12
3/13/12
dato
de
Actores en un Sistema Gestor de Base de Datos El gestor de la base de datos Se trata de un conjunto de programas no visibles al usuario final que se encargan de la privacidad, la integridad, la seguridad de los datos y la interaccin con el sistema operativo. Proporciona una interfaz entre los datos, los programas que los manejan y los usuarios finales. Cualquier operacin que el usuario hace contra la base de datos est controlada por el gestor. El gestor almacena una descripcin de datos en lo que llamamos diccionario de datos, as como los usuarios permitidos y los permisos.
3/13/12
Diccionario de datos Es una base de datos donde se guardan todas las propiedades de la base de datos, descripcin de la estructura, relaciones entre los datos, etc. El diccionario debe contener:
La descripcin externa, conceptual e interna de la base de datos Las restricciones sobre los datos El acceso a los datos Las descripciones de las cuentas de usuario Los permisos de los usuarios 3/13/12
Usuarios de la categora DBA (administradores) Usuarios de tipo RESOURCE, que pueden crear sus propios objetos y tener acceso a los objetos sobre los que se les ha concedido permisos. Usuarios de tipo CONNECT, que
3/13/12
El administrador de la base de datos (DBA) Es una persona responsable del control del sistema gestor de base de datos. Las principales tareas de un DBA son:
La definicin del esquema lgico y fsico de la base de datos La definicin de las vistas de usuario La creacin de usuarios La asignacin y edicin de permisos para los usuarios Mantenimiento y seguimiento de la 3/13/12
Actores en un Sistema Gestor de Base de Datos Los lenguajes Un sistema gestor de base de datos debe proporcionar una serie de lenguajes para la definicin y manipulacin de la base de datos. Estos lenguajes son los siguientes: Lenguaje de definicin de datos (DDL). Para definir los esquemas de la base de datos Lenguaje de manipulacin de datos (DML). Para manipular los datos de la base de datos Lenguaje de control de datos (DCL). Para la administracin de usuarios y seguridad en la base de datos. 3/13/12
1. 2. 3. 4. 5.
6. 7.
8.
Seguridad de los datos Control o manipulacin de datos Actualizacin de los datos en lnea Reduccin de tiempos Mantener organizacin coherente de los datos Simplificacin del trabajo Generacin de informes a partir de los datos Accesos concurrentes a las BD
3/13/12
3/13/12
Ejecucin de una tarea por parte del SGBD Peticin de la aplicacin del usuario. Examen de la peticin en el marco del esquema externo del usuario.
3.
1.
2.
Transformacin del esquema externo al conceptual (lgico). Transformacin del esquema conceptual (lgico) al interno (fsico). Interaccin con el almacenamiento interno (fsico).
3/13/12 Envo de los datos a los buffers del SGBD.
4.
5.
6.
Participacin de la UNIDAD I
1.
Para que me sirve una Base de Datos? Cuales son los componentes de una Base de Datos? Cules son los programas que me permiten trabajar (crear, manipular, consultar) las Bases de Datos?, Menciona 2 nombres de este tipo de programas. Menciona y explica 3 funciones de los SGBD. Cules son los actores principales en un SGB? Cules son los lenguajes que se utiliza en un 3/13/12 SGBD?
1.
1.
1.
1.
1.
Elegir una situacin que requiera el diseo de una BD Hacer el anlisis de requerimientos para el diseo de la BD Disear la BD (Modelo de datos) Crear la BD Crear usuarios de acuerdo a los requerimientos Crear permisos a los usuarios Crear vistas para los usuarios finales Crear interfaces de usuarios Operaciones con la BD (Algebra relacional)
3/13/12
II.
Categoras de los modelos de datos Modelo de datos utilizando Entidad-Relacin Modelo Entidad-Relacin extendido y Modelado de Objetos
3/13/12
Qu es Abstraccin?
3/13/12
Vist an
Nivel Conceptual
SG BD
Nivel Fsico
3/13/12
INTERPRETA R
ABSTRAE R
3/13/12
MODEL
Qu es el Modelado de Datos?
Es la representacin de cosas del mundo real. Es una representacin de la realidad que contiene las caractersticas generales de algo que se va a realizar. En base de datos, esta representacin la elaboramos de forma grfica. Es una coleccin de herramientas conceptuales para describir los datos, las relaciones que existen entre ellos, semntica asociada a los datos y restricciones de consistencia.
3/13/12
Especificaciones, diseos o descripciones Especificaciones de un producto, de cosas descripcin del vuelo Lugares Transacciones Roles de la gente Contenedores de otras cosas Cosas en un contenedor Conceptos abstractos Eventos Reglas y Polticas Catlogo Registros Manuales, libros Tienda, Aeropuerto Venta, Pago, Reservacin Cajero, Piloto Tienda, Avin Artculo, Pasajero Enfermedades Venta, Robo, Reunin, Vuelo, Accidente Poltica devolucin, poltica cancelacin Catlogo productos, catlogo partes Recibos, Contratos, Bitcoras Manual reparacin, manual empleado
3/13/12
Para qu me sirve la abstraccin? Menciona los 3 niveles de abstraccin y quin acta en cada nivel? Qu es el modelado de datos? Menciona 3 categoras de conceptos que se pueden modelar y menciona un ejemplo de cada uno de ellos.
1.
1.
1.
3/13/12
Boleta de Calificaciones Credencial de Estudiante Persona Alumno Alumno egresado Nmero de expediente
3/13/12
grupos:
Modelos lgicos basados en objetos. Modelo Entidad-Relacin. Modelo Orientado a Objetos. Modelos lgicos basados en registros. Modelo Relacional. Modelo Jerrquico. Modelo de Red. Modelos fsicos de datos. Modelo UML (Unified Modeling Language). Modelo de memoria de elementos. 3/13/12
grupos:
Modelos lgicos basados en objetos. Modelo Entidad-Relacin. Modelo Orientado a Objetos. Modelos lgicos basados en registros. Modelo Relacional. Modelo Jerrquico. Modelo de Red. Modelos fsicos de datos. Modelo UML (Unified Modeling Language). Modelo de memoria de elementos. 3/13/12
El
modelo
E-R
se
basa
en
una
percepcin del mundo real, la cual esta formada entre por OBJETOS objetos de as estos BSICOS como las llamados entidades y las relaciones estos caractersticas objetos
llamados atributos.
3/13/12
Una entidad es un objeto que existe y se distingue de otros objetos de acuerdo a sus caractersticas llamadas atributos. Las entidades pueden ser concretas como una persona o abstractas como una fecha.
Entidad
3/13/12
Un conjunto de entidades es un grupo de entidades del mismo tipo. Por ejemplo el conjunto de entidades CUENTA, podra representar al conjunto de cuentas de un BANCO, o ALUMNO representa a un conjunto de entidades de todos los alumnos que existen en la UTSJR.
3/13/12
Una
entidad de
se en
y los
ocasiones que
propiedades,
3/13/12
Los atributos de una entidad pueden tomar un conjunto de valores permitidos al que se le conoce como dominio del atributo. As cada entidad se describe por medio de un conjunto de parejas formadas por el atributo y el valor de dato. Habr una pareja para cada atributo del conjunto de entidades.
3/13/12
Hacer una descripcin en pareja para la entidad alumno con los atributos Expediente, Nombre y Carrera. Atributo, Valor Expediente, 0208MTI-S034 Nombre, Snchez Osuna Ana Carrera, TIC O considerando el ejemplo de un Empleado cuyos atributos son: RFC, Nombre, Salario. Atributo, Valor RFC, COMD741101YHR Nombre, Daniel Coln Morales Salario, 3000
3/13/12
3/13/12
Cur sa Materia
Padr es Padre
3/13/12
Menciona los 3 niveles de abstraccin y quin acta en cada nivel? Qu es el modelado de datos? Menciona 3 categoras de conceptos que se pueden modelar y menciona un ejemplo de cada uno de ellos. Menciona cmo se modelos de datos Menciona un clasificacin clasifican de los distintos de
3/13/12
1.
1.
1.
1.
Modelo
Datos
cada
Existen 2 tipos de limitantes que permiten establecer las validaciones necesarias para conseguir que los datos correspondan con la realidad.
1. 2.
3/13/12
Existen 4 tipos de relaciones que pueden establecerse entre entidades, las cuales establecen con cuantas entidades de tipo B se puede relacionar una entidad de tipo A:
1. 2. 3. 4.
Uno a uno (1:1) Uno a muchos (1:N) Muchos a uno (N:1) Muchos a muchos (N:N)
Modelo Entidad-Relacin (E-R) Tipos de relaciones UNO A UNO (1:1) Se presenta cuando existe una relacin como su nombre lo indica uno a uno, denominado tambin relacin de matrimonio. Una entidad del tipo A solo se puede relacionar con una entidad del tipo B, y viceversa.
A2-A A1-A A3-A A1-B A2-B A3-B
3/13/12
Modelo Entidad-Relacin (E-R) Tipos de relaciones Ejemplos: UNO A UNO (1:1) CONTRIBUYENTE RFC AUTOMOVIL EMPLEADO ALUMNO No. EXPEDIENTE PERSONA CURP PERSONA HUELLA DIGITAL
3/13/12
Modelo Entidad-Relacin (E-R) Tipos de relaciones UNO A MUCHOS (1:N) Significa que una entidad del tipo A puede relacionarse con cualquier cantidad de entidades del tipo B, y una entidad del tipo B solo puede estar relacionada con una entidad del tipo A.
A2-A A1-A A3-A A1-B A2-B A3-B
3/13/12
Modelo Entidad-Relacin (E-R) Tipos de relaciones Ejemplos: UNO A MUCHOS (1:N) CLIENTE CUENTAS EN UN BANCO PADRE HIJOS CAMIN PASAJEROS ZOOLGICO ANIMALES RBOL HOJAS
3/13/12
Modelo Entidad-Relacin (E-R) Tipos de relaciones MUCHOS A UNO (N:1) Indica que una entidad del tipo B puede relacionarse con cualquier cantidad de entidades del tipo A, mientras que cada entidad del tipo A solo puede relacionarse con una entidad del tipo B.
A2-A A1-A A3-A A1-B A2-B A3-B
3/13/12
Modelo Entidad-Relacin (E-R) Tipos de relaciones Ejemplos: MUCHOS A UNO (N:1) EMPLEADOS EMPRESA ALUMNOS ESCUELA FELIGRESES PARROQUIA CLIENTES BANCO CIUDADANOS CIUDAD
3/13/12
Modelo Entidad-Relacin (E-R) Tipos de relaciones MUCHOS A MUCHOS (N:N) Establece que cualquier cantidad de entidades del tipo A pueden estar relacionados con cualquier cantidad de entidades del tipo B.
A2-B A3-B
3/13/12
Modelo Entidad-Relacin (E-R) Tipos de relaciones Ejemplos: MUCHOS A MUCHOS (N:N) PROYECTOS ARQUITECTOS ESTUDIANTES MATERIAS PROFESORES ESCUELAS ENFERMOS SNTOMAS PROVEEDORES PRODUCTOS
3/13/12
IMPORTAN TE La cardinalidad para cada conjunto de entidades depende del punto de vista que se le de al modelo en estudio, claro esta, sujetndose a la realidad.
3/13/12
Refirindonos a las mismas entidades A y B, decimos que si la entidad A depende de la existencia de la entidad B, entonces A es dependiente de existencia por B, si eliminamos a B tendramos que eliminar por consecuente la entidad A, en este caso B es la entidad Dominante y A es la entidad subordinada.
3/13/12
La distincin de una entidad entre otra se debe a sus atributos, lo cual la hace nica. Una llave primaria es aquel atributo el cual consideramos clave para la identificacin de los dems atributos que describen a la entidad.
3/13/12
Nombre
Alumno
RFC Domicilio CURP No. Expediente
Ejercicios del Modelo E-R Horarios de clases. 2. Control de un inventario (Altas y bajas). 3. Recepcin, Atencin y Alta de pacientes en un hospital. 4. Elaborar Control de calificaciones de los los modelos y diagramas considerando: alumnos. 5. Inscripcin de alumnos. Anlisis de requisitos: Determinar las entidades necesarias y sus atributos. Utilizar la simbologa adecuada para la representacin del modelo E-R. Poner un nombre a la relacin entre entidades. En la simbologa, considerar la cardinalidad de las 3/13/12 relaciones.
1.
Ejercicios del Modelo E-R Horarios de clases. 2. Control de un inventario (Altas y bajas). 3. Recepcin, Atencin y Alta de pacientes en un hospital. 4. Elaborar Control de calificaciones de los los modelos y diagramas considerando: alumnos. 5. Inscripcin de alumnos. Anlisis de requisitos: Determinar las entidades necesarias y sus atributos. Utilizar la simbologa adecuada para la representacin del modelo E-R. Poner un nombre a la relacin entre entidades. En la simbologa, considerar la cardinalidad de las 3/13/12 relaciones.
1.
Modelo ER
Entidades:
1. 2. 3. 4. 5.
Horarios de clases
6. 7. 8.
Carreras (cve_carrera, nombre_carrera) Grupos (cve_grupo, nombre_grupo, cve_carrera) Alumnos (expediente, nombre_alumno, cve_grupo) Asignaturas (cve_asignatura, nombre_asignatura) Cargas Acadmicas (cve_grupo, cve_asignatura, cve_profesor) Salones (cve_salon, nombre_salon) Profesores (cve_profesor, nombre_profesor) Horarios (cve_grupo, cve_salon, da, hora_inicio, hora_fin)
3/13/12
Modelo ER
Relaciones:
1. 2. 3. 4. 5. 6. 7.
Horarios de clases
Grupos pertenecen a Carrera (1:1) (N:1) Alumnos se inscriben a Grupos (N:1) (1:N) Asignatura se carga a Carga Acadmica (1:N) (1:1) Grupo se carga a Carga Acadmica (1:N) (1:1) Profesor se carga a Carga Acadmica (1:N) (1:1) Saln se asigna a una Horario (1:N) (1:1) Grupo se asigna a un Horario (1:N) (1:1)
3/13/12
Diagrama E-R
Horarios de clases
3/13/12
Tipos de Atributos
3/13/12
Tipos de Atributos Atributos Compuestos Pueden dividirse en otros Atributos con significado propio
Da Mes Ao A. Pat A. Mat Nom
Gnero
Fecha nacimiento
Persona Nombre
Domicilio
Calle
Coloni a
Ciudad
Estado 3/13/12 CP
Tipos de Atributos
Atributos Simples
Gnero
Fecha nacimiento
Persona
Nombre
Domicilio
Calle
Coloni a
Ciudad
Estado CP 3/13/12
Tipos de Atributos Atributos Almacenados Son los atributos cuyos valores son almacenados directamente en la base de datos. Nacionalidad de una persona Nombre de una persona Fecha de nacimiento de una persona Cantidad de producto comprado Cantidad de producto vendido
3/13/12
Tipos de Atributos Atributos Calculados Valor calculado a partir de otra informacin ya existente (atributos, entidades relacionadas)
Edad
Existencias de un producto (cantidad de compra cantidad de venta) Cantidad de empleados (se calcula contando el nmero de entidades del tipo EMPLEADO)
una
3/13/12
Pueden tener lmites superior e inferior del nmero de valores por entidad Telfo (0, Telfono (0,3) no 3) Domicilio (0,2) Dependientes econmicos (0,5)
3/13/12
valor
del
No existe atributo
un
valor
para
el
3/13/12
Atributos de relaciones
Existe la posibilidad de que una relacin tenga atributos para calificarla. Por ejemplo: en un hotel
A1 A2 A3 A1 A2 A3
Persona
N: 1
Ocupa
Habitacin
Fecha Ingreso
Fecha Salida
Por lo general estos casos suelen derivar en nuevas entidades. As, la relacin OCUPA, con los atributos Fecha Ingreso y Fecha Salida, pueden ser una entidad HOSPEDAJE.
3/13/12
Atributos de relaciones
A1 A2 A3 A1 A2 A3
Persona
N: 1
Ocupa
Habitacin
N: N
Tiene
Hospedaje
Fecha Ingreso
Fecha Salida
3/13/12
Entidades:
1.
2. 3.
Cliente (nombre, rfc, direccin, fecha de alta, antigedad) Producto (nombre, cdigo, precio) Proveedor(rfc, nombre, direccin)
3/13/12
Relaciones:
1. 2.
3/13/12
Diagrama:
3/13/12
Ejercicio 2
DE
SE DESEA INFORMATIZAR LA GESTIN DE UNA EMPRESA TRANSPORTES QUE REPARTE PAQUETES POR TODA LA REPBLICA
Los encargados de llevar los paquetes son los camioneros, de los que se quiere guardar el rfc, nombre, telfono, direccin y salario. De los paquetes transportados interesa conocer el cdigo, descripcin, destinatario y direccin del destinatario. Un camionero distribuye muchos paquetes, y un paquete slo puede ser distribuido por un camionero. De los estados a los que llegan los paquetes interesa guardar el cdigo de estado y el nombre del estado. A un estado pueden llegar varios paquetes. Sin embargo, un paquete slo puede llegar a un estado. De los camiones que llevan los camioneros, interesa conocer la matrcula, modelo y capacidad. Un camionero puede conducir diferentes camiones en fechas diferentes. Un camin puede ser conducido por varios camioneros tambin en diferentes fechas.
3/13/12
Ejercicio 2 - Solucin
DE
SE DESEA INFORMATIZAR LA GESTIN DE UNA EMPRESA TRANSPORTES QUE REPARTE PAQUETES POR TODA LA REPBLICA
Entidades:
1.
2.
3. 4.
Camionero (rfc, nombre, telfono, direccin, salario) Paquete (cdigo, descripcin, destinatario y direccin del destinatario) Estado (cdigo, nombre) Camin (matrcula, modelo, capacidad)
3/13/12
Ejercicio 2 - Solucin
DE
SE DESEA INFORMATIZAR LA GESTIN DE UNA EMPRESA TRANSPORTES QUE REPARTE PAQUETES POR TODA LA REPBLICA
Relaciones:
1. 2. 3.
Camionero distribuye Paquete (1:N) Estado llega Paquete (1:N) Camionero conduce Camin (N:N)
3/13/12
Diagrama:
3/13/12
Para cada autor se tiene el cdigo de autor y el nombre. De cada libro se guarda el cdigo, ttulo, ISBN, editorial y nmero de pgina. Un autor puede escribir varios libros, y un libro puede ser escrito por varios autores. Un libro est formado por ejemplares. Cada ejemplar tiene un cdigo y una localizacin. Un libro tiene muchos ejemplares y un ejemplar pertenece slo a un libro. De cada usuario se guarda el cdigo, nombre, direccin y telfono. Los ejemplares son prestados a los usuarios. Un usuario puede tomar prestados varios ejemplares, y un ejemplar puede ser prestado a varios usuarios. De cada prstamos interesa guardar la fecha de prstamo y la fecha de devolucin.
3/13/12
El da Lunes 1 de junio, trabajar POR EQUIPO desarrollando un glosario de trminos y definiciones de lo que se ha visto hasta hoy de la Unidad II. Enviarlo en PDF por mail el Lunes 01 de junio de 2009 antes de las 12:00 hrs. RECUERDEN QUE CUENTA TAMBIEN LA PRESENTACIN Y LA ESTRUCTURA DEL DOCUMENTO. Slo contarn los enviados en esa fecha y hora. Estudiar el glosario por que el da Viernes 05 de junio de 2009, se entregar impreso para EXAMEN. Si no se recibi en la fecha y hora antes mencionada, no podrn presentar examen. 3/13/12
De cada jugador se quiere guardar el nombre, fecha de nacimiento y posicin en la que juega (portero, defensa, centrocampista, etc). Cada jugador tiene un cdigo de jugador que lo identifica de manera nica. De cada uno de los equipos de la liga es necesario registrar el nombre del equipo, nombre del estadio en el que juega, el ao de fundacin del equipo y la ciudad de la que es el equipo. Cada equipo tambin tiene un cdigo que lo identifica de manera nica. Un jugador solo puede pertenecer a un nico equipo. De cada partido que los equipos de la liga juegan hay que registrar la fecha en la que se juega el partido, los goles que ha metido el equipo de casa y los goles que ha metido el equipo de fuera. Cada partido tendr un cdigo numrico para identificar el partido. Tambin se quiere llevar un recuento de los goles que hay en cada partido y de cada gol, se quiere almacenar el minuto en el que se realizar el gol y la descripcin del gol. Un partido tiene varios goles y un jugador puede meter varios goles en un partido. Por ltimo se quiere almacenar, en la base de datos, los datos de los presidentes de los equipos de ftbol (CURP, nombre, fecha de nacimiento, equipo del que es presidente y ao en el que fue elegido presidente). Un equipo de ftbol tan slo puede tener un presidente, y una persona slo puede ser presidente de un equipo de la liga.
3/13/12
El Modelo Entidad-Relacin Extendido incluye todos cuenta los conceptos no del Entidad-Relacin una e incorpora otros nuevos. Habr que tener en que existe terminologa estandarizada para estos conceptos, por lo que usaremos la mas difundida.
3/13/12
3/13/12
Subclase y Superclase
En el modelo Entidad-Relacin, una entidad agrupa un conjunto de ocurrencias de entidad del mismo tipo. En muchos casos, estas ocurrencias se pueden agrupar a su vez en otros subconjuntos que tienen un significado propio para los propsitos de la Base de Datos y, por tanto, deberan representarse de forma explcita.
3/13/12
Subcontratad o . ..
Subclas es de Emplead o
3/13/12
Motociclet a Bicicleta . ..
Subclas es de Vehculo
3/13/12
Modelo Entidad-Relacin Extendido (E-R E) La relacin que se establece entre una Superclase y una Subclase, la llamaremos Relacin clase/subclase.
ES UN
ES UN TIPO DE
IS A
3/13/12
ES UN
Secretaria
Ingeniero
Tcnico
3/13/12
ES UN TIPO DE
Camin
Auto
Motocicleta
3/13/12
IS A
Mdico
Enfermera
Auxiliar
3/13/12
Modelo Entidad-Relacin Extendido (E-R E) Algunas consideraciones de Subclase y Superclase Una instancia de subtipo tambin es instancia del supertipo y es la misma instancia, pero con un papel especfico distinto.
Una instancia no puede existir slo por ser miembro de un subtipo: tambin debe ser miembro del supertipo Una instancia del supertipo puede no ser miembro de ningn subtipo
3/13/12
Las Subclases estn unidas mediante lneas a un circulo, que conecta con la superclase. El smbolo de pertenencia en las lneas entre las subclases y el circulo representan la direccin de la relacin clase/subclase.
3/13/12
Mdico
Enfermera
Auxiliar
3/13/12
Cuando hay atributos que slo tienen sentido para algunas instancias de un tipo y no para todas. Cuando hay tipos de relacin en los que slo participan algunas entidades de un tipo y no todas.
1.
3/13/12
Herenc ia
Una Subclase puede tener atributos propios y participar en relaciones por separado. Los atributos aplicables solamente a cada una de las Subclases, se denominan atributos especficos de la subclase. Una Subclase hereda todos los atributos de la Superclase, y todas las relaciones en las que participa la Superclase.
3/13/12
Herenc ia
nummoto r
precio
Vehculo
numejes
1: N Fabric a
Fabricant e
ES UN
tonelaje cilindraje
Camin
Auto
Motocicleta
numpuert as
1: 1
Lleva
numpuest os
Remolqu e
3/13/12
Especializaci n
El proceso por el que se definen las diferentes subclases de una superclase se conoce como especializacin. El conjunto de subclases se define basndonos en caractersticas diferenciadoras de las ocurrencias de entidad de la superclase. Podemos tener varias especializaciones de una misma entidad basndonos en distintos criterios o discriminantes.
3/13/12
Ejemplo de Especializacin
Supercla se Subclase s
Discrimina nte
Empleado
actividad
ES UN
Secretaria
Ingeniero
Tcnico
3/13/12
Ejemplo de Especializacin
Empleado
actividad
ES UN ES UN
contrato
Secretari a
Ingenier o
Tcnico
Temporal
Permanent e
3/13/12
Ejemplo de Especializacin
Vehculo
tipo
ES UN ES UN
Motor s/n
Camin
Auto
Motociclet a
Con motor
Sin motor
3/13/12
Generalizaci n
Proceso inverso de la especializacin. Suprimir diferencias entre varios tipos de entidad: identificar atributos y relaciones comunes, y formar una superclase que los incluyac
3/13/12
Ejemplo de Generalizacin
3/13/12
Se tiene la entidad Cta_Ahorro que tiene los atributos No_Cta, Saldo y Tasa_interes Cta_Cheques, tiene los atributos No_Cta y Saldo y Saldo_Deudor.
Ejercicio de Generalizacin
Cmo se puede Generalizar? No_Ct a Cta_Ah Saldo orro Tasa_ Intere s No_Ct a Cta_Che Saldo ques Saldo _Deu dor
3/13/12
Modelo Entidad-Relacin Extendido (E-R E) Actualmente el Hospital San Martn, cuenta con una base de datos que permita llevar el control de sus procesos, pero que desea eficientar, la BD est estructurada como sigue:
Ejercicio de Generalizacin
Para controlar a sus tipos de empleados, se manejan 4 entidades: mdico, enfermero, administrativo, intendente. Cada entidad, tiene como atributos, nmero de control, nombre completo, domicilio, telfono y salario. La entidad mdico, adicionalmente tiene los atributos nmero de cdula profesional y especialidad. 3/13/12 La entidad enfermero, adicionalmente tiene el
nfasis en las similitudes. Cada instancia de la superclase es tambin una instancia de alguno de los subtipos.
Especializacin
nfasis en las diferencias. Alguna instancia de la superclase puede no ser instancia de ninguna subclase.
3/13/12
Subtipos definidos por predicado o condicin Subtipos definidos por atributo Subtipos definidos por el usuario
Disyuncin/Solapamiento A cuntas subclases puede pertenecer (a la vez) una instancia de la superclase? Completitud/Parcialidad Debe toda instancia de la superclase pertenecer a alguna subclase?
3/13/12
Condicin de pertenencia a cada subtipo con base en el valor de algn atributo del supertipo.
Las instancias del subtipo deben satisfacer la condicin Todas las instancias del supertipo que cumplen la condicin, deben pertenecer al subtipo.
3/13/12
3/13/12
Todas las subclases definen la condicin de pertenencia en trminos del mismo atributo Es el discriminante de la especializacin
3/13/12
3/13/12
No existe (o no interesa definir) ninguna condicin de pertenencia a los subtipos El usuario, al insertar una instancia, elige a qu subtipo pertenece
3/13/12
3/13/12
Subtipos disjuntos si una instancia del supertipo puede ser miembro de, como mximo, uno de los subtipos (la condicin es excluyente).
3/13/12
Subtipos solapados si una instancia del supertipo puede ser, a la vez, miembro de ms de un subtipo Es la opcin por defecto.
3/13/12
Especializacin total (completa) indica que toda instancia del supertipo tambin debe ser instancia de algn subtipo.
3/13/12
Especializacin parcial indica que es posible que alguna instancia del supertipo no pertenezca a ninguno de los subtipos. Es la opcin por defecto. La unin de las extensiones de los subtipos no es la extensin del supertipo en su totalidad.
3/13/12
3/13/12
3/13/12
3/13/12
3/13/12
3/13/12
3/13/12
1.
INSERC IN Insertar una instancia en un supertipo implica insertarla en todos los subtipos definidos por predicado o por atributo, para los cuales satisface el predicado de definicin. Insertar una instancia en un supertipo de una especializacin total implica insertarla en, al menos, un subtipo. Y si la especializacin es disjunta, entonces la instancia se insertar en un nico subtipo.
3/13/12
2.
1.
ELIMINA CIN Eliminar una instancia de un supertipo implica eliminarla de todos los subtipos a los que pertenece Eliminar una instancia de un subtipo implica eliminarla del supertipo si la especializacin es:
1.
Disjunta y total, o bien Solapada y total, y la instancia ya slo pertenece al subtipo (se elimin del resto) 3/13/12
Todo subtipo participa en slo una relacin supertipo/subtipo. Un subtipo tiene un nico supertipo: es el concepto de rbol.
Un subtipo puede participar en varias relaciones supertipo/subtipo. Un subtipo puede tener ms de un supertipo.
3/13/12
3/13/12
En las jerarquas de especializacin Cada subtipo hereda atributos y relaciones de su (nico) supertipo directo y de sus supertipos predecesores, hasta la raz
Un subtipo hereda atributos y relaciones de sus supertipos(mltiples) directos (herencia mltiple) y de todos sus supertipos predecesores, hasta la raz
3/13/12
Renombrar algunos de los atributos en conflicto: BECARIO hereda ambos atributos: jornada corresponde a jornada de EMPLEADO y jornadaEstudio corresponde a jornada de ESTUDIANTE
2.
3.
Nombrar a cada atributo antecediendo el nombre de la entidad propietaria BECARIO hereda ESTUDIANTE.jornada y EMPLEADO.jornada
3/13/12
Algunos modelos de datos permiten indicar que ciertos atributos del supertipo no deben ser heredados por los subtipos. En el modelo ECR , las categoras son mostradas en el diagrama como hexgonos, conectados al supertipo con un smbolo de subconjunto dibujado sobre la lnea. Los atributos compartidos son conectados al supertipo y los atributos de categora no compartidos son conectados al hexgono.
3/13/12
RECTNGULO
rea
lado
CUADRADO
3/13/12
rea
R3
R2
INCORRECT O
INCORRECT O
3/13/12
Surge la agregacin.
Permite combinar varios tipos de entidad, relacionados mediante un tipo de relacin, para formar un tipo de entidad agregada de nivel superior. til cuando el tipo de entidad agregado debe relacionarse con otros tipos de entidad.
3/13/12
Esquema que almacena informacin sobre las entrevistas que una empresa de reclutamiento organiza entre solicitantes de empleo y diferentes empresas.
MODELAR LO SIGUIENTE Algunas entrevistas dan lugar a ofertas de empleos y otras no.
3/13/12
IMPORTANTE Para que existan instancias de una relacin, es necesario que exista una entidad donde se almacenen.
3/13/12
NO es posible establecer una relacin entre varias relaciones ni entre relaciones y entidades ERR 3/13/12 OR
3/13/12
Esquema que almacena informacin acerca de profesores y las asignaturas que stos imparten.
Agregar al modelo los diversos medios que utilizan para impartir cada asignatura (pizarra, transparencias, etc.)
3/13/12
NO es posible establecer una relacin entre varias relaciones ni entre relaciones y entidades ERR 3/13/12 OR
3/13/12
Con la relacin ternaria se vinculan, a la vez, tres instancias: una de cada entidad participante. Para indicar que un profesor para una misma asignatura emplea tantos medios, se necesitan tantas instancias de la relacin de tipo (profesor, asignatura, medio). Con la agregacin se vincula por un lado a cada profesor con las asignaturas que imparte 3/13/12 y, por otro lado, se liga cada par
Modelado Conceptual de Objetos mediante Diagramas de clase UML El Lenguaje Unificado de Modelado (Unified Modeling Language, UML) es un lenguaje estndar para escribir planos de software.
UML puede utilizarse para visualizar, especificar, construir y documentar un sistema que involucra una gran cantidad de software.
UML es slo un lenguaje y por tanto es tan slo una parte de un mtodo de desarrollo de software.
3/13/12
Especificar: Cubre la especificacin de todas las decisiones de anlisis, diseo e implementacin que deben realizarse al desarrollar y desplegar un sistema .
Construir: Sus modelos pueden conectarse de forma directa a una gran variedad de lenguajes de programacin. Java, C++ o Visual Basic, o incluso a tablas en una base de datos.
Documentar: Requisitos. Arquitectura. Diseo. Cdigo fuente. Planificacin de proyectos. Pruebas. Prototipos. Versiones.
3/13/12
UML est pensado principalmente para sistemas con gran cantidad de software. Ha sido utilizado de forma efectiva en dominios tales como: Sistemas de informacin de empresa. Bancos y servicios financieros. Telecomunicaciones. Transporte. Defensa/industria aeroespacial. Comercio. Electrnica mdica. mbito cientfico. Servicios distribuidos basados en la Web.
3/13/12
Los bloques bsicos de construccin de UML Las reglas que dictan cmo se pueden combinar estos bloques bsicos Mecanismos comunes que se aplican a travs de UML.
3/13/12
1.
1.
Bloques de construccin de UML El vocabulario de UML incluye tres clases de bloques de construccin: Elementos. Relaciones. Diagramas. Los elementos son abstracciones que son Haga clic para modificar el estilo de subttulo del primera clase en un ciudadanos de patrn modelo; las relaciones ligan estos elementos entre s; los diagramas agrupan colecciones interesantes de elementos.
3/13/12
Elementos en UML.
Hay cuatro tipos de elementos en UML: Elementos estructurales. Elementos de comportamiento. Elementos de agrupacin. Haga clic para modificar el estilo de Elementos de subttulo del patrnanotacin.
3/13/12
Relaciones en UML.
Hay cuatro tipos de relaciones en UML: Dependencia. Asociacin. Generalizacin. Haga clic para modificar el estilo de Realizacin. subttulo del patrn
3/13/12
Diagramas en UML.
Un diagrama es la representacin grfica de un conjunto de elementos, visualizado la mayora de las veces como un grafo conexode nodos (elementos) y arcos (relaciones). Los diagramas se dibujan para visualizar un sistema desde diferentes perspectivas, de forma que un diagrama es una de Haga clic para modificar el estilo proyeccin de un sistema. Para todos los sistemas, excepto subttulo del patrn los ms triviales, un diagrama representa una vista resumida de los elementos que constituyen un sistema.
3/13/12
Diagrama de clases. Diagrama de objetos. Diagrama de casos de uso. Diagrama de secuencia. Diagrama de colaboracin. Diagrama de estados (statechart). Diagrama de actividades. Diagrama de modificar el estilo de Haga clic para componentes. Diagrama de despliegue. subttulo del patrn
3/13/12
Reglas de UML
UML tiene reglas semnticas para: Nombres: Cmo llamar a los elementos, relaciones y diagramas. Alcance: El contexto que da un significado especfico a un nombre. Risibilidad: Cmo se pueden ver y utilizar esos nombres por otros. Integridad: Cmo se relacionan apropiada y consistentemente unos elementos con otros. Haga clic Qu significa ejecutarestilo de un modelo Ejecucin: para modificar el o simular subttulo del patrn dinmico.
3/13/12
Un edificio se hace ms simple y ms armonioso al ajustarse a un patrn de caractersticas comunes. Una casa puede construirse, en su mayor parte, de estilo Victoriano o francs utilizando ciertos patrones arquitectnicos que definen esos estilos. Lo mismo es cierto para UML. Este de Haga clic para modificar el estilose simplifica mediante la patrn subttulo del presencia de cuatro mecanismos comunes que se aplican de forma consistente a travs de todo el lenguaje:
Especificaciones. Adornos. Divisiones comunes. Mecanismos de extensibilidad.
3/13/12
MODELO RELACIONAL
Conceptos del Modelo Relacional Restricciones Relacionales Integridad de Entidades, Integridad Referencial y Claves Externas
Transformacin de E-R a Modelo Relacional Transformacin de los conceptos de E-R extendido en relaciones
3/13/12
MODELO RELACIONAL
CARACTERSTICAS
Est basado en la teora de conjuntos. Los datos se almacenan como tablas y los usuarios entienden con mayor facilidad. Todas las entradas de cualquier columna son de un solo tipo. Cada columna posee un nombre nico, el orden de las comunas no es de importancia para la tabla, las columnas de una tabla se conocen como atributos. No existen 2 filas en la tabla 3/13/12 sean que
RELACIN: Puede ser vista como una tabla. Se define por R. TUPLAS: Son los elementos o filas de una relacin. Se definen por d. ATRIBUTOS: Son los nombres de las columnas de la relacin o tabla. El conjunto (ordenado) de todos los atributos de una relacin R es el esquema de R. Nos podemos referir a los atributos de una relacin mediante su nombre o por la posicin (nmero de columna) que el atributo ocupa en el esquema de la relacin. DOMINIO: Es la coleccin de valores posibles para un determinado atributo. Se define por D. GRADO O ARIDAD DE LA RELACIN: Nmero de atributos de la relacin. CARDINALIDAD DE LA RELACIN: Es el nmero de tuplas de la relacin.
3/13/12
3/13/12
MODELO RELACIONAL CONCEPTOS DEL MODELO RELACIONAL Una relacin consta de 2 partes: cabec era cuer po
ID 1 2 3 4 5 PROFESOR CURSO Isabel Marcos Vernica Clara Martha Bases de datos Fsica Modelado Matemticas Lingstica AO DEPARTAMENTO 1991 Informtica 1994 Ciencias 1995 Informtica 1994 Ciencias 1990 Lexicografa
3/13/12
3/13/12
Semntica Inteligente: Es aquella que tiene significado por s misma, independientemente de que sea o no la clave, es decir que el o los atributos que la conformen contengan valores que describan "realmente" a la entidad reflejada en la tupla, por ejemplo, los apellidos o el DNI en una relacin que denote personas Subrogada: Es una clave arbitraria cuya nica funcin es la de identificar la entidad designada por la tupla.
3/13/12
Ejemplo:
ID 1 2 3 4 5
PROFESOR CURSO Isabel Marcos Vernica Clara Martha Bases de datos Fsica Modelado Matemticas Lingstica
AO DEPARTAMENTO 1991 Informtica 1994 Ciencias 1995 Informtica 1994 Ciencias 1990 Lexicografa
3/13/12
3/13/12
INCONVENIENTES
La cantidad de informacin redundante sera totalmente inaceptable para Mayor necesidad de almacenamiento masivo. Retardo de todas las operaciones con los datos.
3/13/12
SOLUCIN CON EL MODELO RELACIONAL El modelo relacional ofrece una buena solucin a este problema, que nos permite reducir la redundancia de datos al mnimo y agilizar las operaciones de consulta y actualizacin. Lo que deberamos hacer es separar la informacin que se refiere a las tres entidades que tenemos (profesores, cursos y departamentos) en tres
3/13/12
RESTRICCIONES RELACIONALES
RELACIONES BASE
3/13/12
MODELO RELACIONAL RESTRICCIONES RELACIONALES UNO A UNO UNO A MUCHOS MUCHOS A UNO MUCHOS A Las interrelaciones de uno a muchos se MUCHOS implementan mediante el uso de claves ajenas, tambin llamadas externas o forneas (foreign keys). Una clave ajena es un atributo de una relacin R2, cuyos valores han de concordar con los de alguna clave primaria en otra relacin R1. R1 y R2 no han de ser necesariamente distintas.
3/13/12
3/13/12
MODELO RELACIONAL CLAVES EXTERNAS R1 y R2 no han de ser necesariamente distintas. Emple ado ID_Empl eado Nombre Puesto Sueldo ID_Jefe 1 Emple ado ID_Empl eado Nombre Puesto Sueldo ID_Jefe
Ejempl o1
3/13/12
MODELO RELACIONAL CLAVES EXTERNAS R1 y R2 no han de ser necesariamente distintas. Alu mno NoExpedie nte Nombre Carrera Cuatrimest re NoExp_Jefe Gpo 1 Alu mno NoExpedie
Ejempl o2
MODELO RELACIONAL CLAVES EXTERNAS R1 y R2 no han de ser necesariamente distintas. Activid ades 1 Activid ades ID_Activida
MODELO RELACIONAL INTEGRIDAD RELACIONAL Con este nombre se designa aquellas reglas que han de ser aplicadas a una base de datos para asegurar que los datos introducidos sean consistentes con la realidad que pretenden modelar. Existen dos reglas generales que aporta el modelo relacional. Estas dos reglas son muy simples, y son las siguientes:
Regla de integridad de las entidades: ningn componente de la clave primaria de una relacin base puede aceptar valores nulos.
3/13/12
Esta regla impide la existencia de una tupla sin identificador nico. REGLA DE INTEGRIDAD REFERENCIAL Impide que, por ejemplo, en nuestra base de datos acadmica, exista un profesor adscrito a un departamento inexistente, o un curso impartido por un profesor inexistente. Hemos de recordar que
3/13/12 slo los
MODELO RELACIONAL INTEGRIDAD RELACIONAL RESTRICCIONES DE INTEGRIDAD DEFINIDAS POR EL USUARIO Adems, muchos DBMS aaden un buen nmero de caractersticas que ayudan al DBA a mantener ms fcilmente la integridad de los datos. Mediante estos mecanismos es posible aadir reglas especficas para cada base de datos; stas son las denominadas restricciones de integridad definidas por el usuario. Por ejemplo, podramos determinar que un profesor no pueda ser menor de x aos o que un curso slo pueda 3/13/12
MODELO RELACIONAL TRANSFORMACIN DEL MER AL MODELO RELACIONAL Para transformar un modelo entidad-relacin a modelo relacional seguiremos las
siguientes reglas:
1. 2.
3.
4.
Toda entidad del modelo entidad-relacin se transforma en una tabla. Cualquier atributo de una entidad se transforma en un campo dentro la tabla, manteniendo las claves primarias. Las relaciones N:M se transforman en una nueva tabla que tendr como clave primaria la concatenacin de los atributos clave de las entidades que relaciona. En las relaciones 1:N se pueden tener dos casos: Si la entidad que participa con cardinalidad mxima uno lo hace tambin con cardinalidad mnima uno, entonces se propaga el atributo de la entidad que tiene cardinalidad mxima 1 a la que tiene cardinalidad mxima N, desapareciendo el nombre de la relacin. Si existen atributos en la relacin stos tambin se propagarn. Si la entidad que participa con cardinalidad mxima uno lo hace tambin cardinalidad mnima cero, entonces se crea una nueva tabla formada por las claves de cada entidad y los atributos de la relacin. La clave primaria de la nueva tabla ser el identificador de la entidad que participa con cardinalidad mxima N.
3/13/12
6.
7.
En el caso de las relaciones 1:1 tambin pueden darse dos casos: Si las entidades poseen cardinalidades (0,1), la relacin se convierte en una tabla. Si una de las entidades posee cardinalidad (0,1) y la otra (1,1), conviene propagar la clave de la entidad con cardinalidad (1,1) a la tabla resultante de la entidad con cardinalidad (0,1). Si ambas entidades poseen cardinalidades (1,1) se puede propagar la clave de cualquiera de ellas a la tabla resultante de la otra. En el caso de las relaciones N-arias se aplica la misma regla que para las relaciones N:M. En el caso de las relaciones reflexivas supondremos que se trata de una relacin binaria con la particularidad que las dos entidades son iguales y aplicaremos las reglas vistas en los puntos anteriores.
3/13/12
MODELO RELACIONAL TRANSFORMACIN DEL MER AL MODELO RELACIONAL EJEMPLO REGLA 3: Las relaciones N:M se transforman en
una nueva tabla que tendr como clave primaria la concatenacin de los atributos clave de las entidades que relaciona.
En este caso la relacin compra se transforma en una nueva tabla cuya clave primaria estar formada por los atributos dni, que es la clave primaria de cliente, y cdigo, que es la clave primaria de producto. Adems tendr como campo fecha compra, ya que este atributo forma parte de la relacin. El modelo relacional quedara de la siguiente forma: CLIENTE(dni,nombre,apellidos) PRODUCTO(cdigo,descripcin) COMPRA(dni_cliente,cdigo_producto,fecha_compra)
3/13/12
MODELO RELACIONAL TRANSFORMACIN DEL MER AL MODELO RELACIONAL EJEMPLO REGLA 4: En las relaciones 1:N se pueden tener dos casos:
Veamos ahora el caso de una relacin 1:N. En el siguiente modelo entidadrelacin un empleado pertenece a un nico departamento (debe pertenecer a uno obligatoriamente), y un departamento tiene 1 o ms empleados.
En este caso se propaga el atributo cdigo de departamento a la tabla EMPLEADO. El modelo relacional quedara de la siguiente manera: EMPLEADO(rfc,nombre,salario,cdigo_departamento) DEPARTAMENTO(cdigo,nombre,ubicacion)
3/13/12
MODELO RELACIONAL TRANSFORMACIN DEL MER AL MODELO RELACIONAL EJEMPLO REGLA 4: En las relaciones 1:N se pueden tener dos casos:
Imaginemos ahora que pudiera darse el caso de que hubiera empleados que no pertenecieran a ningn departamento.
En este caso la entidad que participa con cardinalidad mxima 1, DEPARTAMENTO, tambin lo hace con cardinalidad mnima 0, ya que puede haber empleados que no pertenezcan a ningn departamento. As pues, se crea una nueva tabla formada por rfc de EMPLEADO y cdigo de DEPARTAMENTO. En esta nueva tabla rfc de EMPLEADO ser la clave primaria. El modelo relacional quedara de la siguiente forma: EMPLEADO(rfc,nombre,salario) DEPARTAMENTO(cdigo,nombre,ubicacion) 3/13/12 PERTENECE(rfc_empleado,cdigo_departamento)
MODELO RELACIONAL TRANSFORMACIN DEL MER AL MODELO de las relaciones 1:1 tambin pueden darse dos casos: EJEMPLO REGLA 5: En el caso RELACIONAL
En el siguiente modelo entidad-relacin un equipo de ftbol tiene a un nico presidente y un presidente preside a un nico club de ftbol.
En este ejemplo, tal y como dicen las reglas, podemos propagar la clave de cualquier tabla a la tabla resultante de la otra. Es decir, tenemos dos opciones, o mover la clave de PRESIDENTE a EQUIPO o mover la clave de EQUIPO a PRESIDENTE. El modelo relacional podra quedar de cualquiera de las dos formas siguientes: EQUIPO(cdigo,nombre,ao_fundacin) PRESIDENTE(dni,nombre,cdigo_equipo) EQUIPO(cdigo,nombre,ao_fundacin,dni_presidente) 3/13/12 PRESIDENTE(dni,nombre)
MODELO RELACIONAL TRANSFORMACIN DEL MER AL MODELO una relacin binaria con la particularidad que las dos EJEMPLO REGLA 7: se trata deRELACIONAL
entidades son iguales y aplicaremos las reglas vistas en los puntos anteriores. En el siguiente modelo entidad-relacin un ALUMNO es jefe de grupo de varios ALUMNOS y un ALUMNO tiene obligatoriamente un jefe de grupo y slo a uno.
Como podemos observar en las reglas de transformacin, en este caso la relacin reflexiva se trata como si fuera una relacin binaria con la particularidad de que las dos entidades son iguales. Al tratarse de una relacin 1:N se propagar la clave de la entidad ALUMNO a la entidad ALUMNO, quedando el modelo relacional de la siguiente forma: ALUMNO(num_expediente,nombre,num_expediente_dele gado)
3/13/12
IV.
LGEBRA RELACIONAL
Introduccin al Algebra Relacional Operaciones del Algebra Relacional Seleccionar Proyectar Renombrar De la Teora de Conjuntos Unin Interseccin Diferencia Producto Cruzado Reunin Reunin Natural Divisin Operaciones Adicionales Funciones agregadas De cierre recursivo Reunin externa Unin externa
3/13/12
IV.
LGEBRA RELACIONAL
Introduccin al Algebra Relacional
El lgebra relacional consiste de algunas simples pero poderosas maneras de construir nuevas relaciones a partir de otras. Si pensamos que las relaciones iniciales son los datos almacenados entonces las nuevas relaciones se pueden ver como respuestas a algunas consultas deseadas. Es la manera de hacer consultas a una base de datos empleando algunos conceptos matemticos aplicados a un esquema relacional.
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional
Seleccionar Proyectar Renombrar De la Teora de Conjuntos Unin Interseccin Diferencia Producto Cruzado Reunin Reunin Natural Divisin
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Seleccionar (sigma) Crea una nueva relacin a partir de otra, pero incluyendo slo algunas de las tuplas a partir de un criterio dado. El criterio se basa en restricciones sobre los atributos de la relacin R y no pueden incluirse otras relaciones en dicho criterio que no estn en R. Sintaxis Ax Condicin (R)
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Seleccionar (sigma)
Ttulo Star Wars Cacera Bajo la lluvia Ao 1977 1991 1992
Ejemplo 1: Mostrar las pelculas cuya duracin sea mayor igual a 100
Smbolo de Seleccionar
Ao 1977 1991
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Seleccionar (sigma)
Ttulo Star Wars Cacera Bajo la lluvia Ao 1977 1991 1992
Ejemplo 2: Mostrar las pelculas cuya duracin sea mayor igual a 100 y que sean del Estudio Fox
Duracin >= 100 and Estudio = Fox (Pelcula) Ttulo Star Wars Ao 1977 Duracin 124 Tipo color Estudio Fox
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Seleccionar (sigma)
Ttulo Star Wars Cacera Bajo la lluvia Ao 1977 1991 1992
Ejemplo 3: Mostrar las pelculas que se estrenaron entre los aos 1990 y 2009
Ao 1991 1992
Duracin 104 95
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Proyectar
(pi)
Crea una nueva relacin a partir de otra, pero incluyendo slo algunas de las columnas. Sintaxis A1, A3, A6 (R)
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Proyectar
(pi)
Ttulo Star Wars Cacera Bajo la lluvia Ao 1977 1991 1992
Smbolo de Proyectar
Ttulo
Atributos a mostrar
Ao 1977 1991
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Proyectar
(pi)
Ttulo Star Wars Cacera Bajo la lluvia Ao 1977 1991 1992
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Proyectar
(pi)
Ttulo Star Wars Cacera Bajo la lluvia Ao 1977 1991 1992
Ttulo, Duracin, Estudio (Pelcula) Ttulo Star Wars Cacera Bajo la lluvia Duracin 124 104 95 Estudio Fox Disney Paramount
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Renombrar
(ro)
Renombrar ya sea atributos o relaciones, facilita su interaccin y comprensin. Sintaxis Renombrar Relaciones s (R) Renombrar Atributos suponiendo R (A, B, C)
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Renombrar
Ttulo Star Wars Cacera Bajo la lluvia Ao 1977 1991 1992
(ro)
Smbolo de Renombrar
Filme (Pelcula)
Fil Duracin me
124 104 95
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Renombrar
Ttulo Star Wars Cacera Bajo la lluvia Ao 1977 1991 1992
(ro)
Pelcula (Ttulo, Ao, Minutos, Tipo, Estudio) (Pelcula) Ttulo Star Wars Cacera Bajo la lluvia Ao 1977 1991 1992
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Renombrar
Ttulo Star Wars Cacera Bajo la lluvia Ao 1977 1991 1992
(ro)
Ejemplo 3: Renombrar la Relacin Pelcula como Filme y al mismo tiempo el atributo Duracin como Minutos.
Filme (Ttulo, Ao, Minutos, Tipo, Estudio) (Pelcula) Ttulo Star Wars Cacera Bajo la lluvia Ao 1977 1991 1992
Fil Minutos me
124 104 95
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Renombrar
Ttulo Star Wars Cacera Bajo la lluvia Ao 1977 1991 1992
(ro)
Ejemplo 4: Utiliza la Proyeccin para Renombrar el atributo Ao como Estreno mostrando solo el Ttulo y Estreno.
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Asignacin
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Teora de Conjuntos
Son operaciones binarias. Su resultado es otra relacin. R y S deben tener esquemas idnticos. El orden de las columnas debe ser el mismo.
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Unin
R S: La Unin entre dos relaciones R y S nos da todas las tuplas tanto de R como de S, eliminando las que estn repetidas.
RESULTADO R S
RESULTADO
Ao
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Interseccin
R S: La Interseccin entre dos relaciones R y S nos da todas las tuplas comunes a R y S, eliminando las que estn repetidas.
RESULTADO R S
R S
Ao
RESULTADO
Ao
1977
Ao 1991
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Diferencia
R - S: La Diferencia entre dos relaciones R y S nos da todas las tuplas de R que no estn en S.
RESULTADO R-S
R RESULTADO S
Ao
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Teora de Conjuntos
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Producto Cartesiano
R S: El resultado del producto cartesiano consta de todas las combinaciones posibles de cada tupla de R seguida de otra de S. Es decir:
A 1 3
Tiene todos los atributos de R y S; primero los de R y seguidos los de S. S R Tiene n*m tuplas; siendo n el nmero de tuplas A R.B D B R y m el nmero de tuplas de S. S.B C B C D de 1 2 S2 5 6 2 2 5 6 1 2 4 7 8 4 4 7 8 1 2 9 10 11 9 10 11 3 4 2 5 6 3 4 4 7 8 3 4 9 10 11
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Ejercicios
Obtener:
a)
b)
c)
d)
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Ejercicios
a)
ALUMNO PROFESOR
d)
PROFESOR ALUMNO
c)
ALUMNO PROFESOR
b)
ALUMNO PROFESOR
3/13/12
IV.
LGEBRA RELACIONAL
Operaciones del Algebra Relacional Ejercicios
PelculaEstudio = { <1,La guerra de las galaxias,1977,3,1,Ghibli>, <1,La guerra de las galaxias,1977,3,2,New Line Cinema>, <1,La guerra de las galaxias,1977,3,3,Lucasfilms>, <1,La guerra de las galaxias,1977,3,4,Sogecine>, <2,La comunidad del anillo,2001,2,1,Ghibli>, <2,La comunidad del anillo,2001,2,2,New Line Cinema>, <2,La comunidad del anillo,2001,2,3,Lucasfilms>, <2,La comunidad del anillo,2001,2,4,Sogecine>, <3,Mar adentro,2004,4,1,Ghibli>, <3,Mar adentro,2004,4,2,New Line Cinema>, ... }
3/13/12
IV.
R | | <condicin de reunin>S
3/13/12
IV.
LGEBRA RELACIONAL Operaciones del Algebra Relacional Reunin | | <condicin de reunin> Pelc Direct Ttulo Ao Dir Cve_Director Director or ula Tipo Estudio
1977 1991
1 1
color color
Fox Disney
1 2
Smith Charlie
3 Beny Bajo la 1992 3nombre deParamount el nombre del Estudio y el nombre del color la Pelcula, Ejemplo 1: Obtener el lluvia Director.
Pelcula
| | Dir=Cve_Director Director Se lee: Reunin entre Pelcula y Director con Dir= Cve_director
3/13/12
IV.
LGEBRA RELACIONAL Operaciones del Algebra Relacional Reunin | | <condicin de reunin> Pelc Direct Ttulo Ao Dir Cve_Director Director or ula Tipo Estudio
1977 1991
1 1
color color
Fox Disney
1 2
Smith Charlie
3 Beny Bajo la 1992 3nombre deParamount el nombre del Estudio y el nombre del color la Pelcula, Ejemplo 1: Obtener el lluvia Director.
TEMPORAL
Pelcula
| | Dir=Cve_Director Director
Ao 1977 1991 Dir 1 1
TEMPORA L
Tipo
color color
IV.
TEMPORA L
Tipo
color color
TEMPORAL RESULTADO
Ejemplo 1: Obtenerlluvia 1992 de 3 Pelcula, el nombre del Estudio y Beny la color Paramount el nombre del Bajo la el nombre 3 Director.
Pelcula
| | Dir=Cve_Director Director
3/13/12
IV.
LGEBRA RELACIONAL Operaciones del Algebra Relacional Reunin | | <condicin de reunin> Proyec Departame Reponsa Cve_dep Nom_dep Proyecto cve_proy responsable Cve_resp bles Depto Nombre tos ntos
1 2 3 4
2 1 1 3
1 2 3
1 5 2
1 2 3 4
Vinculacion 5 2 5 Sistemas Ejemplo 2: Obtener el nombre del Proyecto, el nombre del Responsable y el nombre del Departamento.
IV.
2.
Calcular el Producto Cartesiano R S. Para cada atributo Ai comn, se seleccionan las filas en las que el valor R.Ai coinciden con el valor S.Ai. Realizada la seleccin, eliminar la columna S.Ai Sintax is R | |S
3/13/12
IV.
S
C 5 7 10 D 6 8 11
2 4
9
A 1 1 1 3 3 3 5 5 5
R R.B S.B 2 2 S4 2
2 4 4 4 2 2 2 9 2 4 9 2 4 9
C 5 7 10 5 7 10 5 7 10 D 6 8 11 6 8 11 6 8 11
R.B = S.B (R
C 5 7 5 D 6 8 6
S)
A R.B S.B 1 2 2 3 4 4 5 2 2
A 1 3 5 B 2 4 2 C 5 7 5 D 6 8 6
3/13/12
IV.
LGEBRA RELACIONAL Operaciones del Algebra Relacional Divisin R S: Operacin del Algebra Relacional que crea una nueva relacin, seleccionando las filas en una relacin que corresponden con todas las filas en otra relacin. El grado de R Suponer las siguientes tablas: debe ser mayor que el grado de S.
Producto s Cdigo
Producto 1035 2241 2249 2518
Comercial es
3/13/12
IV.
LGEBRA RELACIONAL Operaciones del Algebra Relacional Divisin Si dividimos la Tabla COMERCIALES entre la Tabla PRODUCTOS obtendremos como resultado una tercera tabla en la que: Los campos que contiene son aquellos de la Tabla COMERCIALES que no existen en la Tabla PRODUCTOS. En este caso el campo Cdigo Comercial es el nico de la Tabla COMERCIALES que no existen en la Tabla PRODUCTOS.
IV.
3/13/12
IV.
3/13/12
V.