Guía Completa de SQLite en Python
Guía Completa de SQLite en Python
[Link]/tutorial-de-sqlite-en-python-la-guía-definitiva-fdcb8d7a4f30
29 de abril de 2020
¡Aprendamos todo lo que necesitas para empezar con SQLite3 en Python! Fuente: Nik Piepenbreier
SQL y Python se han convertido rápidamente en habilidades esenciales para cualquier persona que asuma seriamente
¡análisis de datos! Este tutorial de Python SQLite es la única guía que necesitas para comenzar y
Ejecutando con SQLite en Python. En esta publicación, cubriremos:
Cargando la biblioteca
Creando y conectando a tu base de datos
Creando tablas de base de datos
Añadiendo datos
Consultando datos
Eliminando datos
¡Y mucho más!
1/12
SQLite3 (lo que simplemente llamaremos SQLite) es parte del paquete estándar de Python 3, así que tú
no necesitarás instalar nada. Si no estás ejecutando Python 3, consultaeste enlaceconseguir
comenzó.
Si estás buscando empezar con SQL, echa un vistazo a mi completoTutorial de SQL para principiantes,
que incluye un PDF descargable gratuito y otros obsequios.
Lo que crearás
Después de seguir este tutorial, habrás creado una base de datos en SQLite usando Python.
Específicamente, esta publicación te guiará a través de todos los pasos para crear una base de datos que
cubre la siguiente tabla, incluyendo todas las relaciones:
De esta lista, puede notar que faltan varios tipos de datos como las fechas.
Desafortunadamente, al usar SQLite, estás limitado a estos tipos de datos.
2/12
¿Listo? ¡Empecemos! Fuente: Nik Piepenbreier
importar sqlite3
Primero creemos un archivo .db, ya que esta es una forma muy estándar de mantener un SQLite
base de datos. Representaremos la conexión usando una variable llamada conn. Crearemos un archivo
3/12
[Link].
conn = [Link]('[Link]')
Con esta línea de código, hemos creado un nuevo objeto de conexión, así como un nuevo archivo llamado
[Link] el directorio en el que estás trabajando. Si quisieras especificar un específico
directorio, podrías escribir:
conn = [Link](r'RUTA-A-TU-DIRECTORIO/[Link]')
Nota: Observe que incluimos la letra “r” antes de la cadena que contiene esta ruta.
Esto le dice a Python que estamos trabajando con una cadena sin procesar, lo que significa que el “/” no será
se puede usar para escapar caracteres. Puedes aprender más sobre cadenas sin procesar revisando esto
enlace.
La función connect crea una conexión a la base de datos SQLite y devuelve un objeto
representarlo.
conn = [Link](:memoria:)
Sin embargo, para los propósitos de este tutorial, y para la mayoría de los casos de uso con los que te encontrarás, tú
usa el método que describimos anteriormente.
cur = [Link]()
4/12
Los cursores son críticos para SQLite3 en Python. Fuente: Nik Piepenbreier
Ahora que tenemos un objeto cursor, podemos usarlo para ejecutar consultas SQL de la siguiente manera.
estilo
[Link]("SU-QUERY-SQL-AQUÍ;")
Nota que envolvimos nuestra consulta SQL entre comillas; esto es importante. No importa si
usamos comillas simples, dobles o triples. Para consultas más largas, a menudo es mejor usar triples
comillas, ya que nos permiten escribir consultas de varias líneas.
Comenzaremos con
las tablas de usuario.
[Link]("""CREAT
TABLA SI NO EXISTE
usuarios(
userid INT PRIMARY
CLAVE
TEXTO
TEXTO
género TEXTO);
Un recordatorio rápido de cómo se ve nuestra base de datos. Fuente: Nik
""")
[Link]() Piepenbreier
5/12
En el código anterior, estamos haciendo una serie de cosas:
1. Usando la función execute en el objeto cursor para ejecutar una consulta SQL
2. Usando SQL para generar una tabla llamada usuarios
3. El IF NOT EXISTSwill nos ayudará al reconectarnos a la base de datos. La consulta
nos permitirá verificar si la tabla existe, y si es así, no se cambia nada.
4. Creamos cuatro columnas: userid, fname, lname y gender. Se asigna userid a
ser la clave primaria.
5. Confirmamos los cambios utilizando la función commit en la conexión
objeto.
Para crear nuestra otra tabla, podemos seguir un patrón similar y escribir lo siguiente
comandos
Después de ejecutar estos dos scripts, tu base de datos tendrá dos tablas. Ahora estamos listos
¡Comenzar a agregar datos!
6/12
Veamos cómo agregar datos con SQLite en Python a la base de datos que acabamos de crear.
creado. Similar a la consulta de generación de tabla, la consulta para agregar datos utiliza el cursor
objeto para ejecutar la consulta.
A menudo, cuando estamos trabajando dentro de Python, tendremos variables que contienen valores para nosotros.
Por ejemplo, podemos tener una tupla que contiene esa información sobre un usuario que
podría verse así:
Si quisiéramos cargar estos datos en nuestra base de datos, usaríamos una convención diferente:
Lo que hicimos aquí fue reemplazar todos los valores con signos de interrogación y agregar un adicional
parámetro que contiene los valores que esperamos añadir.
Es importante señalar aquí que SQLite espera que los valores estén en formato de tupla.
Sin embargo, la variable puede contener una lista, siempre que los elementos de la lista sean tuplas. Para
ejemplo, podríamos agregar más usuarios usando la variable:
puedes copiar y pegar para insertar algunos datos de ejemplo en ambas tablas:
7/12
Si estás siguiendo, ¡carga también estos archivos de datos! Fuente: Nik Piepenbreier
8/12
Usando fetchone() en SQLite con Python
Comencemos utilizando la función fetchone(). Creamos una variable one_result para obtener solo
resultado
[Link]("SELECCIONAR * DE usuarios;")
un_resultado = [Link]()
imprimir(un_resultado)
Esto devuelve:
[(1, 'Nik', 'Piepenbreier', 'male'), (2, 'Lois', 'Lane', 'Female'), (3, 'Peter', 'Parker', 'Male')]
9/12
¡Aprendamos a eliminar datos también! Fuente: Nik Piepenbreier
Ahora, echaremos un vistazo a cómo eliminar datos utilizando SQLite en Python. Podemos lograrlo
esto utilizando una estructura similar a la anterior. Digamos que quisimos eliminar cualquier usuario con el apellido
nombre 'Parker', podríamos escribir:
Esto imprime una lista vacía, confirmando que el registro ha sido eliminado.
Del mismo modo, podrías aplicar algunos otros trucos de SQL. Para una introducción completa a SQL,
mira mi guía completa para principiantes aquí.
¡Muchas gracias por tomarte el tiempo! ¡Eres realmente, realmente increíble! Fuente: Nik Piepenbreier
Escrito por
Nik Piepenbreier
11/12
Fundador de [Link] || autor de introducción a python para ciencia de datos
[Link]/3aErgNu || mi canal de YouTube [Link] || amante de los juegos de palabras
Descubre Medium
Bienvenido a un lugar donde las palabras importan. En Medium, voces inteligentes e ideas originales
toma el centro del escenario - sin anuncios a la [Link]
Hazte miembro
Obtén acceso ilimitado a las mejores historias en Medium — y apoya a los escritores mientras lo haces.
solo $5/[Link]
12/12