Está en la página 1de 2

EJERCICIO

a) Realizar una aplicación en Python que se sea capaza de mostrar el siguiente menú en
pantalla
1) Buscar registro
2) Agregar registro
3) Editar registro
4) Eliminar registro
5) Salir

Ingresar opción:

Una vez mostrado el menú, este debe ser mostrado mientras seleccione cualquier opción
distinta a 5 (salir)

Adicionalmente cada vez que se seleccione una opción distintita entre 1 y 4 se debe llamar
a una funcione que represente a la opción seleccionada, por ejemplo: si selecciona la
opción 1, se deleble llamar a una función de nombre buscarRegistro y así con cada opción.

El contenido de cada una de las funciones debe un mensaje indicado su funcionalidad, por
ejemplo: de acuerdo al caso anterior, si las función llamada es buscarRegistro, usted
deberá mostrar un print(‘Buscar registro’) y así con cada una de las funciones.

b) Crear una base de datos de nombre purchase_db en MySQL


c) Crear una tabla en la base de datos purchase_db con el nombre product. Se deja el script
de la tabla.

CREATE TABLE `product` (


  `id` int(11) NOT NULL AUTO_INCREMENT,
  `productName` varchar(100) NOT NULL,
  `price` varchar(150) NOT NULL,
  `createdAt` datetime(6) NOT NULL DEFAULT current_timestamp(6),
  `updatedAt` datetime(6) NOT NULL DEFAULT current_timestamp(6) ON
UPDATE current_timestamp(6),
  PRIMARY KEY (`id`),
  CONSTRAINT unique_productName UNIQUE (productName)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8mb4

d) Crear una clase de nombre Product que represente la estructura de la tabla


e) Crear un clase de nombre mysqlConnection que nos permita poder conectarnos a la base
de datos y exponga tres métodos:
a. executeQuery(sql: str) -> int: esta función tiene que ser capaz de ejecutar
consultas del tipo INSERT, DELETE y UPDATE, considerando el SQL que ingresa
como parámetro. Una vez ejecutada la consulta se debe retornar el número de
filas afectadas.
b. getOneRecord(sql: str): esta función tiene que ser capaz de ejecutar consultas del
tipo SELECT, pero que retornen un solo registro como resultado, para esto se
considera el SQL que ingresa como parámetro.
c. getRecords(sql: str): esta función tiene que ser capaz de ejecutar consultas del tipo
SELECT, pero que retornen más de un registro como resultado, para esto se
considera el SQL que ingresa como parámetro.
f) Agregar 4 metodos a la clase Product que permitan retonar las consultas (SQL) necesarias
para:
a. Insertar un producto
b. Buscar un producto
c. Eliminar un producto
d. Editar un producto
g) Agregar la funcionalidad necesaria en la función buscarRegistro que permita solicitar los
datos de un producto, asignarlos al objecto Product y ejecutar la consulta SELECT (para un
solo registro) en la base de datos, haciendo uso de la clase mysqlConnection.
h) Agregar la funcionalidad necesaria en la función agregarRegistro que permita solicitar los
datos de un producto, asignarlos al objecto Product y ejecutar la consulta INSERT en la
base de datos, haciendo uso de la clase mysqlConnection.
i) Agregar la funcionalidad necesaria en la función editarRegistro que permita solicitar los
datos de un producto, asignarlos al objecto Product y ejecutar la consulta UPDATE en la
base de datos, haciendo uso de la clase mysqlConnection.
j) Agregar la funcionalidad necesaria en la función eliminarRegistro que permita solicitar los
datos de un producto, asignarlos al objecto Product y ejecutar la consulta DELETE en la
base de datos, haciendo uso de la clase mysqlConnection.

También podría gustarte