Usuario:ManuelRomero/ProgramacionWeb/INAEM2017/BasesDatos/nivel/conceptual/ejercicios

De WikiEducator
< Usuario:ManuelRomero
Revisión a fecha de 05:53 22 may 2018; ManuelRomero (Discusión | contribuciones)

(dif) ← Revisión anterior | Revisión actual (dif) | Revisión siguiente → (dif)
Saltar a: navegación, buscar



(Comment.gif: Para todos los ejercicios

  • Al menos debe de haber 3 atributos por cada entidad
  • Se debe de especificar un atributo (o conjunto de atributos) que constituyan la clave para cada entidad

)



Base de datos de Empleados



Icon activity.jpg
Especificación
  • Se quiere guardar datos de empleados.
  • Hay equipos de empleados con determinadas funciones.
  • Cada empleado tiene un supervisor que es otro empleado más.
  • Un empleado puede tener varios supervisores.
  • Cada equipo tiene un jefe
  • Un jefe lo es solo de un equipo.
  • A parte de ello cada equipo tiene un jefe que es un empleado que pertenece al equipo

Modelo empleado.png
Modelo empleado2.png





Icon activity.jpg
Biblioteca
  • Hay alumnos (datos personales, dni, edad y dirección e idiomas que habla).
  • Tenemos libros (autores, editorial, isbn, título, tema)
  • Ûn alumno puede tomar prestados varios libros
  • Cada libro en un momento dado, solo lo puede tener físicamente una alumna.
  • Queremos mantener información de todos los libros que haya podido tener un determinado alumno
  • Cuando un alumno toma prestado un libro anotaremos la fecha del préstamo. La fecha prevista de devolución será 15 días naturales la fecha del préstamo.
  • Anotaremos la fecha real de devolución.
  • Las personas pueden tener penalizaciones que será o de un importe o de un tiempo sin poder tomar prestados libros cuando la fecha real de devolución sea posterior a la fecha prevista.





Icon activity.jpg
Universidad
  • El departamento de relaciones públicas de la Universidad pretende construir una aplicación informática capaz de proporcionar información acerca de su organización docente, mediante consultas realizadas a una base de datos que contenga toda la información necesaria. Un primer contacto con responsables de la instrucción permite concluir que:
  1. La Universidad se encuentra estructurada en Departamentos, cada uno de los cuales integra una o más Áreas de Conocimiento. Evidentemente, no puede haber Áreas de Conocimiento que pertenecen a Departamentos diferentes.
  2. Todo profesor está adscrito a una única Área de Conocimiento, pudiendo darse el caso de que, transitoriamente, un Área no tenga profesores.
  3. Cada una de las diferentes titulaciones ofertadas por la Universidad consta de una serie de asignaturas, dándose algunos casos de asignaturas comunes a varias titulaciones. La impartición de cada una de ellas es encargada a una de las Áreas de Conocimiento existentes.
  4. El Departamento establece las asignaturas que debe impartir cada profesor, siendo frecuente que en la impartición de una asignatura participen dos profesores. No obstante, hay algunos casos extraordinarios en los que intervienen 3 o más profesores.
  5. Tanto los Departamentos como las áreas, titulaciones, asignaturas y profesores tienen asignados códigos identificativos específicos, elaborados por el MEC.: codDpto, codArea, codTitulo, codAsign y codProf. No obstante, para evitar el efecto negativo de los cambios de código por parte del Ministerio y la ausencia de códigos en determinadas asignaturas nuevas, etc., se opta por utilizar un código numérico interno propio.
  • De momento, sólo se pretende representar la información esencial. Esto significa que, además de los códigos y los nombres de los elementos representados, sólo es preciso reflejar las horas de teoría y prácticas de cada asignatura y las horas de teoría y prácticas impartidas por cada profesor en cada una de las asignaturas en que participa.



Universidad er.png


Icon activity.jpg

Concesionario.

