Está en la página 1de 22

INSTITUTO ICO DE

TECNOLÓG VILLAHERMOSA
Campus Villahermosa
Depto.: Sistemas y Computación

Materia: Taller de Base de Datos

Maestra: Loyda Sánchez Marín

Avance sumativo del proyecto: Operaciones CRUD y Control de

Tema 4: Concurrencia

Operaciones CRUD y Control de


Avance proyecto:
Concurrencia (Sentencias en paralelo)

Equipo #7: Julio César Olán Lorenzo


Francisco Javier Hernández Chable
Concurrencia
Francisco Javier Sarao Aguilar
Jesús Ángel Hernández Salvador
En los siguientes pasos del reporte haremos la puesta en marcha de las
operaciones CRUD en la base de datos del proyecto, además de que pondremos
a prueba el control de concurrencia.
Se explicarán detalladamente cada uno de los pasos realizados para que
podamos tener una mejor comprensión del tema y, de igual forma.
1°. - Empezaremos el reporte abriendo nuestro administrador XAMPP y
ejecutando el MySQL. Después abriremos el administrador de base de datos
phpMyAdmin tal y como se muestra en la imagen de abajo:

2°. - Después de que se abra nuestro phpMyAdmin procederemos a elegir la


base de datos del proyecto. Dicha bd se llama “product_warehouse”, lo que
haremos será darle clic y dale en el apartado que dice SQL para que se nos abra
el espacio de trabajo de SQL.
3°. - Anteriormente en el proyecto habíamos creado las tablas, los roles y los
usuarios para poder administrar la base de datos. Ahora lo que haremos a
continuación será realizar operaciones CRUD en las tablas. Lo haremos de la
siguiente forma:
- Haciendo inserciones (INSERT INTO) en todas las tablas de la bd:
Tabla Linea_blanca:
INSERT INTO Linea_blanca (ID_LB, Nombre, Especificacion, Marca,
Existencia, Precio)
VALUES (`1´, `Aire acondicionado´, `4 Toneladas´, `LG´, `20´, `7999.99´);
INSERT INTO Linea_blanca (ID_LB, Nombre, Especificacion, Marca,
Existencia, Precio)
VALUES (`2´, `Lavadora´, `18 kg´, `Mabe´, `30´, `5899.99´);
INSERT INTO Linea_blanca (ID_LB, Nombre, Especificacion, Marca,
Existencia, Precio)
VALUES (`3´, `Refrigerador´, `Expulsa hielo´, `Mabe´, `16´, `8999.99´);
INSERT INTO Linea_blanca (ID_LB, Nombre, Especificacion, Marca,
Existencia, Precio)
VALUES (`4´, `Estufa´, `Horno y electrico´, `Mabe´, `20´, `1199.99´);
INSERT INTO Linea_blanca (ID_LB, Nombre, Especificacion, Marca,
Existencia, Precio)
VALUES (`5´, `Tostadora´, `4 Espacio´, `silver´, `35´, `999.99´);
INSERT INTO Linea_blanca (ID_LB, Nombre, Especificacion, Marca,
Existencia, Precio)
VALUES (`6´, `Aire acondicionado´, `12 toneladas´, `Hisense´, `23´,
`7094.99´);
INSERT INTO Linea_blanca (ID_LB, Nombre, Especificacion, Marca,
Existencia, Precio)
VALUES (`7´, `Lavadora´, `20 kg´, `Hisense´, `30´, `5899.99´);
INSERT INTO Linea_blanca (ID_LB, Nombre, Especificacion, Marca,
Existencia, Precio)
VALUES (`8´, `Refrigerador´, `4 pies´, `Mabe´, `14´, `8599.99´);
INSERT INTO Linea_blanca (ID_LB, Nombre, Especificacion, Marca,
Existencia, Precio)
VALUES (`9´, `Microondas´, `Horno de 1.1p3´, `Whirlpool´, `18´, `2999.99´);
INSERT INTO Linea_blanca (ID_LB, Nombre, Especificacion, Marca,
Existencia, Precio)
VALUES (`10´, `Microondas´, `Horno de 0.7p3´, `Acros Mod AM´, `20´,
`3500´);

