Gestión de Bases de Datos con tinydb en Python

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.

Python
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.

Python
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.

Python
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.

Python
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.

Python
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.

Python
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/