Contenido del curso
Bases de Datos: De Cero a Experto

🎯 Objetivo:

Aprender a conectar Python con bases de datos SQL y NoSQL para realizar consultas, inserciones y actualizaciones.


🔗 ¿Por qué usar Python para bases de datos?

  • Python es muy usado en ciencia de datos, web y automatización.

  • Tiene librerías potentes para conectarse y manipular datos.

  • Facilita automatizar consultas, análisis y ETL.


⚙️ Conexión a bases de datos SQL con Python

Librerías comunes:

  • sqlite3: para bases SQLite, viene incluida en Python.

  • psycopg2: para PostgreSQL.

  • mysql-connector-python: para MySQL.

  • SQLAlchemy: ORM para múltiples bases.


Ejemplo básico con sqlite3:

python
import sqlite3

# Conectar o crear base
conn = sqlite3.connect('mi_base.db')
cursor = conn.cursor()

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

# Insertar datos
cursor.execute("INSERT INTO usuarios (nombre, email) VALUES (?, ?)", ('Cristian', 'c@example.com'))

# Consultar datos
cursor.execute("SELECT * FROM usuarios")
filas = cursor.fetchall()
for fila in filas:
print(fila)

# Guardar cambios y cerrar
conn.commit()
conn.close()


⚙️ Conexión a bases NoSQL (MongoDB) con Python

Librería:

  • pymongo: cliente oficial MongoDB para Python.

Ejemplo básico con pymongo:

python
from pymongo import MongoClient

# Conectar a MongoDB local
client = MongoClient('mongodb://localhost:27017/')
db = client['mi_base']
coleccion = db['usuarios']

# Insertar documento
usuario = {"nombre": "Cristian", "email": "c@example.com"}
coleccion.insert_one(usuario)

# Consultar documentos
for doc in coleccion.find():
print(doc)


📝 Actividad práctica

  1. Crea una base SQLite con una tabla y algunos registros.

  2. Usa Python para insertar y consultar datos.

  3. Instala MongoDB y pymongo, inserta y consulta documentos.

  4. Compara la forma de trabajar con SQL y NoSQL en Python.


✅ Revisión rápida

  • ¿Qué librería usarías para conectar Python con PostgreSQL?

  • ¿Qué método inserta un documento en MongoDB con pymongo?

  • ¿Qué función en sqlite3 ejecuta consultas?

Scroll al inicio