Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Presentado Por: DIEGO CAMILO CARDOZO ALZATE WILLIAM JAMMIRLEY RICO LUIS ALFONSO PAEZ ALEJANDRO PIERNAGORDA RUIZ
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA UNAD ESCUELA DE CIENCIAS BASICAS TECNOLOGICAS E INGENIERIA NOVIEMBRE 2013
INTRODUCCION
Con la elaboracin del presente trabajo se pone en prctica lo aprendido en la teora del mdulo propuesto como gua, con base en el modelo lgico de datos de los casos 1 y 2 del trabajo colaborativo 1, se realizaron las modificaciones sugeridas en la realimentacin del mismo. Se realizaron diagramas entidad relacin de los casos 1 y 2, en distintos tipos de programas se definieron las tablas, campos, campos claves y llaves forneas. Con base en el Modelo Relacional del caso 1 se hicieron las consultas indicadas n utilizando los operadores del lgebra relacional y se aplic hasta la tercera forma normal (3FN) de acuerdo a la tabla propuesta.
OBJETIVOS
Aplicar los conceptos del Modelo Relacional y el paso del MER a tablas. Aplicar los conceptos del Algebra Relacional. Aplicar los conceptos de la tcnica de Normalizacin en la estructura lgica de una base de datos.
DESARROLLO DE LA ACTIVIDAD 1. Con base en el modelo lgico de datos de los casos 1 y 2 del trabajo colaborativo 1, realic las modificaciones realizadas en la realimentacin del trabajo de tal forma que el MER quede bien.
2. Con base en los diagramas entidad relacin del punto anterior. Realice para cada uno de ellos el Modelo Relacional. Recuerde que este modelo, solo son tablas, campos, campos claves y llaves forneas. Caso 1:
Cultivo (Cod_ Cultiv, Nomb_ Cultiv, Tiempo_ Cultiv, Fecha_Siembra, Estado_Cultiv) Actividades (Cod_Acti, Nomb_Acti) Trabajadores (Nro_id_trab, Nomb_trab, Apell_trab, Tel_trab, Dir_traba) Lotes (Cod_lote, Area_Lote, Cod_ Cultiv, Nro_id_trab) Control-Actividades (Consec_acti, Fecha_realiz_acti, Cod_Acti, Cod_ Cultiv, Cod_lote) Nminas (Fecha_traba, Horas_trabaj, Nro_id_trab, Consec_acti) Ventas (Consec_Vent, Cant_Kilos_Vend, Precio_Pactado, Valor_total_Venta, Cod_Acti, Nro_id_trab)
Caso 2:
Cultivo (Cod_ Cultiv, Nomb_ Cultiv, Tiempo_ Cultiv, Fecha_Siembra, Estado_Cultiv) Actividades (Cod_Acti, Nomb_Acti) Trabajadores (Nro_id_trab, Nomb_trab, Apell_trab, Tel_trab, Dir_traba) Lotes (Cod_lote, Area_Lote, Cod_ Cultiv, Nro_id_trab) Control-Actividades (Consec_acti, Fecha_realiz_acti, Cod_Acti, Cod_ Cultiv, Cod_lote) Nminas (Fecha_traba, Horas_trabaj, Nro_id_trab, Consec_acti) Ventas (Consec_Vent, Cant_Kilos_Vend, Precio_Pactado, Valor_total_Venta, Cod_Acti, Nro_id_trab) 3. Con base en el Modelo Relacional del caso 1. Realice las siguientes consultas utilizando los operadores del lgebra relacional. a. Se requiere el nombre de los trabajadores que realizaron la actividad cuyo nombre es la siembra.
select from TR.Nomb_Trab, Apell_trab mydb.trabajadores TR
inner join mydb.lotes LT ON TR.Nro_id_trab = LT.TRABAJADORES_Nro_id_trab inner join mydb.CONTROL_ACTIVIDADES CTR ON LT.Cod_lote = CTR.LOTES_Cod_lote inner join mydb.ACTIVIDADES AC ON AC.Cod_Acti = CTR.ACTIVIDADES_Cod_Acti
Justificacin: Para poder realizar el filtro de requerido (SIEMBRA) es necesario realizar tres relaciones en la consulta select por medio del INNER JOIN realizando a su vez sinnimos de tablas y utilizando el where like para poder buscar cadenas de texto si no se obtiene el cdigo de la actividad. b. Se requiere el nombre de los mayordomos con los lotes asignados.
select from TR.Nomb_Trab, TR.Apell_trab,LT.Cod_Lote mydb.trabajadores TR inner join mydb.lotes LT ON TR.Nro_id_trab = LT.TRABAJADORES_Nro_id_trab inner join mydb.CONTROL_ACTIVIDADES CTR ON LT.Cod_lote = CTR.LOTES_Cod_lote inner join mydb.ACTIVIDADES AC ON AC.Cod_Acti = CTR.ACTIVIDADES_Cod_Acti
Justificacin: Se realiza la misma consulta realizada en el punto anterior pero agregando en la clusula select el lote con el fin de que muestre a los respectivos nombres de mayordomos los lotes producidos para la actividad SIEMBRA. c. Se requiere saber el nombre de los cultivos con los respectivos nombres de actividades que les realizaron.
select from TR.Nomb_Trab, TR.Apell_trab,LT.Cod_Lote mydb.trabajadores TR inner join mydb.lotes LT ON TR.Nro_id_trab = LT.TRABAJADORES_Nro_id_trab inner join mydb.CONTROL_ACTIVIDADES CTR ON LT.Cod_lote = CTR.LOTES_Cod_lote inner join mydb.ACTIVIDADES AC ON AC.Cod_Acti = CTR.ACTIVIDADES_Cod_Acti
Justificacin: Se sigue utilizando la Query del punto primero pero retirando la clusula Where y as hallar para todas las Actividades los mayordomos, el lote y la actividad que el mayordomo se encuentra realizando a cada lote. d. Se desea saber el nombre de los estados del cultivo con su respectivo nombre de actividades, fechas y horas empleadas.
select TR.Nomb_Trab, TR.Apell_trab, LT.Cod_lote, AC.Nomb_Acti, CT.Fecha_siembra, CTR.fech_realiz_act, CT.Tiempo_cultivo from mydb.trabajadores TR inner join mydb.lotes LT ON TR.Nro_id_trab = LT.TRABAJADORES_Nro_id_trab inner join mydb.CONTROL_ACTIVIDADES CTR ON LT.Cod_lote = CTR.LOTES_Cod_lote inner join mydb.ACTIVIDADES AC ON AC.Cod_Acti = CTR.ACTIVIDADES_Cod_Acti inner join mydb.CULTIVOS CT ON CT.Cod_cultivo = CTR.CULTIVOS_Cod_cultivo
Justificacin: Para realizar esta ltima consulta se sigue utilizando la misma query de los puntos anteriores adicionando a esta la relacin a travs de un inner join de la tabla cultivos y extrayendo en el select los campos de las fechas ubicados en la tabla cultivo y control como el campo de tiempo el cual se encuentra en la tabla cultivo. 4. Dada la siguiente tabla, aplique las reglas de normalizacin y genere las tablas que consideren conveniente con sus respectivos nombres, llaves primarias y llaves forneas y campos, para que mnimo quede en tercera forma normal (3FN).
PEDIDOS
Nro_pedido
Fecha_pedido
Nro_id_empl
Nomb_empl
Nomb_clie
Art_pedido
Fecha_pedido
Nomb_artic
Cant_pedida
Tel_cli
Precio_unit_art
Valor_total
Dir_clie
Nro_id_clie
PEDIDOS
Nro_pedido
Nro_id_empl
Nro_id_clie
Fecha_pedido
Valor_total
EMPLEADOS
Nro_id_empl
Nomb_empl
CLIENTES
Nro_id_clie
Nomb_clie
Tel_cli
Dir_clie
Fecha_pedido
Art_pedido
Cant_pedida
ARTICULOS
Nomb_artic
Precio_unit_art
ARTICULOS-CLIENTES
Nro_id_clie
Nomb_artic
CONCLUSIONES
Como futuros Ingenieros es indispensable el manejo de Bases de Datos, pero no solo el manejarla sino tambin implementarla por eso lo importante de saber cmo hacerlo, tener datos que no vayan a caer en la redundancia o que no lleven a obtener ninguna informacin que sea eficiente, por eso aprender el concepto de modelo relacional, aprender el lgebra relacional y como normalizar es un primer paso para ser bueno profesionales.