videoclub base de datos
TRANSCRIPT
P. UNIVERSIDAD CATLICA DE VALPARASO FACULTAD DE INGENIERA ESCUELA DE ING. INFORMTICA
Base de DatosUsuario A Programa de Aplicacin Bodega Usuario B Usuario N Insumo
Proveedor
Profesor: Jos Miguel Rubio L.
ndice de ContenidosIntroduccin a las Bases de DatosEl Recurso Dato Dato v/s Informacin Historia de las Bases de Datos Componentes de un ambiente de Base de Datos Beneficios & Riesgos del uso de Base de Datos Sistema de archivos v/s Bases de Datos Bases de Datos y Desarrollo de Sistemas de Informacin
Base de Datos
2
ndice de ContenidosSistemas de Gestin de Base de DatosConceptos Principales funciones Ventajas de utilizar SGBD Consideraciones del uso de un SGB
Base de Datos
3
ndice de ContenidosModelamiento de una Base de DatosModelo Conceptual: Entidad Relacin Asociaciones entre entidades, Cardinalidad de Asociaciones Claves candidatas y claves primarias, Atributos multivaluados Reglas del Negocio Modelo Lgico: Relacional Modelo Lgico Transformacin de entidades y relaciones Proceso de Normalizacin de Relaciones Anlisis de vistasBase de Datos 4
ndice de ContenidosMetodologa para el desarrollo de una BDIdentificacin y Formulacin de Requerimientos Diseo Conceptual Diseo Lgico Diseo Fsico
Base de Datos
5
Definir Diseo de la Base de DatosRealidad Requisitos de Datos Modelo Externo Modelo Conceptual Modelo Lgico Modelo Fsico
Diseo Conceptual Esquema Conceptual Diseo Lgico Esquema Lgico Diseo Fsico Esquema FsicoBase de Datos
6
Otras Representaciones
Y Formas de Notacin
Base de Datos
7
Simbologa del MEREntidad: Los Tipos de Entidad representan objetos de la realidad. Adems se componen de atributos, los cuales representan las caractersticas de un tipo de entidad.Tipo de Entidad
Persona, Proceso, Despacho, Cliente, Producto.Ejemplo:Base de Datos
Factura,
Gua
de
8
Simbologa del MER Atributo: Elemento de un Dominio. Aporta mediante su rtulo, la semntica de los valores del Dominio al que est asociado. Dominio Atributo
Ejemplo: Rut, nombre, departamento, edad, tipo proyecto.Base de Datos 9
Simbologa del MER Atributo Compuesto: Corresponde a grupos de atributos que tienen afinidad en cuanto a su significado o a su uso . Atributo Componente 1 Atributo Compuesto Atributo Componente 2 ... Atributo Componente n Ejemplo: Direccin = calle + nmero + ciudad
Base de Datos
10
Simbologa del MER
Tipo de Entidad
Atributo identificador
Ejemplo: En Chile, para un tipo de entidad Persona, el identificador puede ser el Rut.
Base de Datos
11
Cardinalidad de una relacinCardinalidad Mxima (CM): es el nmero mximo de ocurrencias de una entidad B asociada con una entidad A. Cardinalidad Mnima (Cm): es el nmero mnimo de ocurrencias de una entidad B asociada con una entidad A. (mnimo, mximo) A R (mnimo, mximo) B
Base de Datos
12
Cardinalidad de una relacin
Pas
(1,n)
Pertenece
(1,1)
Continente
(0,n) Cliente
Solicita
(0,n) Producto
Base de Datos
13
Cardinalidad de Atributos Se define la Cardinalidad del Atributo A con respecto al tipo de entidad TE como: Card(A,TE)=( mnimo, mximo), con mnimo, mximo {0,...,n} y mnimo mximo. donde un elemento de A debe participar al menos mnimo veces, y a lo ms mximo veces en cada ocurrencia de TE. Tipo de Entidad Atributo (mnimo, mximo)
Ejemplo: el atributo telfono del tipo de entidad Persona puede tener Cardinalidad (0,3)Base de Datos 14
Relaciones con AtributosTipo de Entidad 1
Atributo 1
Tipo de Interrelacin
...Atributo n
Tipo de Entidad 1
Ejemplo: Tipo de Entidad 1 es Empleado, Tipo de Entidad 2 es Departamento, Tipo de Interrelacin es Trabaja para.Base de Datos 15
Mejorando la Versin Preliminar del MER:Atributos Multivaluados Relaciones N:M Eliminacin de Gerundio Modelamiento del tiempo Especificando Generalizacin
Base de Datos
16
Modelando atributos MultivaluadosAtributo Multivaluado: Es aquel que tiene ms de una ocurrencia para un determinado valor de la clave. El DBMS exige que univaluados o atmicos. Clave 1152 xxx yyy No son valores atmicos.Base de Datos 17
sus
tablas
tengan
valores
Modelando atributos MultivaluadosEjemplo:1era versin del MER
N Empleado Nombre Direccin Campo Multivaluado
Empleado
Habilidad
Base de Datos
18
Cmo eliminar atributos Multivaluados?Se elimina atributo multivaluado, con el
relacionamiento entre entidades m:n Ahora hay que eliminar el relacionamiento m.n.
Va a ser una entidad cuya clave primaria ser una clave compuesta por la clave primaria de Empleado y la clave primaria de Habilidad.
Base de Datos
Ejemplo: Empleado-habilidades ? ? Alumnos - Cursos 19
Eliminacin de Gerundio Qu es un Gerundio? Para eliminarlo, se crea una nueva entidad La clave de la nueva entidad, ser una clave compuesta por las claves de las entidades que lo generan, o podra ser tambin una nueva clave
Base de Datos
20
Eliminacin de GerundioNombre Direccin #Pedido Fecha CLIENTE
realiza
PEDIDO
#Producto
Descripcin
Cantidad
PRODUCTO
tiene
Precio
Tpo-Entrega #Proveedo r
tiene
PROVEEDOR
Nombre-Prov Base de Datos Dir-Prov 21
Eliminacin de GerundioNombre Direccin #Pedido Fecha CLIENTE
realiza
PEDIDO
#Producto #Producto Descripcin #Pedido PRODUCTO
tieneCantidad
es-asignado
LINEA PRODUCTO
Precio
Tpo-Entrega #Proveedor PROVEEDOR
tiene
Nombre-Prov Base de Datos Dir-Prov 22
Modelamiento del TiempoEjemplos:Trabajador Escalafn Precio Producto
Calidad Alumno Ejemplo: N producto N Producto Descripcin Precio
Producto
Fecha ? ?23
Se maneja colocando atributos multivaluadosBase de Datos
Conceptos: GeneralizacinTipo de Entidad Genrica
Tipo de Entidad Subconjunto 1
Tipo de Entidad Subconjunto ..n-1
Tipo de Entidad Subconjunto n
Ejemplo: el Tipo de entidad Persona es una generalizacin de cliente y empleado, en un Banco.Base de Datos 24
Cobertura en GeneralizacinLas jerarquas de generalizacin presentan la propiedad de cobertura. La cobertura puede ser parcial o total y exclusiva o superpuesta. La cobertura parcial o total permite especificar una restriccin entre el tipo de entidad genrica y sus tipos de entidad subconjunto, donde todos los elementos del tipo de entidad genrico deben pertenecer a alguno de sus tipos de entidad subconjunto (si es total), o no (si es parcial). La cobertura exclusiva o superpuesta permite especificar una restriccin entre los tipos de entidad subconjunto, donde los elementos que pertenecen a un tipo de entidad subconjunto pueden pertenecer tambin a otro tipo de entidad subconjunto (si es superpuesto) o no (si es exclusiva).Base de Datos 25
Cobertura en GeneralizacinConsideremos el caso de un banco cualquiera y una poltica respecto a las personas a considerar, y su calidad de empleados y clientes. 1)Todas las personas son empleados o clientes del banco, pero no ambas cosas simultneamente. Caso cobertura total y exclusiva En este caso hablamos de cobertura total (todas las personas estn clasificadas como empleados o clientes) y exclusiva (s una persona se clasifica como empleado, no puede clasificarse como cliente y al contrario ocurre lo mismo). Base de Datos 26
Cobertura en Generalizacin2)Todas las personas son empleados o clientes del banco, permitindose que un empleado sea a su vez cliente Caso cobertura total y superpuesta En este caso hablamos de cobertura total (todas las personas estn clasificadas como empleados o clientes) y superpuesta (no existe restriccin con respecto a la exclusividad).
Base de Datos
27
Cobertura en Generalizacin3) Hay personas, algunas de las cuales son empleados o clientes del banco, pero no ambas cosas simultneamente. Caso cobertura parcial y exclusiva En este caso hablamos de cobertura parcial (no todas las personas estn clasificadas como empleados o clientes) y exclusiva (s una persona se clasifica como empleado, no puede clasificarse como cliente y al contrario ocurre lo mismo).
Base de Datos
28
Cobertura en Generalizacin4) Algunas personas son empleados o clientes del banco, pudiendo ser ambas cosas.
Caso cobertura parcial y superpuesta En este caso hablamos de cobertura parcial (no todas las personas estn clasificadas como empleados o clientes) y sobrepuesta (si una persona se clasifica como empleado tambin puede clasificarse como cliente).
Base de Datos
29
Reglas del Negocio
El modelamiento de los datos es un proceso paso a paso en el cual en trminos del diagrama entidad relacin representamos las entidades que participan y parte de su semntica asociada, sin embargo, debe expresarse de alguna forma la integridad de los datos a travs de los denominados Reglas del Negocio que son especificaciones que preservan la integridad del modelo.
Base de Datos
30
Reglas del Negocio
Existen 4 tipos de reglas del negocio: 1) Los dominios 2) Integridad de las Entidades 3) Restricciones de la Integridad Referencial 4) Operaciones de Triggers
Base de Datos
31
Reglas del Negocio: Dominios1) Dominios: Son las restricciones de los valores vlidos para los atributos. Es un conjunto de todos los tipos de datos y rangos de valores que los atributos pueden asumir. Una definicin tpica de Dominio especifica las siguientes caractersticas de los atributos: a) b) c) d) e) f) g) h) Tipo de Dato Longitud Formato Rango Valores permitidos Significado Unicidad Si puede ser nuloBase de Datos
No es necesario que ests todas las caractersticas a la vez.
? ?32
Reglas del Negocio: Integridad2) Integridad de las Entidades: Cada ocurrencia de una entidad debe tener un identificador nico o clave primaria que no debe ser nulo, esto permite que cada ocurrencia desaparezca de la B.D cuando se realiza una eliminacin 3) Restricciones de la integridad Referencial: Se presenta cuando una entidad fuerte traspasa su valor de clave primaria a una entidad dbil Eliminacin en cascada. Asignacin de nulosBase de Datos 33
? ?
Reglas del Negocio: Trigger
Son reglas del negocio que controla la validez de las operaciones insercin, actualizacin y eliminacin de las ocurrencias de los atributos. El ambiente de un trigger puede estar limitado a los atributos de una entidad o hacerse extensivo a ms de una entidad.Base de Datos 34
Reglas del Negocio: TriggerUn trigger consta de los siguientes componentes: 1) Reglas del Usuario: Es una instruccin resumida de lo que va a controlar el trigger. 2) Evento: Es la operacin sobre el dato como insercin, eliminacin o actualizacin que inicia las operaciones. 3) Entidad: Indica el nombre de la entidad que va a ser acusada y/o modificada. 4) Condicin: Es la condicin que busca que la operacin trigger se active. 5) Accin: Es la accin de ser tomada cuando la operacin es activada.Base de Datos 35
? ?
Reglas del Negocio: Trigger
Base de Datos
36
Reglas del Negocio: TriggerEl suceso que gatilla el trigger determina el tipo de trigger, pudiendo definirse para las operaciones INSERT, UPDATE o DELETE, pudiendo gatillarse antes o despus. Finalmente, el nivel de los trigger puede ser la fila o la orden. Los valores dela orden, de la temporizacin y del nivel determinan el tipo del disparador. Hay un total de 12 tipos posibles: 3 rdenes, por 2 opciones de temporizacin, por dos niveles.
Base de Datos
37
Reglas del Negocio: Trigger
Base de Datos
38
Estrategia para Disear el MERSe debe hacer uso de los conceptos de abstraccin bsicos: clasificacin, agregacin y generalizacin. Para ello se pueden seguir los procesos siguientes. Identificar Tipos de Entidad y las relaciones que existen entre ellos. Descomponer un tipo de entidad en dos o ms tipos de entidad, relacionados o no, o participando en una estructura de generalizacin. Descomponer un tipo de interrelacin en varias. Identificar atributos para cada elemento. Definir identificadores para los tipos de entidad. Definir restricciones de cardinalidad y cobertura.39
1. 2.
3. 4. 5. 6.
Base de Datos
Estrategia para Disear el MER7. Verificar que el esquema resultante es correcto con respecto a la especificacin (representa toda la realidad descrita). 8. Verificar que el esquema es correcto con respecto al buen uso del modelo. 9. Analizar modificaciones al esquema
Base de Datos
40
EjercicioLa cadena de Video-Clubs Glob-Gusters ha decidido, para mejorar su servicio, emplear una base de datos para almacenar la informacin referente a las pelculas que ofrece en alquiler. Esta informacin es la siguiente: Una pelcula se caracteriza por su t ttulo, nacionalidad, productora y fecha (p.e., Quo Vadis , Estados Unidos , M.G.M. , 1955) . En una pelcula pueden participar varios actores (nombre, nacionalidad, sexo) algunos de ellos como actores principales. Una pelcula est dirigida por un director (nombre, nacionalidad) . De cada pelcula se dispone de uno o varios ejemplares diferenciados por un nmero de ejemplar y caracterizados por su estado de conservacin. Un ejemplar se puede encontrar alquilado a algn socio (DNI , nombre, direccin, telfono) . Se desea almacenar la fecha de comienzo del alquiler y la de devolucin. Un socio tiene que ser avalado por otro socio que responda de l en caso de tener problemas en el alquiler.
Base de Datos
41
Ejercicio
Base de Datos
42
ERROR: syntaxerror OFFENDING COMMAND: --nostringval-STACK: /Title () /Subject (D:20080922152751-0400) /ModDate () /Keywords (PDFCreator Version 0.9.5) /Creator (D:20080922152751-0400) /CreationDate (usuario) /Author -mark-