Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- #
- # script para administrar la db productos.db
- import sqlite3
- while True:
- conn = sqlite3.connect("productos.db")
- cursor = conn.cursor()
- print("""
- Menú de administración de la base de datos 'productos'
- *----------------------------------------------------*
- 1. Agregar un nuevo registro
- 2. Ver registros
- 3. Borrar registros
- 4. Modificar registros
- 5. Salir
- *----------------------------------------------------*
- """)
- opcion = input("Ingrese su opción: ")
- if opcion == "1":
- while True:
- try:
- ID = int(input("Ingrese el ID: "))
- except ValueError:
- print("El ID debe ser un nro entero")
- else:
- break
- nombre = input("Ingrese el nombre: ")
- while True:
- try:
- precio = float(input("Ingrese el precio: "))
- except ValueError:
- print("El ID debe ser un nro entero")
- else:
- break
- try:
- cursor.execute("INSERT INTO productos VALUES (?,?,?)", (ID,nombre,precio))
- except sqlite3.OperationalError:
- print("La consulta no se ejecutó correctamente")
- else:
- conn.commit()
- print("Datos cargados correctamente")
- elif opcion == "2":
- try:
- cursor.execute("SELECT * FROM productos ORDER BY ID")
- except sqlite3.OperationalError:
- print("La consulta no se ejecutó correctamente")
- else:
- datos = cursor.fetchall()
- if datos:
- for ID,nombre,precio in datos:
- print(ID,nombre,precio)
- else:
- print("No hay datos en la base")
- elif opcion == "3":
- # valido el ID a borrar
- while True:
- try:
- ID_a_borrar = int(input("Ingrese el ID: "))
- except ValueError:
- print("El ID debe ser un nro entero")
- else:
- break
- # me fijo si existe el ID en la base de datos
- try:
- cursor.execute("SELECT * FROM productos")
- except sqlite3.OperationalError:
- print("La consulta no se ejecutó correctamente")
- else:
- datos = cursor.fetchall()
- borrar = False
- for ID,nombre,precio in datos:
- if ID_a_borrar == ID:
- borrar = True
- # si existe el ID lo borro
- if borrar is True:
- try:
- cursor.execute("DELETE FROM productos WHERE id = {}".format(ID))
- except sqlite3.OperationalError:
- print("No se pudo borrar el registro.")
- else:
- conn.commit()
- print(f"Se ha borrado exitosamente el registro con ID = {ID}")
- else:
- print(f"No existe el producto con ID={ID_a_borrar}")
- elif opcion == "4":
- pass
- elif opcion == "5":
- conn.close()
- print("Hasta luego...")
- break
- else:
- print("Opción incorrecta")
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement