sqlite utils Python (Cómo Funciona Para Desarrolladores)
El paquete SQLite-utils de Python es una herramienta versátil que contiene funciones de utilidad de Python para trabajar con bases de datos SQLite. Proporciona una interfaz de línea de comandos (CLI) y una biblioteca de Python, lo que facilita la creación, manipulación y consulta de bases de datos SQLite. Vamos a profundizar en sus características y ver algunos ejemplos de código. Más adelante en este artículo, exploraremos IronPDF, una biblioteca de generación de PDF desarrollada por Iron Software.
Descripción general de SQLite-utils
SQLite-utils está diseñado para simplificar varias tareas relacionadas con la manipulación de bases de datos SQLite. Algunas de sus características clave incluyen:
- Creación y gestión de bases de datos: Creación fácil de nuevas bases de datos y tablas.
- Inserción y consulta de datos: Inserción de datos JSON, archivos CSV o TSV y ejecución de consultas SQL.
- Búsqueda de texto completo: Configuración y ejecución de consultas de búsqueda de texto completo.
- Transformaciones de esquema: Realización de cambios en el esquema que ALTER TABLE de SQLite no soporta directamente.
- Normalización de datos: Extracción de columnas en tablas separadas para normalizar los datos.
- Funciones SQL personalizadas: Instalación de plugins para añadir funciones SQL personalizadas.
Instalación
Puedes instalar SQLite-utils usando pip:
pip install sqlite-utilspip install sqlite-utilsO, si usas Homebrew en macOS:
brew install sqlite-utilsbrew install sqlite-utilsUso de SQLite-utils como herramienta CLI
La herramienta CLI te permite realizar varias operaciones directamente desde la línea de comandos. Aquí hay algunos ejemplos:
Creación de una base de datos e inserción de datos
Vamos a crear una nueva base de datos SQLite e insertar algunos datos desde un archivo CSV:
# Create a new database and insert data from a CSV file
sqlite-utils insert dogs.db dogs dogs.csv --csv# Create a new database and insert data from a CSV file
sqlite-utils insert dogs.db dogs dogs.csv --csvConsulta de datos
El comando a continuación es cómo realizarías una consulta SQL de la base de datos:
# Query the database and display results in JSON format
sqlite-utils dogs.db "select * from dogs" --json# Query the database and display results in JSON format
sqlite-utils dogs.db "select * from dogs" --jsonTablas de listado
Lista todas las tablas en la base de datos junto con el conteo de filas:
sqlite-utils tables dogs.db --countssqlite-utils tables dogs.db --countsUso de SQLite-utils como biblioteca de Python
También puedes usar SQLite-utils como una biblioteca de Python para interactuar con bases de datos SQLite de manera programática.
Creación de una base de datos e inserción de datos
Aquí se muestra cómo crear una nueva base de datos e insertar datos usando Python:
import sqlite_utils
# Create a new database
db = sqlite_utils.Database("demo_database.db")
# Insert data into a table
db["dogs"].insert_all([
{"id": 1, "age": 4, "name": "Cleo"},
{"id": 2, "age": 2, "name": "Pancakes"}
], pk="id")import sqlite_utils
# Create a new database
db = sqlite_utils.Database("demo_database.db")
# Insert data into a table
db["dogs"].insert_all([
{"id": 1, "age": 4, "name": "Cleo"},
{"id": 2, "age": 2, "name": "Pancakes"}
], pk="id")Consulta de datos
Puedes ejecutar consultas SQL y obtener resultados:
# Run a query and fetch results
rows = db.query("SELECT * FROM dogs")
for row in rows:
print(row)# Run a query and fetch results
rows = db.query("SELECT * FROM dogs")
for row in rows:
print(row)Búsqueda de texto completo
Habilita la búsqueda de texto completo en una tabla y ejecuta consultas de búsqueda:
# Enable full-text search on the 'name' column
db["dogs"].enable_fts(["name"])
# Run a search query for the term "Cleo"
results = db["dogs"].search("Cleo")
for result in results:
print(result)# Enable full-text search on the 'name' column
db["dogs"].enable_fts(["name"])
# Run a search query for the term "Cleo"
results = db["dogs"].search("Cleo")
for result in results:
print(result)Presentando IronPDF

