Tarea para AD05.

Tarea para AD05.

Detalles de la tarea de esta unidad.
Enunciado.

EJERCICIO 1

Crear una base de datos llamada DBJefeHijo con DB40 con la siguiente información:

public static void main(String[] args)
{
File fichero=new File("baseDatos");
fichero.delete();
/*Este código anterior lo ponemos por si la base de datos ya existiera y quisiéramos empezar desde el principio.*/
ObjectContainer baseDatos=Db4oEmbedded.openFile("BDJefeHijo ");
baseDatos.store(new Jefe("Ángel", 5, 53,new Hijo("Gustavo", 7)));
baseDatos.store(new Jefe("Nieves", 3, 45,new Hijo("Iván", 3)));
baseDatos.store(new Jefe("Jesús", 3, 5,new Hijo("Noelia", 3)));
baseDatos.store(new Jefe("Dolores", 5,63,new Hijo("Sergio", 7)));
baseDatos.store(new Jefe("Vicki", 3, 5,null));
baseDatos.store(new Jefe("Fátima", 5,63,new Hijo("Lidia", 27)));
baseDatos.store(new Jefe("Juan Luís", 3, 5,null));
baseDatos.store(new Jefe("Elena", 1,42,new Hijo("David", 19)));
baseDatos.store(new Jefe("Miguel", 20,45,new Hijo("Paula", 3)));
baseDatos.store(new Jefe("Jesús", 19, 44,new Hijo("Rubén", 12)));
baseDatos.close();
}

Realizar las siguientes consultas:

  1. Visualizar los jefes que tengan más de 55 años.
  2. Modificar la edad de Miguel incrementando su edad un año más.
  3. Borrar los jefes que llevan más de 6 años en la empresa.
  4. Visualizar todos los jefes que quedan, incluidos sus hijos, que no han sido borrados anteriormente.

        EJERCICIO 2

        Dado el siguiente modelo de datos

        CREATE TABLE CLIENTES
        (
        IDCLIENTE NUMBER PRIMARY KEY,
        NOMBRE VARCHAR2(50),
        DIRECCION VARCHAR2(50),
        POBLACION VARCHAR2(50),
        CODPOSTAL NUMBER(5),
        PROVINCIA VARCHAR2(40),
        NIF VARCHAR2(9) UNIQUE,
        TELEFONO1 VARCHAR2(15),
        TELEFONO2 VARCHAR2(15),
        TELEFONO3 VARCHAR2(15)
        );
         
        CREATE TABLE PRODUCTOS
        (
        IDPRODUCTO NUMBER PRIMARY KEY,
        DESCRIPCION VARCHAR2(80),
        PVP NUMBER,
        STOCKACTUAL NUMBER
        );
         
        CREATE TABLE VENTAS
        (
        IDVENTA NUMBER PRIMARY KEY,
        IDCLIENTE NUMBER NOT NULL REFERENCES CLIENTES,
        FECHAVENTA DATE
        );
         
        CREATE TABLE LINEASVENTAS
        (
        IDVENTA NUMBER,
        NUMEROLINEA NUMBER,
        IDPRODUCTO NUMBER,
        CANTIDAD NUMBER,
        FOREIGN KEY (IDVENTA) REFERENCES VENTAS (IDVENTA),
        FOREIGN KEY (IDPRODUCTO) REFERENCES PRODUCTOS (IDPRODUCTO),
        PRIMARY KEY (IDVENTA, NUMEROLINEA)
        );
        1. Definir un tipo varray de dimensión 3 para contener los teléfonos
        2. Crear los tipos dirección, cliente, producto y línea de venta
        3. Crear un tipo tabla anidada para contener las líneas de una venta:
        4. Crear un tipo venta para los datos de las ventas, cada venta tendrá un atributo LINEAS del tipo tabla anidada definida anteriormente:
        5. Crea el cuerpo del tipo anterior, teniendo en cuenta que se definirá la función miembro TOTAL_VENTA que calcula el total de la venta de las líneas de venta que forman parte de una venta, contará el número de elementos de una tabla o de un array y devolverá el número de líneas que tiene la venta.
        6. Crear las tablas donde almacenar los objetos de la aplicación. Se creará una tabla para clientes, otra para productos y otra para las ventas, en dichas tablas se definirán las oportunas claves primarias.
        7. Inserta dos clientes y cinco productos.
        8. Insertar en TABLA_VENTAS la venta con IDVENTA 1 para el IDCLIENTE 1
        9. Insertar en TABLA_VENTAS dos líneas de venta para el IDVENTA 1 para los productos 1 (la CANTIDAD es 1) y 2 (la CANTIDAD es 2)
        10. Insertar en TABLA_VENTAS la venta con IDVENTA 2 para el IDCLIENTE
        11. Insertar en TABLA_VENTAS tres líneas de venta para el IDVENTA 2 para los productos 1 (la CANTIDAD es 2), 4 (la CANTIDAD es 1) y 5 (la CANTIDAD es 4)
        12. Realizar un procedimiento que recibiendo el identificador visualice los datos de la venta.
        Criterios de puntuación. Total 10 puntos.

        Total 10 puntos.

        • Ejercicio 1. 4 puntos (1 punto cada apartado).
        • Ejercicio 2. 6 puntos (1 punto cada dos apartados).

        Se tendrá en cuenta que:

        • El funcionamiento correcto de lo que se pide.
        • Tratamiento adecuado de posibles excepciones.
        Recursos necesarios para realizar la Tarea.

        Ejercicio 1.- Los contenidos y ejemplos realizados en la unidad.

        Ejercicio 2.- Idem del ejercicio 1.

        Consejos y recomendaciones.

        Para el Ejercicio 1.- Ninguno en particular.

        Para el Ejercicio 2.- Sigue los pasos indicados en el enunciado. Solo debes ir completando las sentencias SQL.

        Indicaciones de entrega.

        Una vez realizada la tarea elaborarás un único documento donde figuren las respuestas correspondientes. El envío se realizará a través de la plataforma de la forma establecida para ello, y el archivo se nombrará siguiendo las siguientes pautas:

        apellido1_apellido2_nombre_SIGxx_Tarea

        Asegúrate que el nombre no contenga la letra ñ, tildes ni caracteres especiales extraños. Así por ejemplo la alumna Begoña Sánchez Mañas para la quinta unidad del MP de AD, debería nombrar esta tarea como...

        sanchez_manas_begona_AD05_Tarea