Base de datos
AHS
Univer Univer sidad Valle del Grijalva
1
Base de datos
TENEMO NEMOSS C O MO MISION MISIO N FUNDAMENT FUNDAMENTAL AL LA FORMAC ION DE PROFES PROFES IONISTAS CON ALTA ALTA C ALIDAD AC ADEMICA ADEMICA Y HUMANISTIC HUMANISTIC A, QUE GARANTI GARA NTIC C EN EL ÉXIT ÉXITO O DE LAS O RGANIZA RGAN IZACIONES CIONES Y PROMUE P ROMUEVAN VAN LA C ULTURA ULTURA DE LA CALIDAD A TRAVEZ TRAVEZ DE D E LA FILOS OFIA DE MEJO MEJO RA CONT C ONTINUA. INUA. PROPOCIAMOS EN LOS ESTUDIANTES EL ESPIRITU DE SERVICIO, LA VOCACION DE LIDERE LIDERESS EMPRENDEDO MPRENDEDO RES CO MPROMET MPROMETIDO S CON LA CO MUNIDAD Y EL RESPETO RESPETO A LA DIGNIDAD DE LA PERSONA HUMANA. ENTE NTES INDISPENSABLES INDISPENSABLES PARA LOGRAR UNA S O C IEDAD IEDAD LIBRE, JUSTA Y PRO GRESIS GRESIS TA, TENIENDO EL APRECIO POR LOS VALORES MORALES, CULTURALES, HISTORICOS Y SOCIALES DE NUESTRO ESTADO Y PAIS.
EL HOMBRE ES UN SER RACIONAL, SOCIABLE, CREATIVO, CAPAZ DE ENFRENTAR SU FUTURO. LA VERDADERA EDUCACIÓN, ABARCA TODO EL SER Y TODO EL PERIODO DE LA EXISTENC ISTENCIA IA ACC ESIBLE SIB LE AL HOMBRE, RECO RECO NO C IENDO IENDO LAS REALIDADE REALIDADESS Y LOS VALORES SUPERIORES. LA VERDADERA VERDADERA EDUCAC DUC ACIÓN IÓN ES EL DESARRO DESARRO LLO ARMO NIOSO NIO SO DE LAS FACULTADE FACULTADESS FISICAS, MENTALES Y ESPIRITUALES. LA EDUC EDUC AC IÓN IÓ N INTE INTEGRAL ES UN FAC FAC TO R FUNDAMENT FUNDAMENTAL AL PARA CAMBIAR C AMBIAR NUES NUES TRA REALIDAD ECONÓMICA, SOCIAL, CULTURAL, MORAL Y ESPIRITUAL. MANTE MANTENEMO NEMO S NUESTRA NUESTRA FE EN EN DIO S Y EL EL HOMBRE HO MBRE,, COMO C OMO PRINCIPIO PRINCIPIO Y FIN DE D E NUESTRA NUESTRA MISIÓ MISIÓ N HISTO HISTO RICA. PERTE PERTENC EC ER A NUE NU ES TRO S IST IS TEMA EDUC EDUC ATIVO EXIGE S ER: “Lux “Lux Lucís Humanitate”
“LUZ DE LUCES PARA LA HUMANIDAD”
•Amistad •Amor •Compromiso •Generosidad •Honestidad •Integridad •Perseverancia •Solidaridad •Unidad •Veracidad
AHS
Univer Univer sidad Valle del Grijalva
2
Base de datos
Introducción a los conceptos conceptos de bases de datos Definición D efinición de Base de Datos Datos
El término de bases de datos fue escuchado por primera vez en 1963, en un simposio celebrado en California California – USA. Una base de datos se puede definir como un conjunto de información relacionada que se encuentra agrupada ó estructurada. Desde el punto de vista del informático, la base de datos es un sistema formado por un conjunto de datos almacenados en discos que permiten el acceso directo a ellos y un conjunto de programas que manipulen ese conjunto de datos. datos. Se define una base de datos como una serie de datos organizados y relacionados entre sí, los cuales son recolectados y explotados por los sistemas de información de una empresa o negocio en particular. Las bases de datos proporcionan la infraestructura requerida para los sistemas de apoyo a la toma de decisiones y para los sistemas de información estratégicos, ya que estos sistemas explotan la información contenida en las bases de datos de la organización para apoyar el proceso de toma de decisiones o para lograr ventajas competitivas. Por este motivo es importante conocer la forma en que están estructuradas las bases de datos y su manejo.
Dato:: Dato
Conjunto de caracteres con algún significado, pueden ser numéricos, alfabéticos, o alfanuméricos. Información:
Es un conjunto ordenado de datos los cuales son manejados según la necesidad nece sidad del usuario, para que un u n conjunto de datos pueda ser procesado eficientemente y pueda dar lugar a información, primero se debe guardar lógicamente en archivos. Conceptos básicos de Base de Datos. Campo:
Es la unidad más pequeña a la cual uno puede referirse en un programa. Desde el punto de vista del programador representa una característica característica de un individuo u objeto.
AHS
Univer Univer sidad Valle del Grijalva
3
Base de datos
Registro:
Colección de campos de iguales o de diferentes tipos.
Tabla:: Tabla
Colección de registros almacenados siguiendo una estructura homogénea. Base de d e datos:
Es una colección de Tablas interrelacionadas, son creados con un DBMS (Sistema Manejador de de Base Base de Datos). Datos). El contenido de de una base de datos engloba a la información concerniente (almacenadas en archivos) de una organización, de tal manera que los datos estén disponibles para los usuarios, una finalidad de la base de datos es eliminar elimi nar la redundancia o al menos minimizarla. Los tres componentes principales de un sistema de base de datos son el hardware, el software DBMS y los datos a manejar, así como el personal encargado del manejo del sistema. Las operaciones operaciones que que se pueden puede n hacer con con los bases de datos pueden pue den utilizar todos todos los registros reg istros de la tabla o solo una parte de ellos. De entre en tre las operaciones ope raciones que utilizan utiliz an todos todos los l os registros de los ficheros fiche ros podemos citar las operaciones de: 1. Creación - Consiste en la grabación, por primera vez, sobre un soporte de los registros de una tabla. 2. Apertura y cierre - Para poder hacer cualquier operación con los registros de una tabla tiene que estar abierto. En el tiempo que no se utilizan los datos que almacena la tabla debe permanecer cerrado para evitar que se deteriore la información que almacena. Para empezar a trabajar con los datos de una tabla la primera operación que tenemos que hacer es abrirlo, y cuando terminemos de trabajar con él tenemos te nemos que cerrarlo. 3. Borrado - Consiste en la eliminación de uno o varios registros de la tabla. 4. Ordenación o clasificación - Consiste en cambiar el orden en que están grabados los registros de la tabla en el soporte. Los registros se ordenan según el contenido de uno o más campos en forma ascenden ascendente te o descendente. En el primer caso caso el primer p rimer registro es el que tiene el menor valor en el campo utilizado para clasificar los registros, y en el segundo caso, el primer registro contendrá, en el campo utilizado para clasificar los registros, el valor más alto de todos los registros reg istros de la tabla.
AHS
Univer Univer sidad Valle del Grijalva
4
Base de datos
5. Duplicado o copiado - Esta operación consiste en crear una nueva tabla idéntica a una ya existente. Esta operación es muy recomendable realizarla como medida de seguridad, por si algún día se nos estropea una tabla. Si esto ocurriera siempre tendríamos la copia para poder recuperarlo. 6. Actualización o mantenimiento - Esta operación consiste en mantener actualizados los datos almacenados en los registros de la tabla, tecleando te cleando nuev nue vos datos cuando se conocen, modificando datos ya existente existen te o eliminando elimin ando datos que ya no se necesitan. nece sitan. Las operaciones de actualización se conocen con los nombres de: - Altas: Consiste en añadir nuevos n uevos registros a la tabla. - Bajas: Consiste en eliminar elimin ar registros de la tabla, borrando borrando su contenido, o simplemente, prohibiendo el acceso a los datos que contiene. - Modificaciones: Consiste en cambiar el contenido de uno o más campos de un registro de la tabla. - Consultas: Consiste en acceder a uno o varios registros para ver el contenido de todos sus campos o solo parte de ellos. Normalmente este tipo de operación da como resultado una salida por pantalla de los datos que queremos quere mos consultar. consultar. - Listados: Se diferencia de la consulta en la forma, en que se presenta presen ta la información que se consulta. En En este caso la salida de la información será en papel, por la impresora en forma de lista ordenada.
Manejador de Bases de Datos (DBMS)
El sistema manejador de bases de datos datos es la porción más importante del software de un sistema de base de datos. Un DBMS es una colección de numerosas rutinas de software interrelacionadas, cada una de las cuales es responsable de alguna tarea específica. Las funciones principales de un DBMS son:
Crear y organizar la Base de datos. Establecer Establecer y mantener manten er las trayectorias de acceso a la base de datos de tal forma que los datos puedan pue dan ser ser accesados accesados rápidamente. AHS
Univer Univer sidad Valle del Grijalva
5
Base de datos
Manejar Mane jar los datos de acuerdo a las peticione p eticioness de los usuarios. Registrar Re gistrar el uso de las bases de datos. Respaldo y recuperación. Consiste en e n contar con mecanismos implantados que permitan la recuperación recupe ración fácilmente de los datos en caso caso de ocurrir fallas en el sistema de base de datos. Seguridad e integridad. inte gridad. Consiste en contar con mecanismos que permitan el control de la consistencia consistencia de los datos evitando evitando que estos se vean perjudicados pe rjudicados por cambios no autorizados o pre vistos. El DBMS es conocido también como Gestor de Base de datos.
AHS
Univer Univer sidad Valle del Grijalva
6
Base de datos
Una Metodología de desarrollo de Bases de Datos Aunque existen distintas metodologías para el desarrollo de BD, Elsmari y Navathe (1997), en este libro reseguirá la propuesta en De Miguel et al. (1999) que cubre las fases de diseño conceptual, diseño lógico estándar y diseño lógico específico. La figura 4 muestra las fases de esta metodología con los modelos que se aplican en cada una de ellas. Aunque el uso de esquemas conceptuales facilita el diseño de BD no siempre la fase de modelado conceptual se lleva a cabo. La parte derecha de la Figura 1.4 muestra la metodología completa de diseño de BD mientras que la parte izquierda muestra muestra el diseño de BD partiendo del diseño Veamos a continuación en e n qué consiste cada una de estas e stas fases:
1.- Modelado Conceptual: consiste en la representación de la parte del mundo real que se quiere almacenar almacenar e n la Base de Datos, Datos, en esquemas conceptuales E-R. Mediante los constructores del modelo E-R se recoge toda la semántica que puede obtenerse mediante la observación bien a partir de unas especificaciones textuales (esquemas descriptivos) que describan la información que debe contener la BD. 2.- Transformación de esquemas conceptuales E-R a esquemas relacionales: Una vez se ha validado con el usuario el esquema E-R correspondiente a la BD ya es posible realizar la transformación a un esquema lógico, en nuestro caso, a un esquema relacional. Para este paso si que existe un procedimiento exhaustivo a seguir con el fin de traducir todos los constructores del modelo E-R a constructores del modelo Relacional. 3.- Diseño físico: En esta fase se tienen en cuenta aspectos relacionados con la carga de la BD, la optimización de consultas y otros aspectos relacionados con la eficiencia en el almacenamiento y funcionamiento de la BD y que son realizadas por el administrador de la BD a través de las utilidades que proporciona el SGBD que se vaya a utilizar. Por ejemplo: Consideremos un archivador manual que contiene las fichas con los datos de los empleados de una empresa. Para cada empleado se tiene una ficha que podría tene tenerr el formato formato siguiente:
AHS
Univer Univer sidad Valle del Grijalva
7
Base de datos
APELLIDOS: DOMICILIO: POBLACIÓN: FECHA DE NACIMIENT NACIM IENTO: O: CENTRO CENTRO DE TRABAJ TRABAJO: O: CATEGORíA: CATEGORíA : ESTADO ESTADO CIVIL CIVIL (H/M): (H/M) :
NOMBRE: NOMBR E:
NIF:
C.P.:
PROVINCIA: FECHA DE ALTA:
PUESTO DE TRABAJO: TRABAJ O: Nº HIJOS: El registro regi stro sería toda la i nformación nformación correspondiente correspondiente a un un empleado.
El campo sería cada una de las informaciones elementales que se tienen de un empleado como por ejemplo: APELLIDOS, NOMBRE, CATEGORÍA
AHS
Univer Univer sidad Valle del Grijalva
8
Base de datos
Fase de Análisis de Requisitos: Modelo Entidad Interrelación (E/R) Los datos constituyen en la actualidad el arma más poderosa de cualquier organización o empresa. Una buena gestión de los datos puede influir de manera más que notable en los beneficios de cualquier organización. Pongámonos en el caso de una entidad bancaria y pensemos en los miles de clientes con cuyos datos se realizan operaciones diarias; la mala utilización de los mismos puede traer consigo pérdidas enormes para la empresa. En ocasiones esta mala utilización puede ser debida a la falta de formación de los empleados, pero muchas veces es ocasionada por un mal diseño del sistema de información o base de datos que gestiona los datos. Hoy en día todas las empresas cuentan con herramientas informáticas de creación de bases de datos; entonces, ¿por qué se producen fallos?. La respuesta no está en las herramientas en sí, sino, y reincidiendo en el tema, en cómo se diseña la base de datos. Cada herramienta dispone de sus propios utensilios de diseño, pero todos ellos se basan en los mismos conceptos teóricos, conceptos que si se desconocen no pueden ser aplicados. Por lo dicho anteriormente parece, si no completamente necesario, sí al menos muy conveniente, la utilización de un modelo de datos que permita diseñar bases de datos a nivel conceptual (y por tanto muy cercano al usuario) y por supuesto la formación de personal cualificado en este campo. El modelo Entidad/Interrelación (E/R) es un modelo conceptual que ha demostrado ser muy válido para cumplir con este objetivo, pues está a un nivel de abstracción lo suficientemente elevado como para poder diseñar cualquier base de datos con independencia de la máquina en la que se implemente. Además, en la actualidad disponemos en el mercado de una amplia gama de herramientas que automatizan en gran parte las tareas del diseño10 y que toman como base este modelo de datos. El modelo E/R fue propuesto por Peter Chen en 1976. Desde entonces muchos autores se han interesado por él, estudiándolo y ampliándolo, consiguiendo así diversas variantes del modelo (distintas formas de representación de los objetos), pero todas ellas parten del mismo concepto: el conocimiento del mundo real que se desea representar a través de un análisis de los requisitos o especificaciones del problema. En la realización del esquema o diseño conceptual de cualquier base de datos datos es fundamental el conocimiento del problema a modelar y es e s en este conocimiento donde representan un papel primordial los usuarios finales del sistema, pues es en esta primera etapa de modelización en la que el
AHS
Univer Univer sidad Valle del Grijalva
9
Base de datos
diseñador de la base de datos debe hacer tantas entrevistas como sean necesarias con los usuarios para conseguir clarificar todas las especificaciones del problema. Una vez clarificados los objetivos y las necesidades se deberá pasar al diseño propiamente dicho de la base de datos. El modelo E/R, como todos los modelos, consiste en un conjunto de conceptos, reglas y notaciones que permiten formalizar la semántica del mundo real que se pretende modelar (también denominada Universo del Discurso) en una representación gráfica o diagrama que denominamos esquema de la Base de Datos. Datos.
Elementos Elementos básicos del Modelo E/R Los elementos u objetos básicos del modelo E/R son cuatro: entidades, interrelaciones, atributos y dominios. A continuación se explican cada uno de ellos.
Entidades Las entidades, también llamadas tipos de entidad, representan conjuntos de elementos con existencia propia y que se caracterizan por las mismas propiedades. Generalmente son personas, cosas, lugares,..., es decir, conceptos sobre los que necesitamos guardar información y distinguibles de los demás objetos. Su representación gráfica se hace por medio de un rectángulo dentro del cual se escribe el nombre de la entidad en mayúsculas (generalmente un sustantivo). Por ejemplo, si queremos diseñar una base de datos para gestionar todos los alumnos de los cursos Mentor, entre los tipos de entidad que deberíamos definir estarían ALUMNO y CURSO. El primero representaría el conjunto de todos los alumnos que se inscriben en los diferentes cursos, el segundo recogería todos los cursos ofertados por el aula Mentor. Su representación gráfica sería (véase el esquema de la figura 1.2).
AHS
Univer Univer sidad Valle del Grijalva
10
Base de datos
Atributos Todo Todo tipo de entidad tiene unas características características o cualidades propias que queremos recoger dentro de nuestro diseño. El modelo E-R define estas cualidades como atributos, así por ejemplo el nombre del alumno, el teléfono, etc., describen propiedades de cada uno de los miembros que pertenecen al tipo de entidad ALUMNO. Estas propiedades no tienen existencia propia, propia, es e s decir, sólo tienen sentido en el e squema de la Base de Datos en tanto en cuanto aparecen formando parte de una entidad o, como veremos más adelante, de otro de los elementos del modelo E-R, de una interrelación. interrelación. Supongamos que de cada alumno queremos la información referente a su D.N.I., Nombre, Dirección, Teléfono y Nacionalidad. En la figura 1.3, aparece cómo representamos los atributos en el modelo E-R.
AHS
Univer Univer sidad Valle del Grijalva
11
Base de datos
DNI
Los ejemplares, e jemplares, también también denominados ejemplares o elementos, eleme ntos, de un tipo de entidad se se definen como los valores valores correspondientes correspondien tes a los atributos que hemos definido para ella. Por ejemplo e jemplo dos ejemplares del del tipo de entidad en tidad ALUMNO ALUMNO serían: • (DNI, 7515958), 7515958), (Nombre, (Nombre, Juan), (Dire cción, cción, C/ Irún, Irún, nº n º 9 Madrid),
(Teléfono, 91-675-65-65), (Nacionalidad, ( Nacionalidad, Mexicana), Me xicana), (Edad, 30) • (DNI, 7077777), (Nombre, Ana),(Dirección, C/ Bailén, nº 9, Madrid), (Teléfono, 91-678-9899), (Nacionalidad, Mexicana), M exicana), (Edad,15) Por lo tanto los valores de los atributos constituyen una parte importante de los datos que almacenaremos posteriormente en la Base de Datos. Es importante destacar que un mismo concepto no tiene por qué representarse siempre de la misma forma (por ejemplo, como una entidad o como un atributo). Así, si estuviéramos modelando una Base de Datos para una tienda de ropa, probablemente tendríamos una entidad denominada PRENDA y uno de sus atributos podría ser Color (roja, negra, etc.). Sin embargo, si estuviéramos hablando de una Base de Datos para gestionar la información de un taller de vehículos dedicado a trabajos de chapa y pintura, el concepto concepto de color pue de tener te ner tal importancia que pase a ser una entidad COLOR, pues tiene existencia propia y un conjunto de propiedades (código de color, textura, tipo de mezcla, etc.).
AHS
Univer Univer sidad Valle del Grijalva
12
Base de datos
Tipos de atributos Como se puede observar en la figura 1.3 no todos los atributos se representan de la misma forma; ello significa que existen diversas formas de recoger restricciones semánticas sobre los atributos de una entidad o de una interrelación. En el ejemplo aparece el atributo D.N.I. con un círculo negro, este tipo de atributo se denomina identificador principal (IP) y lo que indica es que el atributo o propiedad DNI es único para cada ejemplar del tipo entidad ALUMNO. Para poder distinguir una ejemplar de otra, dentro de un mismo tipo de entidad, el modelo E/R obliga a que cada vez que definimos un tipo de entidad se defina un atributo que identifique cada ejemplar, es decir, un IP. Por lo tanto en todos los tipos de entidad tiene que aparecer de forma obligatoria una característica que identifique de forma única cada uno de los ejemplares. Esta es la representación que nos proporciona el modelo E/R para distinguir este tipo de atributo del resto de atributos que componen el tipo de entidad. En un tipo de entidad sólo puede aparecer un identificador principal, pero pueden existir distintos atributos que también Identifiquen los ejemplares de esta; este tipo de atributos se denominan Identificadores Alternativos (IA). Veamos un ejemplo, supongamos que queremos añadir para el tipo de entidad ALUMNO, la dirección de correo electrónico que este posee, sabiendo que es única para cada uno de los alumnos. El atributo e-mail sería un identificador alternativo y como vemos en la figura 1.4 se representa con un círculo mitad negro mitad blanco, indicando que su valor es único para cada ejemplar del tipo de entidad ALUMNO.
DNI
AHS
Univer Univer sidad Valle del Grijalva
13
Base de datos
En el ejemplo de la figura 1.4, el atributo Teléfono aparece representado con una línea de puntos lo que significa que estamos ante un Atributo Opcional que nos informa de que existen alumnos que puede que no tengan número de teléfono o que al fin y al cabo es un atributo cuyo valor no es demasiado importante y por eso no lo ponemos como obligatorio. Por tanto, cuando los valores de un atributo van a ser desconocidos o por alguna otra causa no van a tener valor se denominan Atributos Opcionales.
AHS
Univer Univer sidad Valle del Grijalva
14
Base de datos
CASOS PRACTICOS Practica 1: Modelam Modela m iento de BASE DE DATOS DATOS
1.-Compañía Crear el Modelo conceptual de la Base de Datos Compañía. Esta base de datos se ocupa de los empleados, departamentos y proyectos de una empresa, que funciona bajo las siguientes premisas: 1.- La compañía esta organizada en departamentos. Cada departamento tiene un nombre único, un numero único y un cierto empleado que lo dirige, y nos interesa la fecha en que dicho empleado comenzó a dirigir el departamento. Un departamento puede estar distribuido distribuido en varios lugare lugares. s. 2.- Cada departamento controla un cierto número de proyectos, cada uno de los cuales tiene un nombre, nombre, un núm número ero único únicoss y se efectúa en un un solo lugar. lugar. 3.- Almacenaremos el nombre, numero de seguro social, dirección, salario, sexo y fecha de nacimiento de cada empleado. Todo empleado esta asignado a un departamento, pero puede trabajar en varios proyectos, que no necesariamente estarán controlados por el mismo departamento. Nos interesa el número de horas por semana que un empleado trabaja en cada proyecto, y también también quien quien es e s el supervisor supervisor de cada cad a empleado empleado.. 4.- Queremos mantenernos al tanto de los dependientes de cada empleado con el fin de administrar los términos de sus seguros. Almacenaremos el nombre, sexo y fecha de nacimi nacimiee nto, y su parentesco pare ntesco con el emplead empleado. o.
2.- Universidad Tenemos el siguiente esquema E-R, que representa las propiedades de las personas en las Universidades. El esquema describe a profesores y a estudiantes, los profesores se relacionan con sus departamentos y lugares de nacimiento, los estudiantes con sus lugares de nacimiento y de residencia, y con cursos en los que están inscritos, el esquema
AHS
Univer Univer sidad Valle del Grijalva
15
Base de datos
representa también los lugares de reunión de los cursos y los consejeros de los estudiantes graduados.
Se comienza por concentrar la atención en las generalizaciones y los subconjuntos, que casi siempre siempre representan representan agregados import importantes antes de informac información. ión. De acuerdo con sus sus papeles, pa peles, las perso p ersonas nas se divi dividen en profesores profeso res y estudiantes. Entre los estudiantes se distinguen los estudiantes graduados; entre los profesores se distinguen
los
visitantes.
Luego,
se
determinan
varios
agregados
de
información
adicionales.
1.- Los profesores se relacionan con su DEPARTAMENTO mediante la interrelación PETERNECE_A; esta es una interrelación de muchos a uno, ya que cada profesor pertenece perte nece a un solo departam departa mento, pero cada departamento dep artamento tienen tienen varios varios profesores. profesor es. 2.- Los cursos se relacionan con los profesores que los imparten mediante la interrelación de uno a uno IMPARTIDO_POR; se relacionan con los estudiantes por la interrelación de muchos a muchos INSCRITO y por la interrelación de muchos a muchos PLANIFICADO, que indica indica el SEMESTRE en que el estudiante estudiante piensa tomar t omar el el curso. curso . 3.- Los lugares de reunión de cada curso se representan por la interrelación ternaria SE_REUNE_EN entre las entidades CURSO, TIEMPO Y AULA. La entidad TIEMPO, indica el día y hora, y la entidad AULA indica el edificio y numero de AULA del lugar de reunión. 4.- La interrelación ASESORADO _ POR conecta a cada estudiante graduado con su asesor. Se supone que cada estudiante tiene un asesor, y que algunos profesores no son asesores de ningún estudiante; por ello la interrelación ASESORADO _ POR es opcional para los los profesores, pero obli obligatoria para los los estudiantes estudiantes graduados. graduados. 5.- Las ciudades son caracterizadas por su NOMBRE Y PROVINCIA, se relacionan con las personas mediante la interrelación LUGAR-DE-NACIMIENTO, y con los estudiantes por la interr interrelación elación CIUDAD-DE-RESIDEN CIUDAD-DE-RESIDENCIACIA-DE. DE.
La lectura del esquema se completa al examinar las propiedades de las entidades e interrelaciones individuales. Así, por ejemplo, todas las personas tienen APELLIDO y
AHS
Univer Univer sidad Valle del Grijalva
16
Base de datos
EDAD, los profesores poseen un TIPO – DE DE – CONTRATO y un TITULO, los profesores de visita tienen un INICIO – DEDE- NOMBRAMIENTO y un FIN-DE-NOMBRAMIENTO. Los identificadores del esquema son bastante sencillos. Todos son internos, CIUDAD, AULA Y TIEMPO tienen identificadores compuestos, mientras que el resto de los identificadores dentificado res son simples. simples.
3.- Universidad – Investigación En la Universidad Valle del Grijalva se desea llevar un control sobre los proyectos de investigación que se desarrollan. Para ello se decide emplear una base de datos que contengan toda la información sobre los proyectos, departamentos, grupos de investigación y profesores. profesor es. Esta infor nform maci ac ió n se detalla detalla a continu continuac aciió n:
Un departamento se identifica por su nombre (Sistemas, Industrial, etc.). Tiene una sede situada en un determinado campus, un teléfono de contacto y un Director que ha de ser un profesor de esa Universidad.
Dentro de un departamento se crean grupos de investigación (que dependen del departamento). Cada grupo tiene un nombre único dentro del departamento (pero que puede ser el mismo en distintos departamentos) y esta asociado a un área de conocimiento (base de datos, inteligencia artificial, sistemas y comunicaciones, etc.). Cada grupo tiene un líder que ha de ser profesor de la Universidad.
Un profesor esta identificado por su DNI. De el se desea saber el nombre, titilación, años de experiencia en investigación, grupo de investigación en el que desarrolla su labor y proyectos en los que trabaja.
Cada proyecto de investigación tiene un nombre, un código único, un presupuesto, fecha de inicio y terminación y un grupo que lo desarrolla. Por otro lado, puede estar financiado por
AHS
Univer Univer sidad Valle del Grijalva
17
Base de datos
varios programas y a su vez un programa financia varios proyectos. Dentro de cada programa cada proyecto tiene un numero asociado y una cantidad de dinero financiada (por
ejemplo el proyecto “BDC – Base de Datos en Colores” tienen el numero 3113 dentro del program programaa “Ayudad Ayudad al Pobre Inves Investi tiga gador” dor” que le le financia ancia con $3000).
Un profesor puede participar en varios proyectos. En cada proyecto se incorpora en una determinada fecha y cesa en otra, teniendo una determinada dedicación (eh horas a la semana) durante ese periodo.
4.- Cursos El departamento de formación de una empresa desea construir una base de datos de planificar y gestionar la formación de sus emplead empleados os.. La empresa organiza cursos internos de formación de los que se desea conocer el código de curso, el nombre, nombre, una una descripción, de scripción, el núm número ero de horas de duración y el costo del curso. curso. Un curso puede tener como prerrequisito haber realizado otro (s) previamente, y a su vez la realización de un curso puede ser prerrequisito de otros. Un curso que es prerrequisito de otro puede serlo de forma forma obligator obligatoria ia o solo recom reco mendable.
Un mismo curso tiene diferentes ediciones, es decir se imparte en diferentes lugares, fechas y con diferentes horarios (intensivo, de mañana o de tarde) . En una misma fecha de inicio solo puede im impartirse partir se una una edición de un curso.
Los cursos se imparten parte n por personal de la propia prop ia empresa empresa.. De los empleados se desea almacenar su código de empleado, nombre y apellidos, dirección,
teléfono.
NIF
(Numero
de
Identificación
Fiscal),
fecha
de
nacimiento,
nacionalidad nacionalidad,, sexo, firm firmaa y salario, salario, así como si esta o no capacitado cap acitado para im impartir part ir cursos. Un mismo empleado puede ser docente en una edición de un curso y alumno en otra edición, pero nunca puede ser ambas cosas a la vez (en una misma edición de curso o lo imparte o lo recibe).
AHS
Univer Univer sidad Valle del Grijalva
18
Base de datos
Interrelaciones Las interrelaciones representan asociaciones del mundo real entre una o más entidades. Por ejemplo, en la figura 2.1 presentábamos los alumnos y los cursos del Mentor como entidades sin ningún tipo de relación, pero para poder pode r expresar expre sar que un alumno esta e sta matriculado matriculado en distintos cursos y que en un curso se pueden matricular alumnos necesitamos una Interrelación que nos muestre la asociación existente entre ellos. Por lo tanto, vemos la necesidad de poder representar este concepto ya que aparece continuamente en el mundo real; algunos ejemplos son: “las sucursales de una entidad bancaria están relacionadas con sus clientes”, “las editoriales se relacionan con los libros que publican”, “los tutores de los cursos cursos Me ntor tienen asignados asignados una serie de alumnos”, alumnos”, etc.
Gráficam Gráficamente ente las interrelaciones interrelaciones se representan re presentan mediante un rombo unido a los tipos de entidad mediante líneas; dentro del rombo se escribe el nombre de la interrelación en minúsculas minúsculas,, que en gene ral, suele coincidir coincidir con un verbo en infinitivo. Volviendo al ejemplo anterior veamos como se representa la relación existente entre los alumnos que realizan cursos. Podríamos definir una interrelación Realizar entre ambas entidades, como muestra la figura 2.7.
Figura Figura 2.7: Ejemplo de Interrelación
No todas las relaciones relacione s o asociaciones asociaciones son iguales, iguale s, en gene ge neral ral se dividen en relaciones que denominamos de uno a muchos, como por ejemplo la que presentamos a continuación: “una sucursal es únicamente de una entidad bancaria (uno) pero una entidad bancaria posee varias sucursales (muchos)”. También existen las relaciones muchos a muchos, como por ejemplo “un curso Mentor tiene asociados tutores (muchos ) y los tutores pueden tutorar distintos cursos Mentor (muchos)”.
Para poder recoger estas características que nos distinguen unas relaciones de otras, que nos permite, además, recoger más información acerca del problema que estamos modelando, vamos a introducir los siguientes propiedades de una interrelación: grado, tipo de correspondencia y cardinalidad.
AHS
Univer Univer sidad Valle del Grijalva
19
Base de datos
El grado de una interrelac inte rrelación ión es el núme ro de entidades que interviene intervienen n en en ella, debe ser como mínimo dos, es decir, el número de entidades que intervienen intervienen en una interrelación debe ser de al menos dos; dos; existe un caso caso especial en el que sólo participa participa una entida en tidad d en e n la interrelaci inte rrelación ón aunque de dos formas distintas (es lo que se denomina interrelación reflexiva, como se verá después). En el ejemplo de la figura 2.7 se representa una interrelación binaria, denominada así por tratarse de una interrelación entre dos tipos de entidad. De la misma forma, cuando el grado es tres se habla de interrelaci in terrelaciones ones ternarias y, en general, gene ral, de interrelaciones n_arias cuando el grado es n. El tipo de interrelaciones que aparece de forma habitual en el modelado de una Base de Datos es la interrelación binaria y a partir de ahora nos centraremos solo en este tipo de interrelaciones. El Tipo Tipo de correspondencia correspondencia de una interrelación interr elación binaria se define como el número máximo de ejemplares de un tipo de entidad que pueden estar asociados con un ejemplar del otro tipo de entidad. Su representación gráfica se hace por medio de un par X:Y colocado sobre el rombo de la interrelación, donde X e Y representan los ejemplares asociadas de los tipos de entidad en estudio11. estudio11. En nuestro eje mplo, en principio, el número de cursos a los que un alumno puede optar es ilimitado y el de alumnos que realizan un curso también, por tanto la correspondencia sería N:M o muchos a muchos (Figura 2.8).
Si, por el contrario, en las especificaciones del problema se nos dijera que cada alumno solo puede matricularse de un curso, el tipo de correspondencia entre ALUMNO y CURSO cambiaría, sería 1:N o uno a muchos, y se representaría de la manera que aparece en la figura 2.9.
11
Es ta repres entación enta ción se s e pued e generali gene ralizar zar en el cas o de grado grad o n, de la form formaa X:Y X:Y:Z:..... :Z:.....
La cardinalidad cardinalidad de un tipo de entidad que interviene interviene en e n una interrelación interrelación binaria se define como el número mínimo y el número máximo de ejemplares de un tipo que pueden relacionarse con un elemento de otro AHS
Univer Univer sidad Valle del Grijalva
20
Base de datos
tipo de entidad. Para representar las cardinalidades utilizamos un par (x, y) situado sobre la línea líne a que une el tipo de entidad en tidad con la i nterrelación, nterre lación, donde x indica el número mínimo e y el número máximo. Además, y cuando la cardinalidad máxima es n, se dibuja una punta de flecha hacia la entidad correspondiente (figura 2.8). En el ejemplo que nos ocupa y suponiendo que no se establece ninguna restricción adicional, el número mínimo de alumnos que pueden matricularse en un curso es uno (no tendría sentido un curso con 0 matriculados), y el número máximo n (número ilimitado), por tanto la cardinalidad del tipo de entidad ALUMNO es (1,n) como se muestra en la figura 2.10.
Figura 2.10: Ejemplo de cardinalidades
La interpretación de la interrelación Realizar sería “un curso Mentor es realizado como mínimo por un alumno y como máximo n”. Si tuviéramos
limitación en la matriculación de los alumnos en un curso, por ejemplo, los cursos Mentor como máximo admiten 40 alumnos, lo representaríamos de la siguiente forma: forma:
De la misma manera, el número mínimo de cursos que puede realizar un alumno es uno y el máximo n, es decir, la cardinalidad de CURSO es (1,n) y por tanto tendríamos que represe re presentar ntar la punta de flecha hacía la entidad CURSO y encima de esta línea la cardinalidad como se muestra en la figura 2.12.
Figura 2.12:Cardinalidades de la interrelación Realizar
AHS
Univer Univer sidad Valle del Grijalva
21
Base de datos
Las cardinalidades mínimas y máximas son, como se puede apreciar, una extensión exte nsión del tipo de correspondencia corresponden cia y nos dan más información referente refere nte al tipo de interrelación que estamos representando. Veamos otro otro ejemplo eje mplo con la relación que que existe entre los empleados e mpleados de una empresa y el departamento en el que trabajan. trabajan. Sabemos que que un empleado e mpleado trabaja en un departamento y que a cada departamento se le asigna al menos un empleado. De cada empleado se se desea de sea la siguiente información: información: un código de empleado (número que le identifica), identifica), DNI, nombre nombre completo, completo, dirección, teléfono y número de afiliación de la seguridad social. Para los departamentos necesitamos un nombre, único para cada uno de ellos, una localización y un número de teléfono. ¿Cuál sería su diseño en el modelo E/R?. Podemos detectar de forma clara que necesitamos dos entidades, EMPLEADO y DEPARTAMENTO, objetos que tienen existencia propia con determinadas características. Para la entidad EMPLEADO tenemos como identificador principal el código de empleado, figura 2.13; el DNI, que es único para cada empleado será un atributo alternativo ya que hemos elegido el código como identificador principal por especificaciones del problema (figura 2.14).
Los atributos nombre y dirección de EMPLEADO son obligatorios ya que dicha información la consideramos importante; por ejemplo, sin ellos no podríamos mandar la nómina o contactar por cualquier causa con los empleados de la empresa. El teléfono lo podemos considerar como un atributo opcional y, por último, el número de afiliación de la seguridad social (NSS) al tomar valores únicos para cada empleado lo consideraremos un atributo alternativo. La entidad EMPLEADO con sus propiedades queda representada como se muestra en la figura 2.15.
AHS
Univer Univer sidad Valle del Grijalva
22
Base de datos
Un razonamiento similar nos llevará a representar la entidad DEPARTAMENTO con las características que la definen como se muestra en la figura 2.16.
La interrelación que une las entidades representadas anteriormente, EMPLEADO y DEPARTAMENTO, es binaria ya que relaciona dos entidades; el tipo de correspondencia es 1:N o de uno a muchos, ya que un empleado está asignado a un departamento y a un departamento pertene perte necen cen varios empleados. e mpleados. Por último, se indican in dican las las cardinalidades que recogen explícitamente como se relacionan cada una de los ejemplares de las entidades participantes en dicha interrelación (figura 2.17).
AHS
Univer Univer sidad Valle del Grijalva
23
Base de datos
La interpretación de la interrelación Trabaja sería la siguiente: “Un
empleado trabaja como mínimo y como máximo en un solo departamento (1,1)” y tendríamos una línea continua entre el rombo de la interrelación y la entidad DEPARTAMENTO para reflejar este hecho. Si interpretamos la figura 2.18 desde el tipo de entidad DEPARTAMENTO su lectura sería la siguiente: “En un departamento trabajan como mínimo un empleado y co mo máximo N”.
Atributos de una interrelación Como ya se ha mencionado, los atributos no solo están referidos a los tipos de entidad. Las interrelaciones también pueden tener atributos propios, atributos cuyos valores tienen sentido únicamente en el caso de que se establezca la relación entre los tipos de entidad que las une, como pueden ser las fechas de comienzo y de finalización de un curso, que no tienen sentido si dicho curso no es realizado por al menos un alumno. Un ejemplo de estos atributos se muestra en la figura 2.19 en color verde.
AHS
Univer Univer sidad Valle del Grijalva
24
Base de datos
¿Cómo serían los ejemplares ej emplares de la in terrelación “Realizar”? Si pen samos samos en
el mundo real, los valores nos vienen dados de la siguiente forma: Juan ha realizado el curso de “Iniciación a Internet” durante el e l periodo de 12-02-96 al 05-06-96. Algo parecido ocurre en el modelo E/R, los elementos que se encuentran en e n la interrelación inte rrelación “Realizar” son son de la siguiente forma:
{(DNI, 7515458), (Nombre, Inciación a Internet), (F_Comienzo, 12-02-96), (F_Finalización, 05-06-96)}. {(DNI, 856593), (Nombre, Access Avanzado), (F_Comienzo, 02-12-96), (F_Finalización, 15-03-97)}. Todos Todos estos ejemplares eje mplares se corresponden con los valores de los atributos identificadores de los tipos de entidad ALUMNO y CURSO que están relacionados, junto con los atributos propios de la interrelación. La interpretación o lectura que tienen estos elementos es la siguiente: el alumno con DNI 7515458 ha realizado el curso “Iniciación a Internet”
durante el periodo del 12-02-96 al 05-06-96; el alumno con DNI 856593 ha realizado el curso “Access Avanzado” durante el periodo del 02 -12-96 al 15-03-97. Hay que distinguir entre una ejemplar de un tipo de entidad y un tipo de interrelación, interrelación, pues una ejemplar de un tipo de interrelación interrelación existe siem pre y cuando e xistan ejemplare e jemplaress de los tipos de entidad en tidad que interv inte rvien ienen en en e n la asociación. Los ejemplares no tienen representación gráfica en el modelo E/R pues se corresponden con los datos que realmente se almacenarán en la base de datos y no con el diseño conceptual de ésta. Hemos visto los elementos básicos del modelo E/R que nos permitirán el diseño de la Base de Datos de forma Conceptual, es decir, tendremos una representación sencilla y natural del caso que queremos modelar que, además, además, no depende del Sistema S istema Gestor Gestor de Bases de Datos que que utilizamos para su posterior implementación y que lo que intentará será recoger de la mejor forma posible todas las especificac espe cificacione ioness del problema de mane manera ra que sea fácilmente comprensible por usuarios no informáticos.
Extensiones del Modelo E/R Posteriormente al modelo E/R propuesto por Chen se realizaron algunas extensiones para darle más riqueza semántica. Esto significa que se le han añadido nuevos conceptos para que el modelo se adapte mejor a la realidad que queremos modelar, es decir, recoja mayor semántica.
AHS
Univer Univer sidad Valle del Grijalva
25
Base de datos
Vamos a introducir algunos de estos nuevos conceptos retomando el ejemplo visto en el apartado anterior sobre una empresa en el que habíamos representado la relación que existía entre los empleados y los departamentos de la empresa. Supongamos que la empresa es un consorcio de distintas librerías especializadas en libros y revistas informáticas llamada INTERFAZ. Sabemos que los empleados de INTERFAZ están asignados a un departamento y que la relación entre EMPLEADO y DEPARTAMENTO se representa como se indica en la figura 2.20.
Entidades En el apartado 2 se estudió que las entidades en un esquema E/R son los objetos principales sobre los que debe recogerse información y generalmente denotan personas, lugares, cosas o eventos de interés. En esta sección vamos a estudiar cómo las entidades pueden clasificarse por la fuerza de sus atributos identificadores. Las entidades fuertes o regulares tienen existencia existencia propia, es decir, poseen identificadores internos que determinan de manera única la existencia de sus e jemplares. Las entida en tidades des débiles son dependientes depe ndientes de otras otras entida en tidades des y pueden puede n serlo por dos motivos: motivos: bien porque la existencia existen cia de sus ejemplares en la base base de datos datos depende de pende de una entidad fue rte bien porque porque sus ejemplares requieran para su identificación de los atributos identificadores (algunas veces llamados atributos externos) de otra entidad.
AHS
Univer Univer sidad Valle del Grijalva
26
Base de datos
Por ejemplo, los ejemplares correspondientes a los alumnos del MENTOR no dependen depende n de ninguna ningun a otra entidad para para existir existir en la base base de datos; datos; por ello la entidad e ntidad ALUMNO ALUMNO es una entidad en tidad fuerte. fuerte. Sin e mbargo, mbargo, en e l caso caso de una base de datos de una cadena hotelera podríamos tener el tipo de entidad HABITACIÓN HABITACIÓN dependiente dependien te del tipo de entidad HOTEL HOTEL ya que que p ara que existan ejemplares de HABITACIÓN es necesario que existan ejemplares de HOTEL. Una ejemplar de HABITACIÓN no tiene existencia por si misma porque siempre estará asociada a una ejemplar de HOTEL. Además, si si se elimina e limina un determinado ejemplar eje mplar de la e ntidad HOTEL HOTEL de la base de datos también deberán desaparecer los ejemplares de la entidad HABITACIÓN HABITACIÓN asociadas a él. La representación repre sentación de una u na entidad en tidad débil difiere de la de una entidad regular pues el rectángulo de la entidad débil es de doble recuadro como se muestra en la figura 2.21.
AHS
Univer Univer sidad Valle del Grijalva
27
Base de datos
Modelo Entidad – Relación (E-R) Armando Hdez. Santis http://www.prepacomitan.mx.gs http://www.prepacomitan.webcindario.com e-mail:
[email protected] [email protected]
¿Que es el modelo E/R? Es un modelo de datos conceptual, para diseñar y planificar bases de datos, el modelo ER es el que ha tenido mayor éxito éxito en la industria de la ing. De software. Ventajas: -Muestra bien bien las reglas de nego n egocio cio -Representa -Representa todos los niveles niveles de informació inf ormaciónn -Independiente del DBMS (SGBD) -Es un estándar usado por los profesionales del negocio
AHS
Univer Univer sidad Valle del Grijalva
28
Base de datos
Elementos Entidad : Es una “cosa” del mundo real con existencia, en
la mayoría mayoría de los casos es un sustantivo. Ejemplo: Ejemplo: EMPLEADO, ALUMNO. Atributo: Describe un dato de una identidad y son las
pieza piezass especificas especificas de información. Eje Ejemplo mplo:: Entid ntidaad: EMPL EMPLEA EADO DO Atributo: Edad, sexo, dirección, etc.
Los atributos atributos pueden pueden ser: Simples o compu compuestos estos
Simples: Son no divisibles. Edad de la PERSONA Compuestos: Se dividen en componentes mas pequeños. Dirección de EMPLEADO (domicilio, ciudad, pais) Monovaluado Monovaluado o multivaluado mult ivaluado
Monovaluado: Cuando tienen un solo valor. Edad de la PERSONA Mult Multiv ival alua uado do:: Cuando uando tie tiene un conj conjun unto to de valo valore res: s: Experiencia Laboral
AHS
Univer Univer sidad Valle del Grijalva
29
Base de datos
Asociación o Reglas del Negocio Es la relación entre dos entidades de interés del negocio. Son nombrad nombradas as con un verbo verbo o frase fr ase
Símbolos usados ENTIDAD ENTIDAD DEBIL RELACION
VINCULO INDENTIFICADOR
AHS
Univer Univer sidad Valle del Grijalva
30
Base de datos
Atributos Claves Claves Claves prima primarias rias: Identifica de manera unica a cada cada registro ributo que es que es clav lave Claves Claves foránea foráneas s: Es un atrib
principal en otra entidad o tabla EMPLEADO NSS (PK)
DEPARTAMENTO Cop_dpto (PK)
Nombre
Descripción
Apellido
Área
Dpto_Nac (FK)
Cardinalidad Uno a Uno ORDEN orden
FACTURA tactura orden (FK)
Estrategia: “Cada orden puede tener una factura o ninguna y cada factura corresponde a una orden ”
AHS
Univer Univer sidad Valle del Grijalva
31
Base de datos
Cardinalidad Uno a Muchos ORDEN orden
FACTURA tactura orden (FK)
Estrategia: “Cada orden puede tener muchas facturas, pero cada factura es aplicada a una sola orden ”
Cardinalidad Muchos Muchos a Muchos Muchos ORDEN orden
FACTURA tactura
Estrategia: “Una orden esta formada por muchos productos.
Pero un producto puede ser ordenado en muchas ordenes ”
AHS
Univer Univer sidad Valle del Grijalva
32
Base de datos
Otro tipo de asociaciones EMPLEADO nss
Asociación Asociación Recursiva Recursiva
nssuper (FK) nombre apellido direccion
Estrategia: “Un empleado puede supervisar a muchos
empleados. Un empleado es supervisado por el supervisor ”
Generalización
EMPLEADO nss nombre apellido direccion
Exclusiva FULL TIME nss (FK) tipo categoria
PART TIME nss (FK) nro_horas
Estrategia: “Una instancia de empleado puede pertenecer solo a una de las clases ”
AHS
Univer Univer sidad Valle del Grijalva
33
Base de datos
Generalización
PERSONA codigo edad direccion
Conjunción
EMPLEADO
ESTUDIANTE
codigo (FK)
codigo (FK)
cargo
cod_facultad
Estrategia: “Una instancia de persona puede ser un
empleado, pero también ser un estudiante a la vez ”
AHS
Univer Univer sidad Valle del Grijalva
34
Base de datos
Diseño Lógico Esta formado por:
-Entidades Regulares Débiles -Atributos -Relaciones: Uno a muchos Uno a uno Muchos a muchos
Atributos de los tipos de vínculos
Restricciones de la participación
ORDEN orden
FACTURA tactura orden (FK)
AHS
Univer Univer sidad Valle del Grijalva
- Total o mandataria - Opcional o parcial
35
Base de datos
BIBLIOGRAFIA 1. Amescua, Amescua, A., García, García, L., Martínez Martínez,P. ,P.,, Díaz, Díaz, P., P ., (1995). Ingeni Ingenier ería ía del software de gestión gestión : análi análiss is y diseño de d e aplicacio aplicaciones. nes. Ed. Paraninfo. Paraninfo. 2. De Migu Miguel el,, A., Piatti Piattini, ni, M., Marcos, E., (1999). Diseño Diseño de base de datos Relaciona Relacionales. les. Ed. RAMA. 3. De Migu Miguel el,, A., Martínez Martínez,, P.,Castro, P., Castro, E., Cavero, J.M., Cuadra, D., Igl Iglesias, A., Nieto, C., C ., (2001). Diseño Diseño de Bases Bases de d e Datos: Problem Pro blemas as resueltos. resueltos. Ed. RAMA. RAMA. 4. Elsm Elsmari, ari, R., Navathe, Navathe, S., (1997). Sistem Sistemas as de bases de datos: conceptos fundamenta fundamenta les. Ed. Addison-Wesle Addison- Wesley y Iberoa Ib eroam mericana, 2ª Edición. Edición.
DIRECCIONES ELECTRONICAS DE INTERNET 1.- www.appservnetwork.com == descargar desc argar el servidor servidor e instalado instaladorr de mysql 2.- www.mysql.net ========== descargar desc argar el instalador instalador de Mysql 3.- www.aulaclic.com ======== inform informac ació ión n de Microsoft Access Acc ess 4.- www.wampserver.com ===== descargar desc argar el servidor e instalado instaladorr de Mysql 5.- www.microolap.com ====== descargar software de diseño diseño de base de datos 6.- www.ca.com ============ descargar ERWIN
SOFTWARE NECESARIO NECESARIO 1. ERWIN 2. Microolap 3. Appserv Apps erv o Wampserver (servidor de Msql y DBMS PhpmyAdmin) PhpmyAdmin) 4. Mysql 5. Microsoft Access
AHS
Univer Univer sidad Valle del Grijalva
36