Manual BD
Manual BD
Manual BD
MATERIA:
DOCENTE: MSI. E ING. RAÚL HÉCTOR TRUJILLO JIMÉNEZ
MANUAL TÉCNICO
INTEGRANTE(S):
ÁVILA BÁRCENAS LUIS ALBERTO – E19021038
CERVANTES MURRIETA CRISTINA ALEJANDRA – E19021599
JIMÉNEZ GONZÁLEZ BRYAN – E19020311
JEREZANO GÓMEZ GUSTAVO – E19021606
FECHA: 30/04/2022
Equipo: 3
Contenido
Hamachi............................................................................................................................................4
Descarga e instalación................................................................................................................4
Recomendación previa a la configuración de Hamachi ...................................................10
Configuración de Hamachi .......................................................................................................13
MySQL ............................................................................................................................................19
Descarga e instalación..............................................................................................................19
Configuración de MySQL .........................................................................................................35
Objetivo especifico ........................................................................................................................38
Objetivos generales...................................................................................................................38
Diagrama conceptual ....................................................................................................................39
Diagrama entidad relación ...........................................................................................................40
Diccionario de datos......................................................................................................................41
LDD (lenguaje de definición de datos) .......................................................................................42
Tablas .............................................................................................................................................42
Bitácoras .........................................................................................................................................46
Segmentos .....................................................................................................................................58
índices .............................................................................................................................................59
Particiones ......................................................................................................................................60
Usuarios ..........................................................................................................................................62
LMD (lenguaje de manipulación de datos) ................................................................................65
Selects ........................................................................................................................................65
Inserts .........................................................................................................................................68
Conclusión ......................................................................................................................................88
Referencias ....................................................................................................................................89
Página 2 de 89
Página 3 de 89
Hamachi
Descarga e instalación
CACM
CACM
Página 4 de 89
Nos permitirá seleccionar el lenguaje de nuestra preferencia, una vez marcado
damos clic en siguiente.
CACM
CACM
Página 5 de 89
A continuación, veremos un cuadro donde nos pregunta dónde nos gustaría que se
instalara nuestro Hamachi. Podemos cambiar su ubicación dando clic en examinar,
una vez que ya haya marcado su destino aceptamos al igual, podemos marcar la
casilla si deseamos crear un acceso directo de la aplicación en nuestro escritorio y
damos clic en siguiente.
CACM
CACM
Página 6 de 89
Nos lanzara una advertencia si es que deseamos permitir que esta aplicación pueda
crear cambios en nuestro sistema, al que daremos clic en sí, luego continuara con
la instalación y esperamos que termine.
CACM
Ya que termino su instalación sin ningún error, daremos clic en terminar y se iniciara
de manera automática el Hamachi
CACM
Página 7 de 89
Esperamos que inicie
CACM
Ya que inicio podemos ver su pequeña interfaz gráfica. Como podemos ver, para
poder iniciar el Hamachi debemos dar clic en el botón azul, de esta manera nos
abrirá un cuadro para iniciar nuestra sesión.
CACM
CACM
Página 8 de 89
Llenamos de manera correcta los campos del formulario ingresando un correo
electrónico en uso y crearemos una contraseña que no olvidemos. Luego de esto,
damos clic en el cuadro inferior crear cuenta
CACM
CACM
Página 9 de 89
Recomendación previa a la configuración de Hamachi
Nos mostrara las opciones disponibles, y las marcaremos como desactivadas, luego
de eso damos clic en aceptar
Página 10 de 89
Con esto evitaremos que ocurra algún error al intentar dar uso de nuestro Hamachi
Así debe de ver se para que podamos continuar con la configuración.
Página 11 de 89
Página 12 de 89
Configuración de Hamachi
Ya que contamos con él, lo vamos a ejecutar, una vez que haya abierto daremos
clic sobre el botón de encender para comenzar y poder crear un servidor funcional.
Página 13 de 89
Nos desplegara dos opciones posibles para poder realizar.
1. Crear una red nueva
2. Unirse a una red existente
Página 14 de 89
2. Ya con los datos ingresados en nuestro formulario, damos clic en crear.
Podemos ingresar cualquier nombre, pero si ya hay alguna red existente con
ese nombre, no nos permitirá continuar, por lo que debemos ingresar una
variable que permita el nombre, la contraseña debemos recordarla, ya que
esta se proporcionará a usuarios con los que deseamos trabajar en ese
momento.
Ya con estos dos sencillos pasos hemos creado nuestra red. Está únicamente nos
permite ingresar cinco usuarios, ya que estamos contando con la versión gratuita.
Página 15 de 89
Podemos ver el nombre los usuarios que se encuentran conectados en ese
momento a nuestra red, dando clic en la flecha azul que se encuentra al lado de 1/5.
En cambio, si damos clic derecho sobre el nombre de nuestra red, nos desplazara
un pequeño menú de opciones disponibles que podemos implementar en ese
momento según sea la que requerimos.
Página 16 de 89
2. Unirse a una red existente
Ahora intentaremos con la segunda opción, unirse a una red. Para ello debemos de
seguir los siguientes pasos:
1. Haremos clic unirse a una red existente
Nos abrirá un cuadro de texto, donde nos hará la solicitud del nombre y contraseña
de la red a la que queremos ingresar. Ya cubiertos estos campos damos clic en
unirse
Página 17 de 89
Página 18 de 89
MySQL
Descarga e instalación
Iniciaremos con la descarga de nuestro MySQL desde la página de internet
https://dev.mysql.com/downloads/installer/. Mismo donde seleccionaremos el
sistema operativo de nuestra computadora y seguimos dando clic en descargar del
recuadro azul. Nota: la instalación de esta base de datos en concreto, fue realizada
en la versión 5.1. pero el proceso de instalación y de sus componentes fue en la
versión 8.0.29, esto no afecta en nada ya que todo se realizara directamente de la
consola de Windows.
CACM
Nos dará la opción de iniciar sesión o bien registrarse. En este caso no es muy
necesario, por lo que nos iremos en parte inferior izquierda que dice no gracias,
solo inicia mi descarga. Esperamos que termine y nos dará un ejecutable.
CACM
Página 19 de 89
Una vez que demos clic en el programa ya descargado en nuestros documentos,
nos lanzara un cuadro de advertencia en el que daremos ejecutar
CACM
Veremos un cuadro que nos dice de permitir que este programa haga cambios en
nuestro sistema, al que daremos clic en sí. Seguido de esto, continuara con la
instalación.
Página 20 de 89
Nos dará un cuadro de bienvenida al que daremos clic en siguiente
Seleccionamos los servicios que deseamos instalar, en este caso marcamos todos
y damos clic en siguiente
Página 21 de 89
Ya tenemos nuestros servicios listos para continuar con la descarga, a lo que
daremos clic en ejecutar, esperamos de unos minutos que terminen la descargas
Página 22 de 89
Ahora veremos un dialogo para la configuración de nuestros productos que nos
dicen que ya están listos para su configuración, por lo que daremos clic en siguiente
Nos dice ahora de verificar y actualizar la base de datos, por lo que seleccionamos
skip…, continuamos dando en siguiente
Página 23 de 89
Gracias a lo anterior, aplicaremos las configuraciones y damos clic en ejecutar
Esperamos que termine con la actualización e instalación, una vez hecho esto
damos clic en finalizar
Página 24 de 89
Ya que dimos clic en finalizar, abrirá el siguiente cuadro de texto, donde
seleccionaremos el producto que vamos a añadir. Por el momento, seleccionaremos
MySQL Server, seguido damos clic en add.
Nuevamente podemos seleccionar los productos que deseamos instalar, para esto,
vamos a desplegar las versiones disponibles, dando clic en el símbolo +
Página 25 de 89
Podemos ver ahora los tres productos existentes, nuevamente tenemos que dar clic
en el icono de + para ver las versiones que están disponibles. Cada una de ellas
debemos de irlas abriendo para ver cuál permite nuestro ordenador instalar.
Una vez que hayamos seleccionado uno, daremos clic en la primera flecha de en
medio, para poder pasarla al cuadro en blanco de la derecha. Ya que la tenemos,
podemos dar clic en next
Página 26 de 89
Verificamos que contamos con los requerimientos necesarios, uno de ellos es el
Microsoft Visual C++, de no tenerlo se instalara de igual manera. Daremos clic en
ejecutar y esperamos un poco.
Página 27 de 89
Ya terminado, seguimos viendo la instalación que puede llegar a tardar uno minutos
y daremos clic en ejecutar
Nos pasara a otro cuadro de dialogo sobre la configuración del producto, ya que se
encuentra la configuración lista damos en siguiente
Página 28 de 89
Configuración del producto, una vez que se encuentra completado podemos seguir
con su instalación para culminar con ella y seguir con los pasos correspondientes.
Por lo que en el siguiente cuadro de texto que nos muestre le damos clic en
siguiente.
Ya podemos ver el cuadro de texto que nos dice que la instalación está completa,
por lo que daremos clic en finalizar
Página 29 de 89
Ahora que tenemos lo anterior, podemos dar inicio con la selección de tipo y redes,
en el cuadro de texto veremos cosas como como lo son el puerto y tipo de
configuración. Ya que cubrimos los espacios del formulario, damos clic en siguiente
Esto nos llevará a sesiones y roles que tendrá cada usuario, donde vamos a asignar
una contraseña que recordemos, seguido de esto la vamos a confirmar. Ya hecho
esto, damos clic en siguiente.
Página 30 de 89
Ahora tenemos los servicios de Windows, no haremos nada en esta parte en cuanto
seleccionar algún espacio o no, únicamente daremos clic en siguiente.
Página 31 de 89
Ya que termino, todos los puntos deben encontrarse marcados de verde. Ya con
esto podemos dar clic en finalizar y podremos ver que ya se encuentra correcta
nuestra instalación
Ya podemos ver que en nuestro inicio de Windows los ocmponentes del MySQL
instalados.
Página 32 de 89
Para verificar que han sido instalados correctamente deberemos iniciarlo desde el
símbolo de sistema de Windows. Iniciando sesión en MySQL con el usuario y
contraseña proporcionados en la instalación, por medio de la siguiente sintaxis.
mysql –hlocalhost –uroot –p –P (puerto de instalación)
Sabemos que la instalación ha sido correcta cuando la consola nos permita acceder
al MySQL desde nuestra consola
Página 33 de 89
Página 34 de 89
Configuración de MySQL
Para poder realizar esto necesitamos ingresar un usuario que tenga permisos, para
así otorgar permisos a otros usuarios sobre tablas o esquemas.
Ingresamos a nuestro símbolo del sistema (CMD) con permisos de administrador.
Nos mostrara una advertencia a la que le daremos clic en sí
Página 35 de 89
Ahora vamos a crear la sentencia para ejecutar usuarios y será:
CREATE USER 'root'@'%' IDENTIFIED BY 'password';
A continuación, podemos ver que esta sentencia fue aceptada por lo que ya se
encuentra el usuario creado.
Página 36 de 89
Gracias a lo anterior, la sentencia para iniciar sesión será diferente.
La sentencia que ocuparemos en caso de ser servidores será:
mysql -hlocalhost -uroot -p -P3309
La diferencia es que el hlocalhost se trata del nombre de nuestra computadora o la
del otro usuario a la que vamos a conectarnos o con la dirección Ip4 que nos
proporciona Hamachi. El nombre de nuestra computadora podemos verlo en la parte
superior de Hamachi, o bien:
Mientras que uroot nombre del usuario, -p será la contraseña y -P el número del
puerto de la computadora anfitriona.
Página 37 de 89
Objetivo especifico
Garantizarle al cliente que cada vez que busque un producto, la empresa o tienda,
pueda ponerlo a su disposición. Y cuando existe un control riguroso, la empresa
podrá responder rápidamente a las necesidades del cliente, de esta manera poder
controlar los costes asociados con el exceso de stock.
Objetivos generales
o Evitar el desabastecimiento
o Exceso de inventario
Página 38 de 89
Diagrama conceptual
Página 39 de 89
Diagrama entidad relación
Página 40 de 89
Diccionario de datos
Página 41 de 89
LDD (lenguaje de definición de datos)
Tablas
Tabla de empresa
create table Empresa(
);
Tabla cliente
create table Cliente(
AND nombre LIKE '[a-zA-Z ]' AND apellidoPaterno LIKE '[a-zA-Z ]' AND
Página 42 de 89
Tabla proveedor
create table Proveedor(
);
Tabla producto
create table Producto(
);
Página 43 de 89
Tabla compra
create table Compra(
);
Página 44 de 89
Tabla venta
create table Venta(
);
Página 45 de 89
Bitácoras
Registra todos los movimientos de las tablas de nuestras tablas de la base de datos.
UNIQUE(CVE_Bitacora)
);
',NEW.cveProducto),CURDATE());
Trigger de DELETE
Create trigger Eliminacio_Compra after delete on Compra For each row
',OLD.cveProducto),CURDATE());
Página 46 de 89
Trigger de UPDATE
Create trigger Actuaizacion_Compra after UPDATE on Compra For each row
',OLD.cveCompra,'=',NEW.cveCompra,' ','folioCompra:','
',OLD.folioCompra,'=',NEW.folioCompra,' ',
',OLD.fechaCompra,'=',NEW.fechaCompra,' ','total:','
',OLD.total,'=',NEW.total,' ','cveProducto:','
',OLD.cveProducto,'=',NEW.cveProducto),CURDATE());
UNIQUE(CVE_Bitacora)
);
Página 47 de 89
Creación de triggers
Trigger de INSERT
Create trigger Insercion_Venta after insert on Venta For each row
','cveCliente=',' ',NEW.cveCliente),CURDATE());
Trigger de DELETE
Create trigger Eliminacio_Venta after delete on Venta For each row
','cveCliente=',' ',OLD.cveCliente),CURDATE());
Página 48 de 89
Trigger de UPDATE
Create trigger Actuaizacion_Venta after UPDATE on Venta For each row
',OLD.cveVenta,'=',NEW.cveVenta,' ','folioVenta:','
',OLD.folioVenta,'=',NEW.folioVenta,' ',
',OLD.fechaVenta,'=',NEW.fechaVenta,' ','total:','
',OLD.total,'=',NEW.total,' ','cveProducto:','
',OLD.cveProducto,'=',NEW.cveProducto,' ','cveCliente:','
',OLD.cveCliente,'=',NEW.cveCliente),CURDATE());
UNIQUE(CVE_Bitacora)
);
Página 49 de 89
Creación de los triggers
Trigger de INSERT
Create trigger Insercion_Producto after insert on Producto For each row
',NEW.cveProveedor),CURDATE());
Trigger de DELETE
',OLD.cveProveedor),CURDATE());
Página 50 de 89
Trigger de UPDATE
',OLD.cveProducto,'=',NEW.cveProducto,' ','nombreProducto:','
',OLD.nombreProducto,'=',NEW.nombreProducto,
',OLD.precioCompra,'=',NEW.precioCompra,' ','existencias:','
',OLD.existencias,'=',NEW.existencias,' ','cveProveedor:','
',OLD.cveProveedor,'=',NEW.cveProveedor),CURDATE());
Página 51 de 89
Creación de la bitácora empresas
UNIQUE(CVE_Bitacora)
);
Trigger de INSERT
','numContacto=',' ',NEW.numContacto),CURDATE());
Trigger de DELETE
','numContacto=',' ',OLD.numContacto),CURDATE());
Página 52 de 89
Trigger de UPDATE
',OLD.cveEmpresa,'=',NEW.cveEmpresa,' ','nombreEmpresa:','
',OLD.nombreEmpresa,'=',NEW.nombreEmpresa,' ',
'numContacto:',' ',OLD.numContacto,'=',NEW.numContacto),CURDATE());
UNIQUE(CVE_Bitacora)
);
Página 53 de 89
Creación de los triggers
Trigger de INSERT
','cveEmpresa=',' ',NEW.cveEmpresa),CURDATE());
Trigger de DELETE
Create trigger Eliminacion_Cliente after delete on Cliente For each row
','cveEmpresa=',' ',OLD.cveEmpresa),CURDATE());
Página 54 de 89
Trigger de UPDATE
',OLD.cveCliente,'=',NEW.cveCliente,' ','nombre:','
',OLD.nombre,'=',NEW.nombre,
','apellidoMaterno:',' ',OLD.apellidoMaterno,'=',NEW.apellidoMaterno,'
','numContacto:',' ',OLD.numContacto,'=',NEW.numContacto,'
','cveEmpresa:',' ',OLD.cveEmpresa,'=',NEW.cveEmpresa),CURDATE());
Página 55 de 89
Creación de la bitácora proveedor
UNIQUE(CVE_Bitacora));
Trigger de INSERT
',NEW.telefono),CURDATE());
Trigger de DELETE
',OLD.telefono),CURDATE());
Página 56 de 89
Trigger de UPDATE
row
',OLD.cveProveedor,'=',NEW.cveProveedor,' ','nombreProveedor:','
',OLD.nombreProveedor,'=',NEW.nombreProveedor,' ',
',OLD.telefono,'=',NEW.telefono),CURDATE());
Página 57 de 89
Segmentos
Este segmento devuelve los productos que están a punto de agotarse o que ya se
agotaron en la base de datos inventario, tomando como referencia la tabla de
productos y su atributo de existencias
cveProducto,nombreProducto ,precioCompra,existencias,cveProveedor
existencias DESC;
Este segmento devuelve las mayores ventas de la tabla venta arriba del monto
especificado
cveVenta,unidades,total,cveProducto,cveCliente
cveCompra,folioCompra,unidades,total,cveProducto
Página 58 de 89
índices
índices de las tablas
Página 59 de 89
Particiones
Particionamiento en las tablas compra y venta, para esto se destruyeron las llaves
foráneas y los triggers de a continuación son para mantener las relaciones entre
las tablas.
Tabla compra
Destrucción de la llave foránea
ALTER TABLE Compra DROP FOREIGN KEY compra_ibfk_1;
BEGIN
NEW.cveProducto) THEN
INSERT INTO
Compra(cveCompra,folioCompra,unidades,fechaCompra,total,cveProducto)
VALUES(NEW.cveCompra,NEW.folioCompra,NEW.unidades,NEW.fechaCompra,NEW.tot
al,NEW.cveProducto);
END IF;
END|
delimiter;
Creación de la partición
ALTER TABLE Compra PARTITION BY KEY(cveCompra) PARTITIONS 3;
Página 60 de 89
Partición de la tabla venta
Destrucción de la llave foránea
ALTER TABLE venta DROP FOREIGN KEY venta_ibfk_1;
BEGIN
INSERT INTO
venta(cveVenta,folioVenta,unidades,fechaVenta,total,cveProducto,cveClient
e)
VALUES(New.cveVenta,NEW.folioVenta,NEW.unidades,NEW.fechaVenta,NEW.total,
New.cveProducto,New.cveCliente);
END IF;
END |
delimiter ;
Creación de la partición
ALTER TABLE Venta PARTITION BY KEY(cveVenta) PARTITIONS 3;
Página 61 de 89
Usuarios
DBA (administrador de la base de datos)
-Sintaxis Usuario-
CREATE USER 'DBA'@'%' IDENTIFIED BY '12345678';
-Sintaxis de Privilegios-
GRANT ALL PRIVILEGES ON Inventario.* TO 'DBA'@'%';
Almacenista
Acceso a select,update y insert en productos ,proveedor y compra. Además de
select en el segmento segmentos_compra_mayores
-Sintaxis de Usuario-
CREATE USER 'Almacenista'@'%' IDENTIFIED BY '12345678';
-Sintaxis de Privilegios-
GRANT SELECT,UPDATE,INSERT ON INVENTARIO.Producto TO 'Almacenista'@'%';
Gerente
-Sintaxis de Usuario-
CREATE USER 'Gerente'@'%' IDENTIFIED BY '12345678';
Página 62 de 89
-Sintaxis de Privilegios-
GRANT SELECT ON INVENTARIO.bitacora_cliente TO 'Gerente'@'%';
'Gerente'@'%';
Página 63 de 89
Vendedor
Acceso a SELECT,INSERT y UPDATE de las tablas cliente ,venta y empresa
ademas de tener accesso al select en el segmento segmentos_venta_mayores
-Sintaxis de Usuario-
CREATE USER 'Vendedor'@'%' IDENTIFIED BY '12345678';
-Sintaxis de Privilegios-
GRANT SELECT,UPDATE,INSERT ON INVENTARIO.cliente TO 'Vendedor'@'%';
Página 64 de 89
LMD (lenguaje de manipulación de datos)
Selects
Ejemplo Tablas
select*from Empresa;
select*from cliente;
Select*from proveedor;
Select*from Producto;
Select*from Producto;
select*from venta;
select*from compra;
Ejemplo Bitácora
Select*from bitacora_compra;
Select*from bitacora_venta;
select*from bitacora_Producto;
Select*From bitacora_Empresa;
Select*From bitacora_Cliente;
Select*from bitacora_Proveedor;
Ejemplo Segmentos
Select*from Segmento_Productos_Agotados;
select*From Segmentos_Venta_Mayores;
select*from Segmentos_Compra_Mayores;
Página 65 de 89
Ejemplo Particiones
De la tabla ventas
SELECT table_rows as 'data' FROM information_schema.partitions WHERE
'p0';
'p1';
'p0';
'p2';
Página 66 de 89
Ejemplo con índices
Select*from producto inner join proveedor on producto.cveProveedor =
proveedor.cveProveedor;
empresa.cveEmpresa;
=producto.cveProducto;
Compra.fechaCompra;
Página 67 de 89
Inserts
En este apartado podemos ver los datos ingresados dentro de la base de datos
Página 68 de 89
INSERT INTO Empresa (cveEmpresa, nombreEmpresa, numContacto )
VALUES(11, 'Alba Distribuidora', '2292887140');
Página 69 de 89
Insert tabla cliente
Página 70 de 89
INSERT INTO Cliente (cveCliente, nombre, apellidoPaterno,apellidoMaterno,
numContacto, cveEmpresa)
VALUES(2020, 'Ramiro', 'Tronco' , 'Tinoco', '2291040241', 9);
Página 71 de 89
INSERT INTO Cliente (cveCliente, nombre, apellidoPaterno,apellidoMaterno,
numContacto, cveEmpresa)
VALUES(3030, 'Bruno', 'Mendoza' , 'Hernandez', '2299878093', 20);
Página 72 de 89
Insert tabla proveedor
Página 73 de 89
INSERT INTO Proveedor (cveProveedor, nombreProveedor, direccion, telefono)
VALUES(1012,'Alpura','Ernesto Gomes #345 Veraruz,ver','2282568295');
Página 74 de 89
Insert tabla productos
Página 75 de 89
INSERT INTO Producto (cveProducto, nombreProducto, precio, precioCompra,
existencias, cveProveedor)
VALUES(5001,'Nito Bimbo 350g',17,14,300,1004);
Página 76 de 89
INSERT INTO Producto (cveProducto, nombreProducto, precio, precioCompra,
existencias, cveProveedor)
VALUES(8001,'Coca-Cola 600ml',16,14,200,1007);
Página 77 de 89
INSERT INTO Producto (cveProducto, nombreProducto, precio, precioCompra,
existencias, cveProveedor)
VALUES(1201,'Chiles en Rajas 200g',18,13,200,1010);
Página 78 de 89
INSERT INTO Producto (cveProducto, nombreProducto, precio, precioCompra,
existencias, cveProveedor)
VALUES(1501,'Frijoles refritos 500g',18,15.20,350,1013);
Página 79 de 89
INSERT INTO Producto (cveProducto, nombreProducto, precio, precioCompra,
existencias, cveProveedor)
VALUES(1801,'Head and Shoulders 950ml',115,92.5,240,1016);
Página 80 de 89
INSERT INTO Producto (cveProducto, nombreProducto, precio, precioCompra,
existencias, cveProveedor)
VALUES(2101,'Corona Extra 355ml',20,17,1200,1019);
Página 81 de 89
Insert tabla compra
Página 82 de 89
INSERT INTO Compra (cveCompra, folioCompra, unidades, fechaCompra, total,
cveProducto)
VALUES(25510, '95510', 90 , '2022-02-01', 3675, 5001);
Página 83 de 89
INSERT INTO Compra (cveCompra, folioCompra, unidades, fechaCompra, total,
cveProducto)
VALUES(25519, '95519', 158 , '2022-02-11', 5245.71, 8001);
Página 84 de 89
Insert tabla venta
Página 85 de 89
INSERT INTO Venta (cveVenta, folioVenta, unidades, fechaVenta, total,
cveProducto, cveCliente)
VALUES(010, '9010', 87 , '2022-01-20', 1452, 5001, 2020);
Página 86 de 89
INSERT INTO Venta (cveVenta, folioVenta, unidades, fechaVenta, total,
cveProducto, cveCliente)
VALUES(019, '9019', 200 , '2022-03-13', 3876, 8001, 3030);
Página 87 de 89
Conclusión
Lograr el control de un inventario no es una tarea fácil como pudimos llegar a notarlo,
debido a que depende mucho de la demanda de los clientes. Misma que se
encuentra relacionada a los requerimientos y gustos de los mismos. Además,
resulta difícil la aceptación de un nuevo método para el correcto control de los
productos disponibles dentro de la empresa, esto a causa de que se encuentran
trabajando con un sistema con el cual se encuentran a gusto.
Así como mostrar quiénes y en qué momento realizan un cambio dentro de la base
de datos. Por lo que, en este punto cuenta con la seguridad de únicamente darle
acceso a determinados usuarios establecidos por el servidor, así evitando que haya
algún desfalco dentro del inventario por parte de los usuarios y de esta manera no
se ve afectada la empresa.
Página 88 de 89
Referencias
https://www.vpn.net/
https://dev.mysql.com/downloads/
Página 89 de 89