Realiza este ejercicio sin poner atributos, solo relaciones
  • Sea un concesionario de venta y alquiler de automóviles cuyo funcionamiento se rige básicamente por los siguientes aspectos:
  1. La intención del Concesionario es atender a una serie de clientes a los que diferencia en dos grupos, Clientes compradores y Clientes que alquilan
  2. Los Clientes compradores, realizan el Pedido de un vehículo nuevo del que se les hará entrega acompañado de la correspondiente Factura, que el cliente cerrará a través de un Pago formalizado(Dicho pago puede ser diferido a través de una financiación).
  3. Los Clientes que alquilan, solicitan un Vehículo de alquiler mediante un documento de solicitud o una señal. A la devolución del Vehículo, el Cliente realiza aun Abono directo para satisfacer la Factura que le es presentada
  4. El concesionario adquiere los Vehículos nuevos de las diferentes Fábricas del país a través de un Albarán de pedido.Los pedidos son satisfechos en Entregas de las Fábricas.
  5. Los Vehículos de alquiler, se Adquieren mediante la compra de los mismos a Concesionarios de Vehículos de ocasión.
  6. Tanto en compra como en alquiler, es posible que una misma operación el correspondientes Cliente solicite varios Vehículos.
  7. Así mismo, más de un Vehículo puede incluirse en una sola Compra a un Concesionario de Ocasión.

Concesionario.png






Icon activity.jpg

Vuelta ciclista

  • Se desea diseñar una base de datos que recoja información sobre las distintas vueltas ciclistas que ha habido. Se tiene los siguientes supuestos:
  1. Nos interesa guardar el año en que se produce cada edición, ya que todos los años se celebra la vuelta ciclista.
  2. Todas las ediciones tienes las mismas etapas con idénticas características.
  3. Todos los equipos tienes un patrocinador, que es siempre es el mismo con independencia de la edición de que se trate.
  4. Queremos guardar los equipos que han participado en cada edición con el puesto que han conseguido en cada una. #Además dos equipos no pueden conseguir el mismo puesto en la misma edición.
  5. Los corredores pueden cambiar de equipo de una edición a otra, pero nunca dentro de la misma.
  6. En cada etapa de una edición un corredor consigue un único puesto y un puesto es conseguido por un único corredor.
  • Ademas se producen los siguientes supuestos semánticos:

a.- Nos interesa guardar el año en que se produce cada edición, ya que no todos los años se celebra la vuelta ciclista b.- Todas las ediciones tienen las mismas etapas con idénticas características. En cada edición se realizna el mismo número de etapas_tipo.

En un Edición se realizan de 1 a N etapas_tipo. 
Una Etapa_tipo se realiza en 1 o N ediciones.
Supongo que como mínimo se ha realizado una edición
y que como mínimo una edición tiene una Etapa_tipo-.

c.- todos los equipos tienes un patrocinador, que es siempre el mismo con independencia de la edición de que se trate.

Un equipo patrocinado pro un único patrocinador
Un patrocinador patrocina a 1 o N equipos
Supongo que un patrocinador tiene que patrocinar
como mínimo a un equipo en alguna de las ediciones

d.- Queremos guardar los equipos que han participado en cada edición. con el puesto que han conseguido en cada una. Además dos equipos no pueden conseguir el mismo puesto en la misma edición.

Un Equipo participa en 1 o N Ediciones.
En una edición participan de 1 a N equipos
Cada vez que un Equipo participa en una Edición
consigue un único puesto que lo identifica

e.- Los corredores puede cambiar de equipo de una edición a otra, peri nunca dentro de la misma.

Un corredor en una edición pertenece a un único equipo
Un equipo en una edición le pertenece de 1 a N corredores.
Un corredor de un equipo puede pertenecer (es decir, puede participar) de 1 a n ediciones.

f.- En cada etapa de una edición un corredero consgue un único puesto y un puesto es conseguido pro un único corredor,. Además cada puesto conseguido implica un tiempo determinado. Es decir, cada corredor en cada etapa de cada edición, consigue un tiempo.

