miércoles, 30 de mayo de 2012

REQUERIMIENTO PARA BASES DE DATOS 1P2012


REQUERIMIENTO FINAL PARA BASES DE DATOS
1p-2012

Dibuje un DER con notación de Martin, para representar la situación de una empresa comercializadora e importadora, de la cual se conoce:

• La empresa trabaja con diferentes productos. De cada uno se conoce su código que lo identifica, nombre, precio y categoría a que pertenece. (Existe una catalogo con todas las categorías, son cerca de 10 categorías).

• Cada producto tiene un único suministrador.

• De cada suministrador se conoce el código que lo identifica, nombre, dirección y teléfono.

• En la empresa se elaboran diferentes pedidos de productos. Cada pedido tiene un número que lo identifica, la fecha en que se confeccionó, la forma en que será despachado (D=Domicilio, P=Personal), el valor total del pedido y el cliente a quien corresponde. Además cada pedido es atendido por un empleado.
 

• De los clientes se conoce su código, nombre, dirección, ciudad y teléfono.

• Los empleados de la empresa se identifican por un número de expediente y de ellos interesa conocer el nombre, apellidos, dirección particular y fecha de ingreso.

• En cada pedido aparecen varios productos, cada producto de cada pedido, va acompañado de la cantidad solicitada y el precio vendido.

2. Transforme el modelo anterior en un modelo relacional.
3. Implemente el modelo relacional en el motor de bases de datos Firebird 2.0.
4. Cree para cada una de las tablas su llave primaria, generador y su disparador de auto incremento.
5. Implemente las restricciones de Integridad para cada una de las relaciones existentes en la base de datos. Nota: el detalle maestro entre los pedidos y los productos debe tener regla de borrado en cascada. 
6. Utilice dominios para definir algunos tipos de datos.
7. Para algunas categorías de productos defina vistas (VIEW) cuyos nombres sean descriptivos.
8. Realice las Instrucciones INSERT que se consideren necesarias.  Puede cargar los datos desde un archivo plano .CSV
9. Indique para cada una de las siguientes operaciones una expresión en SQL:

• Obtener los detalles completos de todos los pedidos que han realizado los clientes cuyo nombre comienza con un carácter pasado como parámetro.
• Listar los vendedores, ordenados por el nombre indicando por cada uno cual es el valor total de las ventas que ha realizado y la cantidad de las mismas.
• Obtener el nombre del vendedor que ha despacho el pedido de mayor valor.
• Obtener el nombre del artículo más vendido por la compañía.
• Obtener los nombres de los vendedores que hayan despachado pedidos cuyo valor total sea mayor al promedio de venta total de todos los pedidos.

10. Cree un disparador que valide la entrada de la forma de despacho, de tal manera que solo se inserten valores ‘D’ ó ‘P’ y no se reciban nulos en este campo.

12. Cree un procedimiento almacenado que permita calcular el valor de venta al público de todos los productos de la compañía de acuerdo a los siguientes criterios: si el precio del producto es menor a 10000 se vende con un 10% de incremento, si el precio del producto está entre 10000 y 20000 se vende con un 10% de descuento, si el precio es mayor a 20000 el precio de venta al público es el mismo precio del producto aumentado en 2500 pesos.