Saltar al contenido

¿Cómo ejecutar consultas SQL desde Python? Guía paso a paso para principiantes

28/04/2025
¿Cómo ejecutar consultas SQL desde Python?
Compartir:
Índice de Contenido

Introducción: Ejecutar SQL desde Python

En la actualidad, Python es uno de los lenguajes de programación más populares para el análisis de datos y el desarrollo de aplicaciones. Una de las tareas más comunes es interactuar con bases de datos y, para ello, es fundamental saber cómo ejecutar consultas SQL desde Python. En este artículo te explicamos, paso a paso y desde cero, cómo hacerlo de forma sencilla.

Requisitos previos

  • Python instalado (versión 3 o superior).
  • Conocimientos básicos de SQL.
  • Acceso a una base de datos (puede ser SQLite, MySQL, PostgreSQL, etc.).
  • Instalación de la librería adecuada para conectarse a la base de datos.
Quizás también te interese:  ¿Qué son los tipos de datos en Python? Explicación de int, float, str y bool con ejemplos

¿Qué librerías usar para conectar Python con una base de datos?

Existen varias librerías en Python que permiten conectar y ejecutar consultas SQL en diferentes sistemas de gestión de bases de datos:

  • sqlite3 para bases de datos SQLite (incluida por defecto en Python).
  • mysql-connector-python o PyMySQL para MySQL.
  • psycopg2 para PostgreSQL.

Instalación de librerías adicionales

Si vas a trabajar con MySQL o PostgreSQL, primero instala la librería correspondiente usando pip:

pip install mysql-connector-python
pip install psycopg2
        

Ejecutar consultas SQL en Python con SQLite: Paso a paso

Vamos a ver cómo ejecutar consultas SQL en Python usando sqlite3, ideal para principiantes por su facilidad de uso.

1. Importar la librería

import sqlite3
        

2. Conectar a la base de datos

Quizás también te interese:  ¿Cómo usar try, except, else y finally en Python? Guía completa con ejemplos prácticos

Puedes crear una nueva base de datos o conectarte a una existente:

conexion = sqlite3.connect(ejemplo.db)
        


3. Crear un cursor

El cursor permite ejecutar comandos SQL:

cursor = conexion.cursor()
        

4. Ejecutar una consulta SQL

Por ejemplo, para crear una tabla:

cursor.execute(
    CREATE TABLE IF NOT EXISTS usuarios (
        id INTEGER PRIMARY KEY,
        nombre TEXT,
        edad INTEGER
    )
)
        

5. Insertar datos

cursor.execute("INSERT INTO usuarios (nombre, edad) VALUES (?, ?)", ("Juan", 30))
conexion.commit()
        

6. Consultar datos

cursor.execute("SELECT * FROM usuarios")
resultados = cursor.fetchall()
for fila in resultados:
    print(fila)
        

7. Cerrar la conexión

conexion.close()
        

¿Cómo ejecutar sentencias SQL desde Python con MySQL?

Quizás también te interese:  ¿Cómo conectarse a SQLite3 con Python paso a paso? Guía fácil para principiantes

Para conectarse a MySQL y ejecutar consultas SQL desde Python, utiliza la librería mysql-connector-python:

import mysql.connector

# Conexión a la base de datos
conexion = mysql.connector.connect(
    host="localhost",
    user="tu_usuario",
    password="tu_contraseña",
    database="tu_base_de_datos"
)

cursor = conexion.cursor()

# Ejecutar una consulta
cursor.execute("SELECT * FROM usuarios")

# Obtener resultados
resultados = cursor.fetchall()
for fila in resultados:
    print(fila)

# Cerrar la conexión
cursor.close()
conexion.close()
        

¿Cómo ejecutar queries SQL en Python con PostgreSQL?

Si trabajas con PostgreSQL, la librería recomendada es psycopg2:

import psycopg2

# Conexión a la base de datos
conexion = psycopg2.connect(
    host="localhost",
    database="tu_base_de_datos",
    user="tu_usuario",
    password="tu_contraseña"
)

cursor = conexion.cursor()

# Ejecutar una consulta
cursor.execute("SELECT * FROM usuarios")

# Obtener resultados
resultados = cursor.fetchall()
for fila in resultados:
    print(fila)

# Cerrar la conexión
cursor.close()
conexion.close()
        

Buenas prácticas al ejecutar consultas SQL desde Python

  • Usar parámetros en las consultas para evitar inyección SQL.
  • Siempre cerrar la conexión al terminar.
  • Manejar excepciones para capturar posibles errores.
try:
    # Código para conectar y ejecutar consultas
    pass
except Exception as e:
    print("Ocurrió un error:", e)
finally:
    conexion.close()
        

Conclusión

Ahora ya sabes cómo ejecutar consultas SQL desde Python usando diferentes bases de datos. Este conocimiento es fundamental para cualquier desarrollador o analista de datos que necesite interactuar con bases de datos desde Python. Recuerda siempre seguir las mejores prácticas para garantizar la seguridad y eficiencia de tus aplicaciones.

Compartir: