Untitled
unknown
plain_text
2 years ago
3.3 kB
7
Indexable
import sqlite3 def crear_tabla_libros(): conn = sqlite3.connect('biblioteca.db') cursor = conn.cursor() cursor.execute(''' CREATE TABLE IF NOT EXISTS libros ( id INTEGER PRIMARY KEY, titulo TEXT NOT NULL, autor TEXT NOT NULL, ejemplares_disponibles INTEGER NOT NULL ) ''') conn.commit() conn.close() def agregar_libro(): titulo = input("Ingrese el título del libro: ") autor = input("Ingrese el autor del libro: ") ejemplares = int(input("Ingrese la cantidad de ejemplares disponibles: ")) conn = sqlite3.connect('biblioteca.db') cursor = conn.cursor() cursor.execute(''' INSERT INTO libros (titulo, autor, ejemplares_disponibles) VALUES (?, ?, ?) ''', (titulo, autor, ejemplares)) conn.commit() conn.close() def eliminar_libro(): libro_id = int(input("Ingrese el ID del libro que desea eliminar: ")) conn = sqlite3.connect('biblioteca.db') cursor = conn.cursor() cursor.execute('DELETE FROM libros WHERE id = ?', (libro_id,)) conn.commit() conn.close() def actualizar_libro(): libro_id = int(input("Ingrese el ID del libro que desea actualizar: ")) nuevos_ejemplares = int(input("Ingrese la nueva cantidad de ejemplares disponibles: ")) nuevo_autor = input("Ingrese el nuevo autor del libro: ") conn = sqlite3.connect('biblioteca.db') cursor = conn.cursor() cursor.execute(''' UPDATE libros SET ejemplares_disponibles = ?, autor = ? WHERE id = ? ''', (nuevos_ejemplares, nuevo_autor, libro_id)) conn.commit() conn.close() def buscar_libros(): criterio = input("Ingrese el criterio de búsqueda (titulo/autor): ") valor = input(f"Ingrese el valor a buscar por {criterio}: ") conn = sqlite3.connect('biblioteca.db') cursor = conn.cursor() cursor.execute(f''' SELECT * FROM libros WHERE {criterio} LIKE ? ''', ('%' + valor + '%',)) libros_encontrados = cursor.fetchall() conn.close() return libros_encontrados def listar_libros(): conn = sqlite3.connect('biblioteca.db') cursor = conn.cursor() cursor.execute('SELECT * FROM libros') libros = cursor.fetchall() conn.close() return libros # Crear la tabla si no existe crear_tabla_libros() while True: print("\n======= Menú =======") print("1. Agregar Libro") print("2. Eliminar Libro") print("3. Actualizar Libro") print("4. Buscar Libros") print("5. Listar Todos los Libros") print("6. Salir") opcion = input("Ingrese el número de la opción deseada: ") if opcion == '1': agregar_libro() elif opcion == '2': eliminar_libro() elif opcion == '3': actualizar_libro() elif opcion == '4': resultado = buscar_libros() print(resultado) elif opcion == '5': todos_los_libros = listar_libros() for libro in todos_los_libros: print(libro) elif opcion == '6': print("¡Hasta luego!") break else: print("Opción no válida. Por favor, ingrese un número del 1 al 6.")
Editor is loading...
Leave a Comment