domingo, 30 de marzo de 2008

Ejercicios Adicionales

PEPES S.A
Vamos a organizar la base de datos de la empresa PEPES SA, que se dedica al alquiler de maquinaria y que dispone de 3 delegaciones en Barcelona, Valencia y Granada.
PASO 1 en el diseño de una nueva Base de Datos: Es tener claro toda la informaciòn que nos interesa registrar.
Contrato de alquiler nº57AB01
Maquinaria alquilada CAMPE7
Descripciòn Camiòn Pesado nº7
Precio Alquiler Diario $1500
Cliente Paco Martinez
NIF 37259492H
Direcciòn c/Los pepinos 57,2º,4º
Poblaciòn 08083-Barcelona
Fecha contrato 13/7/2004
Dìas 15
Oficina Valencia
PASO 2: Es separar la informacion en diferentes temas: cada tema serà una tabla.
Datos de Alquiler:
Contrato de alquilerFecha de contratoOficina.Datos de Maquina:Maquinaria alquiladaDescripciònPrecio alquiles diario.Datos del cliente:clienteNIFDirecciònPoblaciòn.Resulta que la empresa PEPES SA, no sabemos como lo consigue, pero cuando tiene un cliente que le alquila una maquina, nunca màs le alquila otra; en definitiva, no tenemos la necesidad de guardar la informaciòn de los clientes en una tabla separada.
PASO 2: Alquiler:
Contrato de alquiler
Fecha
Dìas
Oficina
Clientes
NIF
Direcciòn
Poblaciòn
Màquina:
Màquina alquiladaDescripciònPrecio

PASO 3: Es localizar el campo mas caracteristico de cada tabla, es decir el campo (o campos) que caracteriza cada registro:2 registros distintos no pueden tener el valor en la clave y no puede existir un registro con clave vacìa.La clave principal o LLAVE es: Comtrato de alquiler y...La calve principal o LLAVE es: Maquina alquilada.El campo clave principal de la tabla alquileres debe ser numero de alquiler y en el caso de la tabla màquinas, el campo còdigo màquina.
PASO 4: Es tener clara la relaciòn (o relaciones) que hemos de imponer a nuestras tablas: hemos de incluir la informaciòn de maquinas en alquileres, para ello en la segunda tabla necesitamos un campo especial para poder conectar la tabla maquinas, este campo se le llama clave externa y le podriamos poner el nombre Cod Màquina.
LENGUAS RARAS
Paso1.- (informacion a gestionar)
Matricula-----N°57
Idioma------- chino mandarin
Alumno------ Pepito Perez
DNI--------- 15252734
Telefono---- (43)527-42-31
Paso2.- temaso tablasadefinir
Alumnos --Idioma- -Matricula
DNI
Telefono
Paso3.- (clave principal)
Alumnos --Idioma-- Matricula
DNI------Lenguaje--Matricula
Telefono
Paso 4.-(Relaciones)
DNI----- Idioma----- Matricula
Alumno-- Lenguaje --Codigo Alumno
Telefono -------------Codigo Idioma
Paso5.- Access

Desarollo C3 (Ejercicios y Practicas) 1a4

Desarrollo
Durante el desarrollo de esta competencia adquirirás habilidades, destrezas y actitudes que te permitan editar y manipular modelos entidad/relación, así como aplicar la cardinalidad demapeo, crear diseño y diagramas entidad/relación que permiten reducir los diagramas deforma lógica y estructurada para un mejorar análisis y creación de las bases de datos segúnlo especificado por el usuario.
Ejemplos
11.- Observa detalladamente las siguientes "tablas" de una escuela cualquiera, analiza los "atributos" que tienen en común. Es de vital importancia que tu atención no se centreen los datos que contiene cada tabla. Discute con tus compañeros tus observaciones.




Ejercicio 1
Instrucciones .- Con base en la información presentada en el ejemplo anterior, responde a loscuestionamientos que a continuación se te presentan:
1-¿Qué materias impartes los docentes?
R=teoria general de la prediccion del futuro,esoterismo,lic en artes adivinatorias 1.