IronPDF es una poderosa biblioteca de Python diseñada para crear, editar y firmar PDFs usando HTML, CSS, imágenes y JavaScript. Ofrece un rendimiento de calidad comercial con un bajo uso de memoria. Las características clave son:
Conversión de HTML a PDF:
Convierte archivos HTML, cadenas HTML y URLs a PDFs. Por ejemplo, renderiza una página web como PDF utilizando el renderizador PDF de Chrome.
Soporte Multiplataforma:
Compatible con varias plataformas .NET, incluyendo .NET Core, .NET Standard y .NET Framework. Es compatible con Windows, Linux y macOS.
Edición y Firma:
Establece propiedades, añade seguridad con contraseñas y permisos, y aplica firmas digitales a tus PDFs.
Plantillas de Páginas y Configuración:
Puedes personalizar PDFs con encabezados, pies de página, números de página y márgenes ajustables. Además, soporta tamaños de papel personalizados y diseños responsivos.
Cumplimiento de Estándares:
Cumple con los estándares PDF, incluyendo PDF/A y PDF/UA, soporta codificación de caracteres UTF-8 y gestiona recursos como imágenes, CSS y fuentes.
Generar documentos PDF con IronPDF y Sqlite Utils
import sqlite_utils
from ironpdf import ChromePdfRenderer, License
# Apply your license key
License.LicenseKey = "key"
# Initialize a new database
db = sqlite_utils.Database("mydatabase.db")
# Define a table schema
schema = {
"id": int,
"name": str,
"age": int
}
# Create a table with the defined schema
db["users"].create(schema)
# Sample data to insert into the table
data = [
{"id": 1, "name": "Alice", "age": 30},
{"id": 2, "name": "Bob", "age": 28},
{"id": 3, "name": "Charlie", "age": 32}
]
# Insert data into the table
db["users"].insert_all(data)
# Query all records from the table
rows = db.query("SELECT * FROM users")
# Initialize the PDF renderer
renderer = ChromePdfRenderer()
# Create HTML content for the PDF
content = "<h1>Awesome IronPDF with Sqlite-Utils</h1>"
content += "<p>Table data:</p>"
for row in rows:
content += f"<p>{row}</p>"
# Render the HTML content as PDF
pdf = renderer.RenderHtmlAsPdf(content)
# Save the generated PDF as a file
pdf.save_as("DemoSqliteUtils.pdf")import sqlite_utils
from ironpdf import ChromePdfRenderer, License
# Apply your license key
License.LicenseKey = "key"
# Initialize a new database
db = sqlite_utils.Database("mydatabase.db")
# Define a table schema
schema = {
"id": int,
"name": str,
"age": int
}
# Create a table with the defined schema
db["users"].create(schema)
# Sample data to insert into the table
data = [
{"id": 1, "name": "Alice", "age": 30},
{"id": 2, "name": "Bob", "age": 28},
{"id": 3, "name": "Charlie", "age": 32}
]
# Insert data into the table
db["users"].insert_all(data)
# Query all records from the table
rows = db.query("SELECT * FROM users")
# Initialize the PDF renderer
renderer = ChromePdfRenderer()
# Create HTML content for the PDF
content = "<h1>Awesome IronPDF with Sqlite-Utils</h1>"
content += "<p>Table data:</p>"
for row in rows:
content += f"<p>{row}</p>"
# Render the HTML content as PDF
pdf = renderer.RenderHtmlAsPdf(content)
# Save the generated PDF as a file
pdf.save_as("DemoSqliteUtils.pdf")Explicación del código
Este script combina las funcionalidades del paquete SQLite-utils de Python y la biblioteca de IronPDF para gestionar una base de datos SQLite y generar un documento PDF. Lo siguiente es una explicación paso a paso de lo que hace el código:
Inicialización de la Base de Datos:
- Inicializa una base de datos SQLite llamada "mydatabase.db" usando SQLite-utils.
Creación de Tablas:
- Define un esquema de tabla con columnas
id,name, yage. - Crea una tabla llamada "users" en la base de datos SQLite utilizando el esquema definido.
- Define un esquema de tabla con columnas
Inserción de Datos:
- Inserta múltiples registros en la tabla "users" usando SQLite-utils.
Consulta de Datos:
- Recupera todos los registros de la tabla "users" y crea una representación HTML de los datos.
- Generación de PDF:
- Utiliza IronPDF para crear un documento PDF.
- Construye contenido HTML para el documento PDF, incluyendo encabezados y datos de tabla recuperados de la base de datos SQLite.
- Guarda el documento PDF generado como "DemoSqliteUtils.pdf."
En general, este script demuestra cómo aprovechar SQLite-utils para tareas de gestión de bases de datos como creación de tablas, inserción y consulta de datos, combinado con IronPDF para generar documentos PDF a partir de contenido dinámico obtenido de una base de datos SQLite en aplicaciones Python.
Resultado


Licencia de IronPDF
IronPDF corre con la clave de licencia de Python. IronPDF para Python ofrece una clave de licencia de prueba gratuita para permitir a los usuarios probar sus extensas características antes de comprar.
Coloca la Clave de Licencia al inicio del script antes de utilizar el paquete IronPDF:
from ironpdf import License
# Apply your license key
License.LicenseKey = "key"from ironpdf import License
# Apply your license key
License.LicenseKey = "key"Conclusión
SQLite-utils es una herramienta poderosa para trabajar con bases de datos SQLite. Ofrece tanto un CLI como una biblioteca de Python. Ya sea que necesites manipular datos rápidamente desde la línea de comandos o integrar operaciones de SQLite en tus aplicaciones Python, SQLite proporciona una solución flexible y fácil de usar.










