Curso de Python: Base de datos

Curso de Python: Base de datos

¿Por qué usar Python para bases de datos?

Python es una opción excelente para interactuar con bases de datos debido a bibliotecas robustas como SQLite, SQLAlchemy y Pandas. Estas herramientas permiten no solo acceder a información almacenada, sino también realizar análisis y transformaciones de datos de manera eficiente.

Configuración del entorno

Antes de comenzar, asegúrate de tener instalada la biblioteca sqlite3, que generalmente viene incluida con Python. Para instalar SQLAlchemy, puedes usar pip:

pip install SQLAlchemy

Conexión a una base de datos SQLite

Empecemos con un ejemplo simple de conexión a una base de datos SQLite. Crearemos una base de datos llamada ejemplo.db y una tabla usuarios:

import sqlite3

# Conectar o crear una base de datos
conexion = sqlite3.connect('ejemplo.db')

# Crear un cursor
cursor = conexion.cursor()

# Crear una tabla
cursor.execute('''CREATE TABLE IF NOT EXISTS usuarios (
                    id INTEGER PRIMARY KEY,
                    nombre TEXT,
                    edad INTEGER)''')

# Guardar cambios
conexion.commit()
conexion.close()

Insertar datos en la base de datos

Una vez creada la tabla, podemos insertar datos. Aquí tienes un ejemplo:

def insertar_usuario(nombre, edad):
    conexion = sqlite3.connect('ejemplo.db')
    cursor = conexion.cursor()
    cursor.execute("INSERT INTO usuarios (nombre, edad) VALUES (?, ?)", (nombre, edad))
    conexion.commit()
    conexion.close()

insertar_usuario('Juan', 30)
insertar_usuario('Ana', 25)

Realizar consultas a la base de datos

Puedes recuperar información usando consultas. Veamos cómo obtener todos los usuarios:

def obtener_usuarios():
    conexion = sqlite3.connect('ejemplo.db')
    cursor = conexion.cursor()
    cursor.execute("SELECT * FROM usuarios")
    usuarios = cursor.fetchall()
    conexion.close()
    return usuarios

for usuario in obtener_usuarios():
    print(usuario)

Usando SQLAlchemy para manejar bases de datos

SQLAlchemy ofrece una forma más abstracta y potente de interactuar con bases de datos. Puedes poner en práctica este ejemplo:

from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker

Base = declarative_base()

class Usuario(Base):
    __tablename__ = 'usuarios'
    id = Column(Integer, primary_key=True)
    nombre = Column(String)
    edad = Column(Integer)

engine = create_engine('sqlite:///ejemplo.db')
Base.metadata.create_all(engine)

Session = sessionmaker(bind=engine)
session = Session()

# Crear un nuevo usuario
nuevo_usuario = Usuario(nombre='Luis', edad=22)
session.add(nuevo_usuario)
session.commit()

Fuentes y lecturas recomendadas

Xose de la Paz

Más de 20 años transformando pasión en profesión. Experto en desarrollo Full Stack con una visión integral que abarca desde la gestión de servidores y redes hasta el diseño de interfaz. Soy un "todoterreno" tecnológico que cree en el aprendizaje continuo y la visión global de los proyectos. Entre despliegue y despliegue, me pierdo por el mundo con mi cámara al hombro.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies