Gestión de Bases de Datos con tinydb en Python
TinyDB es una base de datos documental ligera y fácil de usar, escrita en Python. Es ideal para proyectos pequeños o personales, donde no se necesitan las funcionalidades de una base de datos relacional tradicional.
Instalación
Para instalar tinydb, podemos usar el administrador de paquetes de Python:
pip install tinydb
Creación de una base de datos
Para crear una base de datos, podemos usar el método open()
de la clase TinyDB()
. Este método toma como argumento el nombre del archivo que queremos usar para almacenar la base de datos.
from tinydb import TinyDB
db = TinyDB("database.json")
Este código creará una base de datos llamada database.json
en el directorio actual.
Creación de una tabla
Para crear una tabla en una base de datos tinydb, podemos usar el método Table()
. Este método toma como argumento el nombre de la tabla que queremos crear.
from tinydb import TinyDB
db = TinyDB("database.json")
table = db.Table("users")
Este código creará una tabla llamada users
en la base de datos database.json
.
Añadir datos a una tabla
Para añadir datos a una tabla, podemos usar el método insert()
. Este método toma como argumento un diccionario que contiene los datos que queremos añadir.
from tinydb import TinyDB
db = TinyDB("database.json")
table = db.Table("users")
table.insert({"name": "Juan", "age": 25})
Este código añadirá un nuevo registro a la tabla users
con el nombre «Juan» y la edad 25.
Obtener datos de una tabla
Para obtener datos de una tabla, podemos usar el método all()
. Este método devuelve una lista de todos los registros de la tabla.
from tinydb import TinyDB
db = TinyDB("database.json")
table = db.Table("users")
for user in table.all():
print(user)
Este código imprimirá la siguiente salida:
{'name': 'Juan', 'age': 25}
Actualizar datos de una tabla
Para actualizar datos de una tabla, podemos usar el método update()
. Este método toma como argumento un diccionario que contiene los datos que queremos actualizar.
from tinydb import TinyDB
db = TinyDB("database.json")
table = db.Table("users")
user = table.get(id=1)
user["age"] = 30
table.update(user)
Este código actualizará la edad del usuario con el id 1 a 30.
Eliminar datos de una tabla
Para eliminar datos de una tabla, podemos usar el método remove()
. Este método toma como argumento el id del registro que queremos eliminar.
from tinydb import TinyDB
db = TinyDB("database.json")
table = db.Table("users")
table.remove(id=1)
Este código eliminará el registro con el id 1 de la tabla users
.
Conclusión
TinyDB es una base de datos documental ligera y fácil de usar, que es ideal para proyectos pequeños o personales. Con este tutorial, hemos aprendido los conceptos básicos para gestionar bases de datos con tinydb en Python.
Ejercicio
Como ejercicio, podemos crear una aplicación web que use tinydb para almacenar los datos de los usuarios. La aplicación podría permitir a los usuarios registrarse, iniciar sesión, actualizar su perfil y eliminar su cuenta.
Referencias
- Documentación de tinydb: https://tinydb.readthedocs.io/en/latest/