Como podemos ver en la captura las sentencias INSERT INTO se han ejecutado
correctamente, estas inserciones, como se puede ver, las hemos hecho en la tabla
“linea_blanca”. Como ya sabemos la parte del INSERT sirve para saber que
atributos vamos a colocar, y en la del VALUES colocamos los atributos a añadir
por cada atributo.
Tabla Empleados:
INSERT INTO empleados (Nombre,
Apellidos,sexo,Fecha_nacimiento,Correo_electronico,Rol,Usuario, Password)
VALUES ('Jesus','Perez Hernandez','Hombre','1998-11-
08','perez.12@gmail.com','Contador','jeusus52525D','98EF7S9D9F');
INSERT INTO empleados (Nombre, Apellidos,sexo,Fecha_nacimiento
,Correo_electronico,Rol,Usuario,Password)
VALUES ('Angel','Garcia Cruz','Hombre','1997-11-
05','angel.gc@gmail.com','Contador','angel5253G','7DFSDF787');
INSERT INTO empleados (Nombre, Apellidos,sexo,Fecha_nacimiento
,Correo_electronico,Rol,Usuario,Password)
VALUES ('Maria','Salvador Hernandez','Mujer','1992-01-
06','mari13@gemail.com','Contador','maria5213R','4S5D7F8G9');
INSERT INTO empleados (Nombre, Apellidos,sexo,Fecha_nacimiento
,Correo_electronico,Rol,Usuario,Password)
VALUES ('Susana','Hernandez Sanchez','Mujer','2000-07-
15','susana14@gmail.com','Vendedor','susana5219S','9FDFD32S');
INSERT INTO empleados (Nombre, Apellidos,sexo,Fecha_nacimiento
,Correo_electronico,Rol,Usuario,Password)
VALUES ('Alex','Calvo Guillen','Hombre','1989-05-
09','alex_CG@gmail.com','Vendedor','alex5223B','3VXC4VV3');
INSERT INTO empleados (Nombre, Apellidos,sexo,Fecha_nacimiento
,Correo_electronico,Rol,Usuario,Password)
VALUES ('Julio','Velaszquez Moralez','Hombre','1994-08-
13','julio15@gmail.com','Administrador','julio5287M','3D7FD8G');
INSERT INTO empleados (Nombre, Apellidos,sexo,Fecha_nacimiento
,Correo_electronico,Rol,Usuario,Password)
VALUES ('Martha','Piedra Guzman','Mujer','1997-01-
17','martha145@gmail.com','Vendedor','martha5210K','F6SD8F6F');
INSERT INTO empleados (Nombre, Apellidos,sexo,Fecha_nacimiento
,Correo_electronico,Rol,Usuario,Password)
VALUES ('Patricia','Cruz Hernandez','Mujer','1999-12-
12','patricia12@gmail.com','Vendedor','patricia5267L','876SDWE7');
INSERT INTO empleados (Nombre, Apellidos,sexo,Fecha_nacimiento
,Correo_electronico,Rol,Usuario,Password)
VALUES ('Jorge','Hernandez Salvador','Mujer','1980-02-
17','jorge_hs@gmail.com','Vendedor','jorge5698P','8FDS7LÑLJG');
INSERT INTO empleados (Nombre, Apellidos,sexo,Fecha_nacimiento
,Correo_electronico,Rol,Usuario,Password)
VALUES ('Oscar','Carrillo Ruiz','Hombre','1987-06-
24','oscarin.56@gmail.com','Administrador','oscar9852H','877FDFFH');
Como podemos ver en la captura de arriba las inserciones de la tabla
“Empleados” se han hecho correctamente.
Tabla Electronica:
INSERT INTO electronica (Nombre, Especificacion, Existencia, Marca,
Precio)
VALUES ('Lenovo534','Memoria de 8GB',11,'Lenovo',5005.00);
INSERT INTO electronica (Nombre, Especificacion, Existencia, Marca,
Precio)
VALUES ('Laptop','Computadora Portatil',10,'Lenovo',5400.00);
INSERT INTO electronica (Nombre, Especificacion, Existencia, Marca,
Precio)
VALUES ('Lenovo982','Memoria de 16GB',17,'Lenovo',9871.00);
INSERT INTO electronica (Nombre, Especificacion, Existencia, Marca,
Precio)
VALUES ('Mouse','Mouse Retro',5,'Lenovo',6578.00);
INSERT INTO electronica (Nombre, Especificacion, Existencia, Marca,
Precio)
VALUES ('HP724','Memoria de 8GB',25,'HP',8985.00);
INSERT INTO electronica (Nombre, Especificacion, Existencia, Marca,
Precio)
VALUES ('Television Samsumg','Television 32
pulgadas',19,'Samsumg',25205.00);
INSERT INTO electronica (Nombre, Especificacion, Existencia, Marca,
Precio)
VALUES ('Lenovo876','Memoria de 8GB',12,'Lenovo',9822.00);
INSERT INTO electronica (Nombre, Especificacion, Existencia, Marca,
Precio)
VALUES ('Microsoft123','La mejor velocidad para tu
computadora',8,'Microsoft',5456.00);
INSERT INTO electronica (Nombre, Especificacion, Existencia, Marca,
Precio)
VALUES ('Teclado','Multifuncional',14,'HP',213.00);
INSERT INTO electronica (Nombre, Especificacion, Existencia, Marca,
Precio)
VALUES ('Acer534','Rapidez de uso',16,'Acer',4305.00);
Podemos ver que las inserciones de la tabla “Electronica” se han realizado
correctamente y con al menos 10 productos agregados.
Tabla Limpieza:
INSERT INTO limpieza (Nombre, Especificacion, Existencia, Marca, Precio)
VALUES ('Aromatizante','Limpia y remueve la
mugre',30,'Flash',23.00);
INSERT INTO limpieza (Nombre, Especificacion, Existencia, Marca, Precio)
VALUES ('Jabon en barra','Remueve la mugre',30,'Princesa',7.00);
INSERT INTO limpieza (Nombre, Especificacion, Existencia, Marca, Precio)
VALUES ('Aromatizante y desinfectante','Elimina las
bacterias',10,'Pinol',4.00);
INSERT INTO limpieza (Nombre, Especificacion, Existencia, Marca, Precio)
VALUES ('Cloro','Limpia y remueve la mugre y elimina
vacterias',20,'Cloralex',24.00);
INSERT INTO limpieza (Nombre, Especificacion, Existencia, Marca, Precio)
VALUES ('Suavizante de telas','Suavisa y aromatiza la
ropa',40,'Ensueño',17.00);
INSERT INTO limpieza (Nombre, Especificacion, Existencia, Marca, Precio)
VALUES ('Jabon en polvo','Limpia y remueve la mugre de 2
kilos',13,'Blancanieves',43.00);
INSERT INTO limpieza (Nombre, Especificacion, Existencia, Marca, Precio)
VALUES ('Jabon en polvo','Limpia y remueve las
bacterias',80,'Foca',54.00);
INSERT INTO limpieza (Nombre, Especificacion, Existencia, Marca, Precio)
VALUES ('Papel','Rollos higienicos de 16
unidades',30,'Petalo',44.00);
INSERT INTO limpieza (Nombre, Especificacion, Existencia, Marca, Precio)
VALUES ('Aromatizante y
desinfectante','Limpia',30,'Fabuloso',23.00);
INSERT INTO limpieza (Nombre, Especificacion, Existencia, Marca, Precio)
VALUES ('Papel','Rollos higienicos de 32
unidades',30,'Suavel',93.00);
Al ejecutar las sentencias SQL INSERT INTO en la tabla “Limpieza” nos salen los
mensajes de que se han devuelto los datos a la tabla correspondiente. Al igual que
la tabla anterior y todas las anteriores hicimos un mínimo de 10 inserciones.
Tabla Enlatados:
INSERT INTO enlatados (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Salsa de tomate','Salsa de tomate 100% con
conservadores',16,'HERDEZ',15);
INSERT INTO enlatados (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Atun en agua','Atun de mar, con proteinas y
conservadoores',12,'Tuni',17.60);
INSERT INTO enlatados (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Atun en aceite','Atun de mar, con proteinas y
conservadoores',123,'Tuni',19.60);
INSERT INTO enlatados (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Elotes’, ‘Elote amarillos con proteinas y
conservadoores',24,'HERDEZ',42);
INSERT INTO enlatados (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Aceitunas','Aceituna en agua',13,'La Costeña',28);
INSERT INTO enlatados (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Sardinas en lata','Sardina en aceite',56,'Guaymex',17.60);
INSERT INTO enlatados (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Chicharos','chicharo en agua con
almibar',56,'HERDEZ',17);
INSERT INTO enlatados (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Chiles chipotles','Chile chipotle con
adobo',17,'HERDEZ',152);
INSERT INTO enlatados (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Chiles nachos en rajas','Chiles en rajas con
agua',83,'HERDEZ',77);
INSERT INTO enlatados(Nombre,Especificacion,Existencia,Marca,Precio)
VALUES ('Jugo','Jugo de naranja con
conservadores',183,'Jumex',14);
Con la captura de arriba comprobamos que las sentencias INSERT INTO se han
ejecutado correctamente.
Tabla Lacteos:
INSERT INTO lacteos (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Leche de coco','Leche de coco con proteinas y
minerales',16,'LALA',22);
INSERT INTO lacteos (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Leche de avena','Leche de avena con proteinas y
minerales',172,'LALA',24);
INSERT INTO lacteos (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Leche entera’,’ Leché de entera con proteinas y minerales
pura de leche',118,'LALA',18);
INSERT INTO lacteos (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Leche deslactosada','Leche deslactosada con proteinas y
minerales',172,'LALA',22);
INSERT INTO lacteos (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Yogurt piña','Yogurt sabor piña con trozo de
piña',11,'Yopleit',12);
INSERT INTO lacteos (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Yogurt de fresa','Yogurt sabor fresa con trozos de
fresa',19,'Yopleit',12);
INSERT INTO lacteos (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Yogurt de coco','Yogurt sabor coco con trozos de
coco',19,'Yopleit',12);
INSERT INTO lacteos (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Yogurt piña coco','Yogurt sabor piña y coco con trozos de
piña',14,'Yopleit',12);
INSERT INTO lacteos (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Queso de hebra','Queso puro de leche elaborado
artesanalmente',16,'LALA',130);
INSERT INTO lacteos (Nombre,Especificacion, Existencia,Marca,Precio)
VALUES ('Queso_crema','Queso puro de leche elaborado
industrialmennte',182,'LALA',70);

Al igual que las inserciones anteriores esta se ha realizado correctamente y sin


problemas, dichas sentencias SQL se realizaron en la tabla “Lacteos” de nuestra
base de datos del proyecto.
Tabla Farmacia:
INSERT INTO farmacia (Nombre,
Especificacion,Clasificacion,Existencia,Precio)
VALUES ('PARACETAMOL','Pastillas en caja de
100mg','ANALGESICO',101,152.60);
INSERT INTO farmacia (Nombre,
Especificacion,Clasificacion,Existencia,Precio)
VALUES ('OMEPRAZOL','Pastillas en caja de
4mg','ALTERACIONES POR ACIDO',59,160.52);
INSERT INTO farmacia (Nombre,
Especificacion,Clasificacion,Existencia,Precio)
VALUES ('VITAMINA C','Pastillas en caja de
25mg','VITAMINAS',143,70.42);
INSERT INTO farmacia (Nombre,
Especificacion,Clasificacion,Existencia,Precio)
VALUES ('MICONAZOL POMADA','Tubo untable de
40g','DERMATOLOGICO',87,25.30);
INSERT INTO farmacia (Nombre,
Especificacion,Clasificacion,Existencia,Precio)
VALUES ('BETAMETASONA POMADA','Tubo untable de
15g','ANTIINFLAMATORIOS',150,60.85);
INSERT INTO farmacia (Nombre,
Especificacion,Clasificacion,Existencia,Precio)
VALUES ('FLUORESCEINA','Gotas de 5ml con
gotero','OFTALMICOS',122,200.40);
INSERT INTO farmacia (Nombre,
Especificacion,Clasificacion,Existencia,Precio)
VALUES ('IBUPROFENO','Pastillas en caja de 200mg -
400mg','ANALGESICOS',134,55.30);
INSERT INTO farmacia (Nombre,
Especificacion,Clasificacion,Existencia,Precio)
VALUES ('AMOXICILINA','Pastillas en caja de
500mg','ANTIINFECCIOSOS SISTEMICOS',100,145.28);
INSERT INTO farmacia (Nombre,
Especificacion,Clasificacion,Existencia,Precio)
VALUES ('VITAMINA B12','Pastillas en caja con 20 tabletas de
10mg','VITAMINAS',44,75.25);
INSERT INTO farmacia (Nombre,
Especificacion,Clasificacion,Existencia,Precio)
VALUES ('WARFARINA','Pastillas en caja de
5mg','ANTITROMBOTICOS',67,189.63);
Las sentencias de inserciones para la tabla “Farmacia” se han ejecutado de
manera satisfactoria. Cabe mencionar que tanto esta y las anteriores sentencias
se han realizado en conjunto y al mismo tiempo, es decir, que ya estamos
poniendo a prueba el soporte de control de concurrencia en la base de datos de
nuestro proyecto ya que ejecutamos querys diversos a la vez.
Tabla Electromesticos:
INSERT INTO electrodomesticos (Nombre,
Especificacion,Marca,Existencia,Precio)
VALUES ('Refrigerador','Refrigerador con congelador y dispensador
de agua de 15 pies','MABE',67,7505.64);
INSERT INTO electrodomesticos (Nombre,
Especificacion,Marca,Existencia,Precio)
VALUES ('Licuadora','Licuadora M6798 13 color Rojo vino de
vidrio','Oster',12,829.00);
INSERT INTO electrodomesticos (Nombre,
Especificacion,Marca,Existencia,Precio)
VALUES ('Refrigerador','Refrigerador WK5915BD con despachador
de agua y hielo','Whirlpool',4,599.00);
INSERT INTO electrodomesticos (Nombre,
Especificacion,Marca,Existencia,Precio)
VALUES ('Batidora','Batidora de inmersion color Blanca
multifunciones','Oster',15,500.99);
INSERT INTO electrodomesticos (Nombre,
Especificacion,Marca,Existencia,Precio)
VALUES ('Cafetera JWK27','Cafetera programable de 12 tazas color
Negro y Plata','Mr Coffee',20,868.26);
INSERT INTO electrodomesticos (Nombre,
Especificacion,Marca,Existencia,Precio)
VALUES ('Batidora','Batidora de pedestal de 5 QT color Cromo
cepillado','Cuisinart',10,6799.00);
INSERT INTO electrodomesticos (Nombre,
Especificacion,Marca,Existencia,Precio)
VALUES ('Lavadora LMA79113VBAB0','Lavadora automatica de 19
kg color Blanca','',7,7630.00);
INSERT INTO electrodomesticos (Nombre,
Especificacion,Marca,Existencia,Precio)
VALUES ('Procesador de alimentos','Serie 600 de 8
pzas','Nutribullet',19,2899.00);
INSERT INTO electrodomesticos (Nombre,
Especificacion,Marca,Existencia,Precio)
VALUES ('Horno electrico','Horno de 32 Lts color
Rojo','Oster',7,2119.00);
INSERT INTO electrodomesticos (Nombre,
Especificacion,Marca,Existencia,Precio)
VALUES ('Lavavajillas','Lp8 850 M color Plata','Teka',8,2300.00);
Como últimas 10 inserciones las hemos realizado en la tabla
“Electrodomesticos”, y tal como muestra la imagen se han realizado de manera
correcta, es decir, sin problemas de ejecución.
4°. - Para seguir con el reporte sumativo del proyecto procederemos a realizar
operaciones de actualización (UPDATE) en algunas tablas, tal y como lo
mostramos a continuación:
Tabla Lacteos:
SELECT * FROM lacteos;
Lo primero que hacemos es una consulta a dicha tabla, esto nos servirá para
corroborar que los datos están correctos. Ahora, lo siguiente, será hacer el
UPDATE de la siguiente forma:
UPDATE lacteos SET Existencia = 0
WHERE ID_LC = 5;

Como podemos ver en la captura se nos muestra que la consulta se ha


completado con éxito. Explicando un poco lo que hemos hecho fue: cambiamos la
existencia a 0 del producto lácteo cuyo “ID_LC” es igual al número 5, en este caso
el cambio en concreto se hizo al Yogurt de piña Yoplait. Ahora, lo que resta es
comprobar que la actualización se vea reflejada en la tabla:
SELECT * FROM lacteos;

Como era de suponerse, el cambio se ve reflejado al hacer una consulta a la tabla.


Podemos ver que la existencia de ese producto prácticamente es nula.
5°. - Como siguiente paso lo que haremos será hacer otra actualización
(UPDATE) en la tabla de “Farmacia”.
Tabla Farmacia:
SELECT * FROM farmacia;
De igual manera que la consulta anterior, lo primero que haremos será consultar la
tabla para ver que todos los datos estén en orden y para saber cuál es el producto
de nuestra base de datos que vamos a actualizar. El UPDATE lo haremos de la
siguiente forma:
UPDATE farmacia SET Especificacion = 'Pastillas en caja de 6mg', Precio =
165.49
WHERE ID_FM = 2
Como podemos ver en la captura de arriba, se nos muestra el mensaje de que
hemos realizado la consulta con éxito. Es decir, que los datos que hemos
actualizado ya se deberían de reflejar como nuevos en la tabla.
Para comprobar esto lo que haremos será una consulta a la tabla “Farmacia” y la
haremos de la siguiente forma:
SELECT * FROM farmacia;

Como se esperaba los nuevos datos se han actualizado en la tabla. El producto


que fue alterado es aquel que tiene el “ID_FM” con número en 2, en concreto, fue
el producto OMEPRAZOL, al cual le hemos cambiado la especificación y
aumentado ligeramente el precio.
6°. - Ahora, lo que haremos será realizar eliminaciones (DELETE) en algunas de
las tablas de nuestra base de datos. Lo haremos a continuación:
Tabla electronica:
SELECT * FROM electronica;
Para saber bien que producto de la tabla vamos a eliminar, hicimos una consulta a
la tabla. Una vez localizado el producto procederemos a realizar la eliminación de
la siguiente manera:
DELETE FROM electronica
WHERE ID_EL = 10;
En la captura se nos muestra que el query se ha realizado correctamente y hemos
eliminado el producto seleccionado. Ahora lo que resta es hacer una consulta a
nuestra tabla para comprobar que el objetivo se haya borrado:
SELECT * FROM electronica;

Como esperábamos la eliminación del producto que tiene el “ID_EL” se ve


reflejada en la consulta de la tabla.
De esta manera y con este último paso damos por terminado el reporte sumativo
de nuestro proyecto. Concluimos que hemos abarcado los temas necesarios al
realizar diversas operaciones CRUD y a su vez realizarlas repetidas veces y al
mismo tiempo de ejecución. Concluimos con éxito el reporte y así mismo los
siguientes los posteriores.

También podría gustarte