Tarea Instalar el mysql Instalar la interface: (Mymanager o QueryBrowser) Hacer el diagrama de las relaciones de las tablas Explicar si estas normalizadas o no y porque Identificar las instrucciones de SQL y algebra relacional. Ejemplo 2.1. Como un ejemplo se utilizará a lo largo de estas notas una base de datos que modela una compañía de ingeniería. Las entidades a ser modeladas son ingenieros y proyectos. Para cada ingeniero, se desea conocer su número de empleado (ENO), su nombre (ENOMBRE), el puesto ocupado en compañía (TITULO), el salario (SAL), la identifiación de los nombres de proyectos en los cuales está trabajando (JNO), la responsabilidad que tiene dentro del proyecto (RESP) y la duración de su responsabilidad en meses (DUR). Similarmente, para cada proyecto se desea conocer el número de proyecto (JNO), el nombre del proyecto (JNOMBRE), el presupuesto asignado al proyecto (PRESUPUESTO) y el lugar en donde se desarrolla el proyecto (LUGAR). Un ingeniero puede participar en más de un proyecto pero su salario corresponde únicamente al puesto que ocupa en la compañía. Así, después de aplicar normalización se obtienen las relaciones E �para ingenieros, J �para proyectos, S �para los salarios asignados a los puestos y G �para los ingenieros asignados a cada proyecto. Un ejemplo de las instancias para cada relación se presenta en la Figura 2.1. E ENO ENOMBRE TITULO E1 Juan Rodríguez Ingeniero Eléctrico E2 Miguel Sánchez Analista de Sistemas E3 Armando Legarreta Ingeniero Mecánico E4 Beatriz Molleda Programador E5 Jorge Castañeda Analista de Sistemas E6 Luis Chávez Ingeniero Eléctrico E7 Roberto Dávila Ingeniero Mecánico E8 Julia Jiménez Analista de Sistemas G ENO JNO PUESTO DUR E1 J1 Administrador 12 E2 J1 Analista 24 E2 J2 Analista 6 E3 J3 Consultor 10 E3 J4 Ingeniero 48 E4 J2 Programador 18 E5 J2 Administrador 24 E6 J4 Administrador 48 E7 J3 Ingeniero 36 E7 J5 Ingeniero 23 E8 J3 Administrador 40 J JNO JNOMBRE PRESUPUESTO LUGAR J1 Instrumentación 150000 Monterrey J2 Desarrollo de bases de datos 135000 México J3 CAD/CAM 250000 Puebla J4 Mantenimiento 310000 México J5 CAD/CAM 500000 Monterrey S TITULO SALARIO Ingeniero Eléctrico 40000 Analista de Sistemas 34000 Ingeniero Mecánico 27000 Programador 24000 Figura 2.1. Bases de datos de una empresa con cuatro relaciones. Si se quisiera obtener todos los empleados y sus salarios en la corporación quienes han trabajado más de 12 meses se haría la consulta siguiente en SQL: SELECT ENOMBRE, SALARIO FROM E, G, S WHERE JORNADA > 12 AND E.ENO = G.ENO AND E.TILE = S.TITLE Se debe tener en cuenta que en cada sitio de la corporación puede haber esquemas diferentes o repetidos. Por ejemplo, en la Figura 2.2 se presentan esquemas diferentes para el manejo de proyectos, empleados y puestos en cada sitio de la bases de datos del Ejemplo 2.1. Ejemplo 3.1. Considere la relación J del ejemplo visto en el capítulo 2. J: JNO JNOMBRE PRESUPUESTO LUGAR J1 Instrumentación 150000 J2 Desarrollo de 135000 bases de datos México J3 CAD/CAM 250000 Puebla J4 Mantenimiento 310000 México J5 CAD/CAM 500000 Guadalajara Monterrey La relación J se puede fragmentar horizontalmente produciendo los siguientes fragmentos. J1: proyectos con presupuesto menor que $200,000 JNO JNOMBRE PRESUPUESTO LUGAR J1 Instrumentación 150000 Monterrey J2 Desarrollo de 135000 bases de datos México J2: proyectos con presupuesto mayor que o igual a $200,000 JNO JNOMBRE PRESUPUESTO LUGAR J3 CAD/CAM 250000 Puebla J4 Mantenimiento 310000 México J5 CAD/CAM 500000 Guadalajara Ejemplo 3.2. La relación J del ejemplo anterior se puede fragmentar verticalmente produciendo los siguientes fragmentos: J1: información acerca de presupuestos de proyectos JNO PRESUPUESTO J1 150000 J2 135000 J3 250000 J4 310000 J5 500000 J2: información acerca de los nombres y ubicaciones de proyectos JNO JNOMBRE LUGAR J1 Instrumentación Monterrey J2 Desarrollo de México bases de datos J3 CAD/CAM Puebla J4 Mantenimiento México J5 CAD/CAM Guadalajara