2-¿Qué estudiantes repiten al menos 2 cursos?
R=Ramos Guajardo,Lemus Ruiz,Ramos Saucedo,Roldan Lopez,Sanchez Perez,Aguilar Angeles,Ortiz Cisneros.
3-¿Qué cursos son los que se están ofertando?
R=historia del arte de predecir elfuturo,teoria general de la prediccion del futuro,teoria general del esoterismo,esoterismo 1,artes adivinatorias 1 y 2,el melodrama en mexico,modelodramasmodernos y artes obscuras 1 y 2.
4-¿Cuántos docentes van a impartir cursos?
R=5
5-¿Existe algún estudiante que no se va a inscribir en algún curso?
R=si, Puc Ibarra Victor
6.-¿Cuáles son los "atributos" que permiten enlazar a las "tablas"?
R=Marticula_curso, Marticula_asignatura, Matricula _docente y Matricula_estudiante.

Señala los "atributos" de cada "tabla" en los espacios siguientes:
Ejercicio 2
Instrucciones para el alumno.- Expresa los "atributos" que consideras debe llevar una base de datos para gestionar el control de una biblioteca, tomando en cuenta que sólo existen libros para consulta en el mismo edificio, no existe el préstamo a domicilio, ni otro tipo de materiales tales como revistas, periódicos, videos, etc. No es necesario rellenar todos los espacios que se te presentan, aún así, si ocuparas mas los puedes incluir.Entidad: _____________ (cinco entidades con sus atributos y justificación)Nombre del atributo Justificación______________ _____________________________________________ _____________________________________________ _______________________________

Ejercicio 3
Instrucciones para el alumno.- Al igual que en ejercicio anterior, señala los posibles "atributos" para una base de datos que permita el control de información de un salón de fiestas infantiles. Realiza el análisis con mucho detalle has tus anotaciones.

Ejercicio 4
Instrucciones para el alumno.- Relaciona las columnas que se presentan a continuación, identifica la explicación que corresponde a cada símbolo.

HABILIDAD:
2. Aplicar la cardinalidad de mapeo.
3. Establecer la clave primaria.

RESULTADO DE APRENDIZAJE: Con estas habilidades podrás aplicar los diversos tipos decardinalidad de mapeo a las entidades que aparecen en una base de datos; así como identificar el atributo o los atributos que determinarán la clave primaria de un conjunto de entidades.

Ejemplo 2Los siguientes son los datos de los jugadores de cada equipo que participó en el torneo relámpago de básquetbol de las pasadas fiestas ejidales en "Mexcaltitán". Analiza tanto los atributos como las entidades de esta pequeña base de datos.
Ejercicio 5
(investiga tipos de relaciones que existen access)
Instrucciones para el alumno.- A partir del análisis realizado en ejemplo anterior, responde a los siguientes cuestionamientos. Discute tus respuestas con los compañeros de grupo.
1. ¿Con cuántos equipos puede inscribirse cada jugador?
R=1
2. ¿Cuántos jugadores puede tener inscritos cada equipo?
R=7
3. ¿Qué tipo de relación existe entonces, entre los equipos y los jugadores
R= 1 a varios, por que en un equipo debe haber varios jugadores
Ejercicio 6
Instrucciones para el alumno.- en los espacios que se presentan a continuación describe un caso para cada una de las cardinalidades de mapeo que se te plantean. Fundamenta tus ejemplos. Finalmente muestra a tus compañeros tus ejemplos.
Ejercicio 7
Instrucciones para el alumno.- A continuación se te presentan casos de bases de datos y sus relaciones, realiza la reflexión sobre cada caso y emite un juicio con respecto al tipo de cardinalidad que prevalece en cada uno. Una vez que hayas realizado tus conclusiones, comparte tus reflexiones con tus compañeros de grupo.
Ejercicio 8
Instrucciones para el alumno.- En los conjuntos de entidades que se presentan a continuación determina los atributos que pudieran tener la función de llaves primarias; no olvides justificar tu elección.
Ejercicio 9
Instrucciones para el alumno.- En los espacios asignados delante de este cuadro plantea una base de datos para el siguiente caso:
Se desea diseñar una base de datos para un plantel CECyTE que contenga información sobre los alumnos (CURP, nombre, apellidos y dirección), las asignaturas (nombre) y las carreras(Nombre y bachillerato al que pertenecen) que se pueden estudiar.
Construir un modelo E-R teniendo en cuenta las siguientes restricciones:
• Un alumno puede estar matriculado en muchas asignaturas.
• Una asignatura sólo puede pertenecer a una sola carrera, aunque haya asignaturas con el mismo nombre en varias carreras.
• Una carrera puede tener muchas asignaturas.Determinar cuáles son los atributos que servirán como llaves primarias en cada conjunto de entidades; justifica tu elección.
Exponer tu trabajo ante tus compañeros de clase.
HABILIDAD: 4. Diseñar el diagrama Entidad/Relación.
RESULTADO DE APRENDIZAJE: Con esta habilidad estarás en posibilidad de generar el diagrama entidad – relación a partir una base de datos.


Ejercicio 10
Instrucciones para el alumno.- Para darle seguimiento a los ejercicios desarrollados durante esta competencia, vamos a retomar el ejercicio 9, en donde diseñaste los conjuntos de entidades y definiste las llaves primarias para una base de datos de un plantel CECyTE.Añade a esta base de datos las relaciones que deben establecerse entre los diferentes conjuntos de entidades ahí incluidas.
Luego crea en una presentación electrónica el diagrama E-R correspondiente. Muestra tu trabajo ante el resto del grupo.


Ejercicio 11
Instrucciones:Reduce a tablas el diagrama del ejemplo 4 de esta misma competencia (no olvidesinsertar algunos datos a tu libre elección en cada atributo).


EJERCICIO 12
PRACTICA 1
Competencia.- 3. Diseñar un modelo Entidad/Relación empleando diagramas.
Habilidades.-
1. Describir las entidades, atributos y relaciones de un modelo entidad relación.2. Aplicar la cardinalidad de mapeo.3. Establecer la clave primaria.4. Diseñar el diagrama entidad/relación.5. Reducir los diagramas Entidad/Relación a tablas.Elaborar todo lo anterior en una presentación electrónica.
Caso 1:
Una organización necesita elaborar una base de datos. En dicha organización sólo se considerandos tipos distintos de empleados: los basificados y los de confianza. De todos ellos debe conocerse el DNI y nombre.
Sólo para los basificados, es necesario incluir su nivel y su fecha de ingreso en la empresa.Mientras que para los de confianza es necesario considerar el grupo al que pertenecen y suespecialidad.
Caso 2:
Un grupo de agencias de viajes nos ha solicitado el diseño de una base de datos que almacene lainformación relativa al alojamiento y los vuelos que sus clientes contratan. Los datos que se desean almacenar son los siguientes:
• Datos de cada agencia de viajes: código de agencia (único), nombre, dirección y teléfono.
• Datos de cada hotel: código de hotel (único), nombre, dirección, teléfono y número de plazasdisponibles para este grupo de agencias de viajes.
• Datos de cada vuelo: número de vuelo (único), fecha y hora de salida y número de plazas, enclase turista y en primera clase, disponibles para este grupo de agencias de viajes.
• Datos de los clientes: CURP, nombre, apellidos, dirección y teléfono.
Las restricciones que nos plantean son las siguientes:
• Es necesario almacenar dónde ha contratado el cliente un viaje (alojamiento y/o vuelo)determinado.
• El cliente puede elegir cualquiera de los vuelos que oferta el grupo de agencias de viajes encualquier categoría (primera o turista).
• El cliente puede elegir cualquiera de los hoteles que oferta el grupo de agencias de viajes encualquier régimen (media pensión o pensión completa), siendo necesario almacenar la fechade llegada y la fecha de partida






