Documentos de Académico
Documentos de Profesional
Documentos de Cultura
#34950 SQL - Segunda Entrega - Proyecto Final - Melvin Vargas
#34950 SQL - Segunda Entrega - Proyecto Final - Melvin Vargas
SQL
CURSO
SEGUNDO AVANCE
PROYECTO FINAL
TEMÁTICA
MELVIN VARGAS - CURSADA #34950
Tabla No 1
Descripción: La tabla “Tiendas” va a contener las columnas id_tienda, telefono_tienda,
ubicacion_tienda, email_tienda.
TIENDAS
CAMPOS CLAVE CLAV TIPO DE DATO CARACTERÍSTICAS
PRIMA E
RIA FORÁ
NEA
id_tienda x INT(2) UNSIGNED,
NOT NULL,
AUTO_INCREMENT,
UNIQUE
ubicacion_tienda TINYTEXT(100 NOT NULL,
)
telefono_tienda INT(8) UNSIGNED, NOT
NULL
email_tienda VARCHAR(50) NULL
MELVIN VARGAS - CURSADA #34950
Tabla No 2
Descripción: La tabla “Clientes” va a contener las columnas dni_cliente, nombre_cliente,
apellido_cliente, telefono_cliente, domicilio_cliente, email_cliente.
CLIENTES
CAMPOS CLAVE CLAVE TIPO DE DATO CARACTERÍSTICAS
PRIMA FORÁN
RIA EA
dni_cliente X VARCHAR(13) NOT NULL, UNIQUE
id_tienda X INT(2) UNIQUE,
UNSIGNED,
NOT NULL,
AUTO_INCREMENT
nombre_cliente VARCHAR(50) NOT NULL
apellido_cliente VARCHAR(50) NOT NULL
telefono_cliente INT(8) UNSIGNED, NOT
NULL
domicilio_cliente TINYTEXT(100 NOT NULL
)
email_cliente VARCHAR(50) NULL
Tabla No 3
MELVIN VARGAS - CURSADA #34950
Descripción: En la tabla “LOG_Clientes” se van a guardar los registros del nuevo cliente
después que se halla insertado en la tabla “CLIENTES”.
LOG_CLIENTES
CAMPOS CLAVE CLAVE TIPO DE DATO CARACTERÍSTICAS
PRIMA FORÁN
RIA EA
dni_log_cliente X VARCHAR(13) NOT NULL
usuario VARCHAR(50) NOT NULL
fecha_registro DATETIME NOT NULL
tipo VARCHAR(50) NOT NULL
accion VARCHAR(50) NOT NULL
Tabla No 4
Descripción: En la tabla “Actualizar_telefono_clientes” se van a guardar los registros del
nuevo número telefónico del cliente antes de realizar la actualización a tabla “CLIENTES”.
ACTUALIZAR_TELEFONO_CLIENTE
MELVIN VARGAS - CURSADA #34950
S
CAMPOS CLAVE CLAVE TIPO DE DATO CARACTERÍSTIC
PRIMA FORÁ AS
RIA NEA
dniCliente X VARCHAR(13) NOT NULL
Teléfono_anterior VARCHAR(8) NOT NULL
Teléfono_actual VARCHAS(8) NOT NULL
usuario VARCHAR(50) NOT NULL
Fecha_actualizacion DATETIME NOT NULL
Tabla No 5
Descripción: La tabla “Empleados” va a contener las columnas dni_empleado,
nombre_empleado, apellido_empleado, id_tienda, domicilio_empleado,
teléfono_empleado, sueldo_empleado, tipo_empleado, email_empleado.
EMPLEADOS
CAMPOS CLAVE CLAV TIPO DE DATO CARACTERÍSTICAS
PRIMA E
RIA FORÁ
NEA
dni_empleado X VARCHAR(13) NOT NULL, UNIQUE
nombre_empleado VARCHAR(50) NOT NULL
MELVIN VARGAS - CURSADA #34950
Tabla No 6
Descripción: La tabla “Proveedores” va a contener las columnas id_proveedor,
nombre_proveedor, telefono_proveedor, ubicacion_proveedor, email_proveedor.
PROVEEDORES
CAMPOS CLAVE CLAV TIPO DE DATO CARACTERÍSTICAS
PRIMA E
RIA FORÁ
NEA
id_proveedor x INT(5) UNSIGNED,
NOT NULL,
AUTO_INCREMENT,
UNIQUE
nombre_proveedor VARCHAR(50) NOT NULL
telefono_proveedor INT(8) UNSIGNED, NOT
NULL
ubicacion_proveedor TINYTEXT(100 NOT NULL
)
MELVIN VARGAS - CURSADA #34950
Tabla No 7
Descripción: La tabla “Materiales” va a contener las columnas id_producto,
id_proveedor, nombre_producto, descripcion_producto, precio_producto,
cantidad_min_producto, cantidad_max_producto.
MATERIALES
CAMPOS CLAVE CLAV TIPO DE DATO CARACTERÍSTICAS
PRIMA E
RIA FORÁ
NEA
id_material X INT(5) UNSIGNED, NOT
NULL,
AUTO_INCREMENT,
UNIQUE
id_proveedor X INT(5) UNSIGNED, UNIQUE,
NOT NULL,
AUTO_INCREMENT
nombre_material VARCHAR(50) NOT NULL
descripcion_material TINYTEXT(150 NOT NULL
)
MELVIN VARGAS - CURSADA #34950
Tabla No 8
Descripción: La tabla “Compras” va a contener las columnas numero_factura,
id_producto, descripcion, tipo_factura, fecha, cantidad, dni_cliente.
COMPRAS
CAMPOS CLAV CLAV TIPO DE DATO CARACTERÍSTICAS
E E
PRIM FORÁ
ARIA NEA
id_compra X INT(5) UNSIGNED, NOT
NULL,
AUTO_INCREMEN,
UNIQUE
dni_cliente X VARCHAR(13) UNSIGNED,
UNIQUE,
NOT NULL
id_material X INT(5) UNSIGNED, UNIQUE,
NOT NULL,
AUTO_INCREMENT
tipo_compra VARCHAR(50) NOT NULL
cantidad INT(8) UNSIGNED, NOT
NULL
fecha DATE NOT NULL
MELVIN VARGAS - CURSADA #34950
Tabla No 9
Descripción: La tabla “Respaldo_Compras” va a contener las columnas numero_factura,
id_producto, descripcion, tipo_factura, fecha, cantidad, dni_cliente.
RESPALDO_COMPRAS
CAMPOS CLAV CLAV TIPO DE DATO CARACTERÍSTICAS
E E
PRIM FORÁ
ARIA NEA
idCompra X INT(5) UNSIGNED, NOT
NULL,
AUTO_INCREMEN
dniCliente X VARCHAR(13) NOT NULL
idMaterial X INT(2) UNSIGNED, NOT
NULL
cantidadMaterial INT(5) UNSIGNED, NOT
NULL
usuario VARCHAR(50) NOT NULL
fechaCompra DATETIME NOT NULL
LISTADO DE VISTAS
MELVIN VARGAS - CURSADA #34950
vista_cantidad_empleados_tiendas
Descripción: Cantidad de empleados que hay por tienda.
Tablas:
tiendas
empleados
vista_cantidad_materiales_vendidos
Descripción: Muestra la cantidad de materiales vendidos.
Tablas:
compras
materiales
vista_compra_clientes
Descripción: Cantidad de materiales que un cliente ha comprado.
Tablas:
clientes
compras
materiales
MELVIN VARGAS - CURSADA #34950
vista_stock_materiales
Descripción: Especifica la cantidad de materiales en existencia.
Tablas:
compras
materiales
vista_total_ingresos_dinero
Descripción: Cantidad de dinero que se obtenido por medio de las ventas.
Tablas:
materiales
compras
LISTADO DE FUNCIONES
funcion_cantidad_empleados
Descripción: Función DETERMINISTIC que recibe como parámetro el
idTienda y retorna/muestra la cantidad de empleados que laboran en la
misma.
Tablas:
empleados
tiendas
funcion_compras_realizadas
Descripción: Función de solo lectura que al recibir dni del cliente retorna la
cantidad de compras que ha realizado.
Tablas:
clientes
compras
funcion_nombre_material
Descripción: Función de solo lectura que recibe el como parámetro el
idMaterial y retorna/muestra el nombre de dicho material.
Tablas:
materiales
Tablas:
empleados
sp_agregarDatos
Descripción: Inserta un nuevo registro de tiendas en la tabla y se verifica al
mismo tiempo de que esta no existe en la tabla para su correspondiente
creación, en el caso de que ya exista la tienda, el stored procedures retorna un
mensaje de error.
Tablas:
tiendas
sp_eliminarDatos
Descripción: Al momento de ingresar el id de una tienda cuyo registro existe,
esta tienda se eliminará de la tabla, de no existir el id de la tienda que se ha
introducido se retorna un mensaje de error.
MELVIN VARGAS - CURSADA #34950
Tablas:
tiendas
LISTADO DE TRIGGER
tr_log_clientes
Descripción: El trigger tr_log_clientes se dispara después de insertar nuevos
clientes en la tabla de clientes.
Objetivo: Crear una bitácora cada vez que se inserta un nuevo registro en la
tabla clientes.
Tablas:
clientes
log_clientes
tr_tr_actualizar_telefono_clientes
Descripción: trigger que se dispara cada vez que se ejecuta el comando SQL
'UPDATE' en la tabla clientes.
Tablas:
clientes
actualizar_telefono_clientes
tr_actualizar_stockMateriales
Descripción: Este trigger nos permite actualizar el stock de los materiales
existentes cada vez que se realiza una nueva compra.
Tablas:
materiales
compras
tr_respaldo_compras
Tablas:
MELVIN VARGAS - CURSADA #34950
compras
respaldo_compras