Download Producción Audiovisual
Document related concepts
Transcript
TEMA 4. BASES DE DATOS Aplicaciones ofimáticas Tomás Martínez Ruiz Curso 2014/2015 INDICE 2 INDICE 1. Concepto y objetivos de las bases de datos. 2. El sistema de gestión de la base de datos. 3. Modelos de datos. 3.1. Modelo de datos Entidad-Interrelación. 3.2. Modelo de datos relacional. ANEXOS. 3 1. CONCEPTO Y OBJETIVOS DE LAS BASES DE DATOS. DEFINICION DE BASE DE DATOS: Colección de datos, con una redundancia controlada y con una estructura que refleja las relaciones y restricciones que existen en el mundo real; los datos que serán compartidos por diferentes usuarios y programas, deben mantenerse independientes de éstos, y su definición y descripción, han de estar almacenadas junto con los mismos. Los procesos para actualizar y recuperar los datos, habrán de ser capaces de conservar la integridad, seguridad y confidencialidad de todo el conjunto de datos. VENTAJAS DE LAS BASE DE DATOS: a) Referidas a los datos b) Referidas a los resultados. c) Referidas a los usuarios. INCONVENIENTES DE LAS BASES DE DATOS: a) Relativas a su instalación b) Relativas a los usuarios. 4 1. CONCEPTO Y OBJETIVOS DE LAS BASES DE DATOS. Actividades: 1. ¿Buscar otras definiciones del concepto de Base de Datos? 2. Busca en Internet información sobre los siguientes términos que aparecen en la definición anterior de Base de Datos: redundancia, integridad, seguridad y confidencialidad. 3. Buscar información sobre las ventajas e inconvenientes de las Bases de Datos. 4. ¿Aproximadamente en qué año aparece el concepto de Base de datos? 5. ¿Cómo se organizaba la información en los sistemas informáticos antes de la aparición de las Bases de Datos? 6. ¿Cuál es el futuro que se prevé de las bases de datos? 5 2. EL SISTEMA DE GESTIÓN DE LA BASE DE DATOS. Un Sistema Gestor de Bases de Datos (SGBD), se encarga de organizar el correcto funcionamiento interno de la base de datos. Es un conjunto de programas que facilitan la labor de dirigir la base de datos en su conjunto. 6 2. EL SISTEMA DE GESTIÓN DE LA BASE DE DATOS. Todo SGBD tendrá como mínimo las siguientes características: - Facilita el acceso a los datos. - Controla la consistencia y la integridad de los datos. - Controla la seguridad de las bases de datos. - Controla la concurrencia. - Facilita la administración de la base de datos y del propio SGBD. Los componentes principales de un SGBD: - Herramientas de gestión (administradores). - Herramientas de programación. - Lenguajes: LDD, LCD, LMD (LM Y LC), o en inglés. - Diccionario de datos (repositorio). 7 2. EL SISTEMA DE GESTIÓN DE LA BASE DE DATOS.. Actividades: 1. ¿Cuáles son las siglas de SGBD en inglés? 2. ¿Qué es SQL? 3. Busca en Internet información sobre los siguientes sistemas gestores de bases de datos: Access, MySql, Oracle e Informix. Para cada uno de ellos, escribe sus características básicas, así como sus inconvenientes. 8 3. MODELOS DE DATOS. El primer paso a la hora de crear cualquier Base de Datos, es elaborar un “esquema/diagrama” sobre qué va a contener dicha base de datos: debemos reconocer qué información del mundo real vamos a almacenar. Ese esquema se elabora siguiendo unas reglas, técnicas y herramientas: MODELO DE DATOS. Existen varias generaciones de modelos de datos: - Primitivos: registros, ficheros, directorios, índices,… - Clásicos: jerárquico (árbol), en red y relacional. - Semánticos: Entidad-Interrelación ME/R (combina el modelo en red y el relacional) -… Los modelos semánticos (conceptuales) nos ayudan más que ningún otro modelo en el diseño inicial de la base de datos: ME/R, pero posteriormente para implementar dicha base de datos en la máquina, necesitaremos del modelo relacional, pues es más exacto y formalizable (se puede llevar a la práctica). 9 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) Es un modelo conceptual, se basa en una percepción del mundo real considerándolo formado por un conjunto de objetos básicos (entidades) y de asociaciones (interrelaciones) entre dichos objetos. Fue desarrollado por primera vez por Peter P. CHEN en 1976 y refinado posteriormente por diversos autores. ENTIDADES Una entidad es un objeto que tiene existencia propia y puede distinguirse de otros objetos. Por ejemplo: - La persona “Juan Pérez” con DNI 70894562-M es una entidad, ya que identifica de forma unívoca a una persona específica. - La cuenta corriente nº 2356 de la sucursal de CCM, también es una entidad. 10 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) El conjunto de todas las entidades similares forman un tipo de entidad (existencia propia, distinguirse del resto, todas tienen las mismas propiedades-atributos) Ejemplos: - todas las personas - todas las personas vivas - todos los automóviles - todas las cuentas de un banco. Los tipos de entidad se representan gráficamente por medio de un rectángulo (entidad fuerte y entidad débil): 11 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) ATRIBUTOS Son las propiedades de los objetos (entidades e interrelaciones). El conjunto de valores que puede tomar un atributo se llama dominio. 12 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) ATRIBUTOS CLAVE Entre todos los atributos de un tipo de entidad, uno o varios de ellos deben identificar unívocamente cada una de las ocurrencias individuales (identificador unívoco). Deben de ser el conjunto mínimo (minimalidad). Este subconjunto de atributo(s) se denomina CLAVE. Cuando existe más de un conjunto de atributos que verifican las dos condiciones anteriores, cada uno de ellos recibe el nombre de clave candidata. El elegido como identificador principal se llamará clave principal y los demás se conocen como claves alternativas o secundarias. Los atributos que forman parte de una clave, no pueden nunca tomar valor nulo. 13 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) 14 3.1. MODELOS DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) INTERRELACIONES Una interrelación es una asociación entre entidades. Por ejemplo, la interrelación entre los clientes de una sucursal y sus cuentas. Una interrelación también puede tener propiedades (atributos). 15 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) - Cada interrelación tiene un nombre que la distingue del resto unívocamente, y que se escribe en el interior de un rombo. - El número de entidades que participan en una interrelación se llama grado. Así las interrelaciones pueden ser binarias (2 participantes), ternarias (3 participantes),… - Si se asocia un tipo de entidad consigo misma, se dice que la interrelación es reflexiva o recursiva. EJEMPLO: 16 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) 17 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) A veces, interesa representar una interrelación como un atributo y no como una interrelación. Ejemplo: 18 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) CARDINALIDAD Es el número máximo de ocurrencias de cada tipo de entidad que pueden intervenir en una ocurrencia del tipo de interrelación. Se representa con las etiquetas 1:1 1:N N:M , etc 19 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) 20 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) RESTRICCIONES EN INTERRELACIONES DEPENDENCIA EN EXISTENCIA: cuando las ocurrencias de un tipo de entidad (débil), no pueden existir si desaparece la ocurrencia de la entidad fuerte de la cual depende. DEPENDENCIA EN IDENTIFICACIÓN: es una dependencia en existencia en la cual la entidad débil no se puede identificar únicamente mediante sus atributos y exigen añadir la clave del tipo de entidad fuerte de la cual depende. FIGURA 13 21 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) INTERRELACIONES EXCLUSIVAS: Dos o más tipos de interrelaciones son exclusivos cuando cada ocurrencia de un tipo de entidad participante, sólo puede pertenecer a uno de los tipos de interrelación. 22 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) ABSTRACCIÓN DE GENERALIZACIÓN: Es una clase especial de interrelación que asocia entidades, un supertipo y sus subtipos, por una asociación del tipo es-un. Los atributos comunes a todos los subtipos se asignan al supertipo, mientras que los atributos específicos se asocian al subtipo correspondiente. 23 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) 24 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) Una característica fundamental de la generalización es la herencia de los atributos del supertipo por los subtipos. Cada tipo de entidad puede participar en múltiples generalizaciones, en ocasiones como supertipo y en otras como subtipo. COBERTURA: Es una propiedad de las generalizaciones. - solapamiento superpuesto: una misma ocurrencia puede pertenecer a más de un subtipo. - solapamiento exclusivo: una ocurrencia solo puede pertenecer a un subtipo. - recubrimiento total: toda ocurrencia del supertipo tiene que pertenecer a algún subtipo. - recubrimiento parcial: lo contrario a lo anterior. Estas posibilidades se pueden combinar dando lugar a cuatro tipos de generalizaciones. 25 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) FIGURA 17 26 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) Puede suceder que un subtipo tenga más de un supertipo: 27 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) CONTROL DE REDUNDANCIAS Hay que estudiar detenidamente los ciclos (bucles cerrados formados por interrelaciones), que pueden aparecer en nuestros diagramas E/R, pues pueden indicar la existencia de interrelaciones redundantes. Aunque la existencia de un ciclo no implica necesariamente que las interrelaciones sean redundantes. Cuando una interrelación posee atributos, no puede eliminarse aunque pueda ser deducida a partir de otras presentes en el esquema. 28 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) 29 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) EQUIVALENCIA ENTRE INTERRELACIONES N-ARIAS Y BINARIAS El trabajo con interrelaciones ternarias, cuaternarias,…, suele ser complicado, por lo que se debe intentar transformar las anteriores interrelaciones en varias binarias equivalentes, aunque esta operación es factible en muy pocos casos. 30 3.1. MODELO DE DATOS ENTIDAD-INTERRELACIÓN (ME/R) 31 3.2. MODELO DE DATOS RELACIONAL 32 3.2. MODELO DE DATOS RELACIONAL Se trata de una modelo que nos permite diseñar el esquema lógico de una base de datos mediante la transformación de esquemas conceptuales entidad-interrelación. El modelo de datos relacional, es un modelo basado en la teoría de las relaciones, donde los datos se estructuran en forma de relaciones-”tablas”, siendo un objetivo fundamental del modelo mantener la independencia de esta estructura lógica, con respecto a su posterior implementación física. RELACIÓN Es el elemento básico del modelo relacional. Se puede representar como una tabla. En ella podemos distinguir un conjunto de columnas, denominadas atributos, que representan propiedades de la misma y que están caracterizadas por un nombre, y un conjunto de filas, tuplas, que son las ocurrencias de la relación. El número de filas de una relación se denomina cardinalidad, mientras que el número de columnas grado. Existen también dominios, de donde los atributos toman sus valores, 33 3.2. MODELO DE DATOS RELACIONAL 34 3.2. MODELO DE DATOS RELACIONAL Una relación se puede representar en forma de tabla, pero tiene una serie de características que la distinguen de un tabla: - no puede haber filas duplicadas. - el orden de las filas es irrelevante. - el orden de los atributos (columnas) no es significativo. - la tabla es plana, es decir en cada celda sólo aparecerá un único valor. - una relación no puede tener dos atributos con el mismo nombre. Una relación siempre tiene un nombre, y en ella es posible distinguir una cabecera (esquema de relación o intensión) que define la estructura de la tabla, y un cuerpo (extensión), que contiene el conjunto de tuplas que varían con el tiempo. 35 3.2. MODELO DE DATOS RELACIONAL 36 3.2. MODELO DE DATOS RELACIONAL INTEGRIDAD REFERENCIAL Es una restricción del modelo relacional definida por el diseñador de la base de datos, a la hora de definir las claves de las relaciones (clave primaria, claves alternativas o secundarias, y clave ajena o externa*). 37 3.2. MODELO DE DATOS RELACIONAL 38 3.2. MODELO DE DATOS RELACIONAL 39 3.2. MODELO DE DATOS RELACIONAL TRANSFORMACIÓN DEL MODELO E-R A RELACIONAL El paso de un diagrama del modelo E/R al modelo relacional está basado en los tres principios siguientes: 1. Todo tipo de entidad se convierte en una relación. 2. Todo tipo de interrelación N:M se transforma en un relación. 3. Todo tipo de interrelación 1:N o 1:1 se traduce en el fenómeno de propagación de clave o se crea una nueva relación. El paso del modelo E/R al relacional implica perdida de semántica (información), puesta que las entidades e interrelaciones se transforman en relaciones, ya que en el modelo relacional sólo existe la relación para representar ambos tipos de objetos. 40 3.2. MODELO DE DATOS RELACIONAL GRAFO RELACIONAL Es una forma de representar gráficamente el esquema relacional de una base de datos, de una manera sencilla y completa: - para cada tabla aparecerá su nombre y sus atributos. Su clave primaria irá subrayada con trazo continuo. Si tiene claves ajenas, se subrayarán los correspondientes atributos con trazo discontinuo. - se dibujarán, además, una serie de arcos que conecten los atributos que son clave primaria con su respectiva claves ajenas: partiendo estos arcos de las claves ajenas a las primarias. 41 3.2. MODELO DE DATOS RELACIONAL 42 3.2. MODELO DE DATOS RELACIONAL 43 3.2. MODELO DE DATOS RELACIONAL TRANSFORMACIÓN de una entidad 44 3.2. MODELO DE DATOS RELACIONAL TRANSFORMACIÓN de una INTERRELACIÓN N:M 45 3.2. MODELO DE DATOS RELACIONAL TRANSFORMACIÓN de una INTERRELACIÓN 1:N Existen dos soluciones para la transformación de una interrelación 1:N: A) Propagar la clave de la entidad que tiene cardinalidad máxima 1 a la que tiene N, desapareciendo el nombre de la interrelación. 46 3.2. MODELO DE DATOS RELACIONAL B) Transformarlo en una relación, como si se tratara de una interrelación N:M (cuando alguna entidad tiene cardinalidad cero, cuando se prevé que la interrelación se pueda convertir en N:M o cuando la interrelación tenga atributos propios). 47 3.2. MODELO DE DATOS RELACIONAL TRANSFORMACIÓN de una INTERRELACIÓN 1:1 Al igual que en las interrelaciones 1:N se tienen dos soluciones: A) Propagar la clave de una entidad a otra, con la desaparición de la interrelación. (En este caso la propagación de la clave puede efectuarse en cualquier dirección, aunque es mejor de la entidad (1,1) a la entidad (0,1))). 48 3.2. MODELO DE DATOS RELACIONAL B) Transformarlo en una relación, cuando las entidades poseen cardinalidades (0,1). 49 3.2. MODELO DE DATOS RELACIONAL TRANSFORMACIÓN de atributos de una interrelación Si la interrelación se transforma en una relación, todos sus atributos pasan a ser columnas de la nueva relación. Si la interrelación se transforma mediante propagación de clave, sus atributos migran junto a la clave a la relación que corresponda. Aunque suele ser mejor crear una nueva relación para representar interrelaciones que tienen atributos. 50 3.2. MODELO DE DATOS RELACIONAL TRANSFORMACIÓN de una dependencia en identificación. Se utiliza el mecanismo de propagación de clave hacia la entidad débil. La clave primaria de la relación de la entidad débil debe estar formada por la concatenación de las claves de las dos entidades participantes. 51 3.2. MODELO DE DATOS RELACIONAL TRANSFORMACIÓN de una generalización. Se puede optar por tres soluciones: A) Englobar todos los atributos del supertipo y sus subtipos en una sola relación. (Se suele utilizar cuando los subtipos se diferencien en muy pocos atributos). B) Crear una relación para el supertipo y tantas como subtipos haya, con sus atributos correspondientes.(Esta solución es adecuada cuando existen muchos atributos distintos entre los subtipos). C) Crear relaciones distintas para cada subtipo, que contengan además los atributos comunes. 52 3.2. MODELO DE DATOS RELACIONAL 53 3.2. MODELO DE DATOS RELACIONAL TRANSFORMACIÓN de la dimensión temporal. 54 BIBLIOGRAFIA Concepción y diseño de bases de datos relacionales. Adoración de Miguel, Mario Piattini Editorial Rama. 55 MS-ACCESS: ANEXOS A LOS TRABAJOS OPERACIONES CON TABLAS: - Copiar y pegar una tabla: se deberá dar un nombre a la nueva tabla (distinto al de la original). Se elegirá una de las siguientes tres opciones: copiar solamente la estructura, copiar la estructura y los datos, y anexar datos a la nueva tabla, siempre que la estructura de la tabla origen y destino sea la misma. - Borrar una tabla. -Imprimir una tabla. 56 MS-ACCESS: ANEXOS A LOS TRABAJOS 57 MS-ACCESS: ANEXOS A LOS TRABAJOS NOTA: Los nombres de los campos no pueden contener puntos, paréntesis, signos de exclamación, espacios a la izquierda o caracteres no imprimibles. TIPO DE CAMPO: ASISTENTE PARA BÚSQUEDAS. 58 MS-ACCESS: ANEXOS A LOS TRABAJOS FILTROS: Es otro método para averiguar qué registros tienen un dato concreto en un campo determinado. CONSULTAS: selección y acción (actualización, eliminación, referencias cruzadas y datos anexados). - Selección: 59 MS-ACCESS: ANEXOS A LOS TRABAJOS - Acción - actualización : posibilitan modificar el contenido de las filas de una tabla que cumplen una determinada condición. En la vista de diseño de consulta, seleccionar la opción Actualizar, y aparecerá una nueva fila Actualizar a, donde pondremos el nuevo valor con el que actualizar el campo seleccionado. Por ejemplo: duplicar el valor de un campo numérico, [nombre tabla]![nombre campo]*2 . Se puede utilizar el Generador de expresiones. - Acción - eliminación : es aquella en la que al ejecutarse se borran los registros de la tabla que cumplen una determinada condición especificada en Criterios. En la vista de diseño de consulta, seleccionar la opción Eliminar, y aparecerá una nueva fila Eliminar. - Consulta para calcular valores : en vista diseño de consulta, pulsar el botón de Totales para añadir la fila Total a la cuadrícula. Se puede utilizar el Generador de expresiones. 60 MS-ACCESS: ANEXOS A LOS TRABAJOS - Consulta para búsqueda de registros duplicados: son consultas que nos permiten buscar valores que aparecen más de una vez en una tabla. Se utiliza el asistente para búsqueda de duplicados. - Consulta para búsqueda de registros no coincidentes: cuando existe una relación uno a varios entre dos tablas, se puede crear una consulta para identificar aquellos registros de la tabla de la parte “uno” para los que no existen registros relacionados en la tabla de la parte “varios”. Se utiliza el asistente para búsqueda de no coincidentes. - Consulta de tabla de referencias cruzadas: cuando existe, 61 MS-ACCESS: ANEXOS A LOS TRABAJOS 62 MS-ACCESS: ANEXOS A LOS TRABAJOS CONTROLES PARA EL DISEÑO DE FORMULARIOS E INFORMES: Los controles aparecen al mostrar un formulario o informe en vista de Diseño. Los botones de comando son los que más nos interesan, pues al pulsarlos ejecutan la acción que se le asigne: estas acciones pueden estar dentro de las predefinidas en Access, o bien ser el resultado de ejecutar una macro. Se pueden crear seleccionando Usar el asistente para controles, insertando el botón y personalizándolo,… Los botones de comando puede crearse con texto o con imágenes. 63 MS-ACCESS: ANEXOS A LOS TRABAJOS 64 MS-ACCESS: ANEXOS A LOS TRABAJOS EJEMPLO RESUELTO : Panel de control. EJEMPLO RESUELTO : Exportar e importar datos en Access. EJEMPLO RESUELTO : Base de datos Ventas.accdb 65