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

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