Documentos de Académico
Documentos de Profesional
Documentos de Cultura
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 CLAVE TIPO DE DATO CARACTERÍSTICAS
PRIMA FORÁ
RIA NEA
id_tienda x INT(5) UNSIGNED,
NOT NULL,
AUTO_INCREMENT
ubicacion_tienda TINYTEXT(100 NOT NULL
)
telefono_tienda VARCHAR(8) NOT NULL, UNIQUE
email_tienda VARCHAR(50) NULL
Tabla No 2
MELVIN VARGAS - CURSADA #34950
empleados
CAMPOS CLAVE CLAV TIPO DE DATO CARACTERÍSTICAS
PRIMA E
RIA FORÁ
NEA
dni_empleado X VARCHAR(13) NOT NULL
nombre_empleado VARCHAR(50) NOT NULL
apellido_empleado VARCHAR(50) NOT NULL
cargo VARCHAR(50) NOT NULL
sueldo_empleado FLOAT(5) UNSIGNED, NOT
NULL
fecha_ingreso DATE NOT NULL
domicilio_empleado TINYTEXT(100 NOT NULL
)
telefono_empleado VARCHAR(8) NOT NULL, UNIQUE
email_empleado VARCHAR(50) NULL
id_tienda X INT(5) UNSIGNED, NOT
NULL
Tabla No 3
Descripción: La tabla “clientes” va a contener las columnas dni_cliente, nombre_cliente,
apellido_cliente, telefono_cliente, domicilio_cliente, email_cliente.
MELVIN VARGAS - CURSADA #34950
clientes
CAMPOS CLAVE CLAVE TIPO DE DATO CARACTERÍSTICAS
PRIMA FORÁN
RIA EA
dni_cliente X VARCHAR(13) NOT NULL
nombre_cliente VARCHAR(50) NOT NULL
apellido_cliente VARCHAR(50) NOT NULL
telefono_cliente VARCHAR(8) NOT NULL, UNIQUE
domicilio_cliente TINYTEXT(100 NOT NULL
)
email_cliente VARCHAR(50) NULL
dni_empleado X VARCHAR(13) NOT NULL
Tabla No 4
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
MELVIN VARGAS - CURSADA #34950
Tabla No 5
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_clientes
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 DATE 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
nombre_proveedor VARCHAR(50) NOT NULL
telefono_proveedor VARCHAR(8) NOT NULL, UNIQUE
ubicacion_proveedor TINYTEXT(100 NOT NULL
)
email_proveedor VARCHAR(50) 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
nombre_material VARCHAR(50) NOT NULL
descripcion_material TINYTEXT(150 NOT NULL
)
precio_unidad_material FLOAT(5) UNSIGNED, NOT
NULL
cantidad_existencia INT(5) UNSIGNED, NOT
NULL
Id_proveedor X INT(5) UNSIGNED, 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 CLAVE CLAVE TIPO DE DATO CARACTERÍSTICAS
PRIMARI FORÁN
A EA
id_compra X INT(5) UNSIGNED, NOT
NULL,
AUTO_INCREMEN
tipo_compra VARCHAR(50) NOT NULL
cantidad INT(5) UNSIGNED, NOT
NULL
dni_cliente X VARCHAR(13) NOT NULL
id_material X INT(5) UNSIGNED, NOT
NULL
fecha_compra DATE NOT NULL
Tabla No 9
MELVIN VARGAS - CURSADA #34950
respaldo_compras
CAMPOS CLAVE CLAVE TIPO DE DATO CARACTERÍSTIC
PRIMAR FORÁNE AS
IA A
idCompra X INT(5) UNSIGNED, NOT
NULL,
AUTO_INCREMEN
dniCliente X VARCHAR(13) NOT NULL
idMaterial X INT(5) UNSIGNED, NOT
NULL
cantidadMaterial INT(5) UNSIGNED, NOT
NULL
usuario VARCHAR(50) NOT NULL
fechaCompra DATE NOT NULL
LISTADO DE VISTAS
vista_cantidad_empleados_tiendas
Descripción: Cantidad de empleados que hay por tienda.
Tablas:
tiendas
MELVIN VARGAS - CURSADA #34950
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
vista_stock_materiales
Descripción: Especifica la cantidad de materiales en existencia.
Tablas:
MELVIN VARGAS - CURSADA #34950
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
MELVIN VARGAS - CURSADA #34950
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
MELVIN VARGAS - CURSADA #34950
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.
Tablas:
tiendas
MELVIN VARGAS - CURSADA #34950
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
MELVIN VARGAS - CURSADA #34950
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:
compras
respaldo_compras