Curso de python nivel medio
¿Qué es SQLite?
SQLite es una biblioteca de software que proporciona un motor de bases de datos SQL ligero y autocontenido. A diferencia de otros sistemas de bases de datos como MySQL o PostgreSQL, SQLite no requiere un servidor independiente; los datos se almacenan en un archivo en tu disco. Esto lo hace ideal para aplicaciones pequeñas, prototipos o proyectos educativos.
¿Por qué usar SQLite en Python?
- Fácil de usar: No necesitas instalar ni configurar un servidor de bases de datos.
- Ligero: Todo se almacena en un único archivo de base de datos.
- Integrado en Python: Python incluye soporte para SQLite de forma nativa a través del módulo
sqlite3.
¿Cómo usar SQLite en Python?
Veamos cómo puedes crear, interactuar y manipular una base de datos SQLite en Python.
Paso 1: Conectar a una base de datos
Primero, necesitas conectar tu programa a una base de datos SQLite. Si la base de datos no existe, se creará automáticamente.
1import sqlite3 2 3# Conectar a la base de datos (o crearla si no existe) 4conexion = sqlite3.connect("mi_base_de_datos.db") 5 6# Crear un cursor para interactuar con la base de datos 7cursor = conexion.cursor() 8 9print("Conexión a la base de datos establecida.")
- ¿Qué hace este código?:
- Conecta a una base de datos llamada
mi_base_de_datos.db. Si el archivo no existe, se crea. - Crea un cursor que se usa para ejecutar comandos SQL en la base de datos.
- Conecta a una base de datos llamada
- Resultado en pantalla:
Conexión a la base de datos establecida.
Paso 2: Crear una tabla
Ahora que estás conectado, puedes crear una tabla en la base de datos.
1# Crear una tabla llamada "usuarios" 2cursor.execute(""" 3CREATE TABLE IF NOT EXISTS usuarios ( 4 id INTEGER PRIMARY KEY AUTOINCREMENT, 5 nombre TEXT NOT NULL, 6 edad INTEGER NOT NULL, 7 email TEXT UNIQUE NOT NULL 8) 9""") 10 11# Confirmar la creación de la tabla 12conexion.commit() 13 14print("Tabla 'usuarios' creada.")
- ¿Qué hace este código?:
- Crea una tabla llamada
usuarioscon columnas paraid,nombre,edadyemail. PRIMARY KEY AUTOINCREMENThace queidsea una clave primaria que se incrementa automáticamente.commit()guarda los cambios en la base de datos.
- Crea una tabla llamada
- Resultado en pantalla:
Tabla 'usuarios' creada.
Paso 3: Insertar datos en la tabla
Una vez que la tabla está creada, puedes insertar datos en ella.
1# Insertar un nuevo usuario en la tabla 2cursor.execute(""" 3INSERT INTO usuarios (nombre, edad, email) 4VALUES ('Ana', 30, 'ana@example.com') 5""") 6 7# Confirmar la inserción de datos 8conexion.commit() 9 10print("Datos insertados en la tabla 'usuarios'.")
- ¿Qué hace este código?:
- Inserta un nuevo registro en la tabla
usuarioscon los valores especificados. commit()guarda los cambios en la base de datos.
- Inserta un nuevo registro en la tabla
- Resultado en pantalla:
Datos insertados en la tabla 'usuarios'.
Paso 4: Consultar datos
Puedes recuperar datos de la base de datos usando una consulta SQL.
1# Consultar todos los usuarios de la tabla 2cursor.execute("SELECT * FROM usuarios") 3usuarios = cursor.fetchall() 4 5# Mostrar los resultados 6print("Usuarios en la base de datos:") 7for usuario in usuarios: 8 print(usuario)
- ¿Qué hace este código?:
- Ejecuta una consulta SQL para seleccionar todos los registros de la tabla
usuarios. fetchall()obtiene todos los resultados de la consulta.- Muestra cada usuario en la base de datos.
- Ejecuta una consulta SQL para seleccionar todos los registros de la tabla
- Resultado en pantalla:
Usuarios en la base de datos: (1, 'Ana', 30, 'ana@example.com')
Paso 5: Actualizar y eliminar datos
También puedes actualizar y eliminar registros en la base de datos.
Actualizar datos
1# Actualizar la edad de un usuario 2cursor.execute(""" 3UPDATE usuarios 4SET edad = 31 5WHERE nombre = 'Ana' 6""") 7 8# Confirmar los cambios 9conexion.commit() 10 11print("Edad del usuario 'Ana' actualizada.")
- Resultado en pantalla:
Edad del usuario 'Ana' actualizada.
Eliminar datos
1# Eliminar un usuario de la tabla 2cursor.execute("DELETE FROM usuarios WHERE nombre = 'Ana'") 3 4# Confirmar los cambios 5conexion.commit() 6 7print("Usuario 'Ana' eliminado de la base de datos.")
- Resultado en pantalla:
Usuario 'Ana' eliminado de la base de datos.
Paso 6: Cerrar la conexión
Finalmente, siempre debes cerrar la conexión con la base de datos cuando termines de trabajar con ella.
1# Cerrar la conexión 2conexion.close() 3 4print("Conexión a la base de datos cerrada.")
- Resultado en pantalla:
Conexión a la base de datos cerrada.
Conclusión
SQLite es una herramienta poderosa y fácil de usar para trabajar con bases de datos en Python. Con el módulo sqlite3, puedes crear y manipular bases de datos directamente desde tus programas de Python. Esto te permite almacenar y gestionar datos de manera eficiente en aplicaciones pequeñas o medianas. ¡Practica estos ejemplos y verás cómo puedes integrar bases de datos en tus proyectos de Python!
- Loading...