Un corredor en una edición corre de 1 a N etapas_tipo. 
Un corredor corre en una Etapa_tipo de 1 a N ediciones. 
En una Etapa_tipo de una Edición corren de 1 a N corredores. 
Un corredor corre en una etapa de una Edición, consiguiendo un tiempo y un puesto.






Icon activity.jpg
Club naútico
  • Un club náutico desea tener informatizados los datos correspondientes a sus instalaciones, empleados, socios y embarcaciones que se encuentran en dicho club. El club esta organizado de la siguiente forma:
  1. Los socios pertenecientes al club vienen definidos por su nombre, dirección, DNI, teléfono y fecha de ingreso en el club.
  2. Las embarcaciones vienen definidas por: matricula, nombre, tipo y dimensiones.
  3. Los amarres tienen como datos de interés el número de amarre, la lectura del contador de agua y luz, y si tienen o no servicios de mantenimiento contratados.
  4. Por otro lado, hay que tener en cuenta que una embarcación pertenece a un socio aunque un socio puede tener varias embarcaciones. Una embarcación ocupará un amarre y un amarre está ocupado por una sola embarcación. Es posible que existan amarres no ocupados. Es importante la fecha en la que una embarcación es asignada a un amarre.
  5. Los socios pueden ser propietarios de amarres, siendo importante la fecha de compra del amarre. Hay que tener en cuenta que un amarre pertenece a un solo socio y que NO HAY ninguna relación directa entre la fecha en la que se compra un amarre y en la que una embarcación se asigna a un amarre.
  6. El club náutico está dividido en varias zonas definidas por una letra, el tipo de barcos que tiene, el numero de barcos que contiene, la profundidad y el ancho de los amarres. Una zona tendrá varios amarres y un amarre pertenece a una sola zona.
  7. En cuanto a los empleados, estos vienen definidos por su código, nombre, dirección, teléfono y especialidad. Un empleado está asignado a varias zonas y en una zona puede haber más de un empleado, siendo de interés el número de barcos de los que se encarga en cada zona.

ClubNautico.png









Icon activity.jpg

Crear tiendas

  • Realiza una pequeña app web que añada tiendas a nuestra base de datos dwes
  • En un formulario daremos los valores de tienda y teléfono
  • En un botón submit iniciaremos el proceso y si todo es ok se agragará la tienda en la tabla correspondiente
  • Posteriormente se mostrará el mensaje informando
Se ha agregado la tienda con código XXX nombre: YYY teléfono: ZZZ
  • Se quedará el mismo formulario para poder volver a añadir más tiendas
  • Además visualizaremos debajo del formulario todas las tiendas mejor en una tabla.








Icon activity.jpg

Actividad

  • Realiza una aplicación que permita registrar usuarios o bien visualizarlos
  • La password ha de estar cifrada (md5)
 $pass = $_POST['....'];
 $pass = md5($pass); //Aquí la pass queda cifrada usando la función md5
  • Crea un formulario con un campo de texto para nombre y password
  • En ella el usuario podrá
  1. Registrarse
  2. Visualizar todos los usuarios registrados
  3. Borrar la tabla

LoginRegistrarVisualizar.png

  • Ten en cuenta que se debe de permitir insertar el nombre por ejemplo Peters' Son
para que el usuario se puede registrar
  • Si no aporto nombre o password me informará de ello

NoDatosRegistrarVisualizar.png

  • Si borramos me informará del número de registros borrados

BorradosRegistrarVisualizar.png

  • Al ver usuarios mostrará todos los usuarios que estén en la base de datos

ListadoRegistrarVisualizar.png

Aqui puedes ver un ejemplo de la aplicación http://manuel.infenlaces.com/dwes/RegistrarUsuarios/

Icon present.gif
Tip: Si pide indentificarse accede con alumno/fuina