A partir de la información que se incluyó en la base de datos del ejemplo 1 en esta misma competencia, planteamos algunas preguntas y su respuesta mediante consultas elaboradas en SQL.1.
¿Cuáles son los trabajadores que laboran en la oficina 01?
SELECT NombreFROM PersonalWHERE Of_num = 01Interpretando cada sentencia de ese consulta:SELECT Nombre Mostrará todos los datos que aparezcan en la columna nombre.FROM Personal Los datos de la columna nombre que está en la relación llamada Personal.WHERE Of_num = 01 para poder ser mostrado un nombre debe tener en la columna Of_num el número 01.Finalmente, el resultado de esta consulta será:NombreArtemioSoniaFlor2. ¿Cuáles son los trabajadores que tienen un salario menor a $15,000?SELECT NombreFROM PersonalWHERE Salario < n=" 'Mérida')" n=" 'Mérida')">: Mayor que<>: Distinto de<=:Menor o igual que >=:Mayor o igual que=:Igual queBETWEEN:Utilizado para especificar un intervalo de valores.LIKE:Utilizado en la comparación de un modeloIn:Utilizado para especificar registros de una base de datosFunciones de AgregadoLas funciones de agregado se usan dentro de una cláusula SELECT en grupos de registros para devolver un único valor que se aplica a un grupo de registros.AVG: Utilizada para calcular el promedio de los valores de un campo determinadoCOUNT: Utilizada para devolver el número de registros de la selecciónSUM: Utilizada para devolver la suma de todos los valores de un campo determinadoMAX: Utilizada para devolver el valor más alto de un campo especificadoMIN: Utilizada para devolver el valor más bajo de un campo especificadoEJEMPLO 3Observemos de nueva cuenta el ejemplo 1 de esta competencia. Si planteamos las tablas y sus atributos, podríamos ver algo similar a lo siguiente.Podemos observar que las tablas comparten un atributo en común denominadoof_num, que en realidad sirve como el enlace o relación entre las dos tablas. Ademásla llave primaria para la tabla oficinas es of_num, mientras que para personal esClave.EJEMPLO 4Ahora veamos las consultas SQL necesarias para crear las tablas, añadir claves primarias y establecer la relación entre las tablas una vez que han sido creadas.- Creando la tabla oficinas.Create table oficinas(of_num integer not null,calle char(20) not null,colonia char(20) not null,poblacion char(20) not null,estado char(20) not null,telefono char(20) not null);- Creando la tabla personalCreate table personal(clave char(4) not null,nombre char(25) not null,apellido char(25) not null,direccion char(30) not null,poblacion char(20) not null,puesto char(20) not null,salario char(20) not null,curp char(20) not null,of_num integer);- Añadiendo la llave primaria a la tabla oficinas.Alter table oficinas add primary key (of_num);- Añadiendo la llave primaria a la tabla personal.Alter table personal add primary key (clave);- Añadiendo la relación desde la tabla personal a la tabla oficinaAlter table "empleados" add foreign key ("of_num") referencesoficinas ("of_num");EJEMPLO 5Veamos las mismas consultas pero para crear otras tablas, presta atención a los atributos y sus tipos de datos, porque serán utilizados en el siguiente ejercicio.Create table vacuna(Novacuna int not null,Nombre char(25),Laboratorio char(20),Presentacion char(10),Primary key (novacuna))Create table aplicacion(Noaplic int not null,Dueno char(40),Domicilio char(50),Animal char(20),Nombreanimal char(25),Vacuna int,Fechaplic char(10),Primary key (noaplic))Create table comunidades(Nocon int not null,Nombrecom char(35),Cabregis int,Primary key(nocon))Alter table aplicacion add foreign key (vacuna) references vacuna (novacuna);EJERCICIO 3Instrucciones: En los cuadros que se presentan a continuación señala los diferentes atributos ytipos de datos para las tablas creadas en el ejemplo 5 de esta competencia. Señala asimismo cuáles son las llaves primarias y las relaciones entre tablas