AYUDA DE PYTHON

sqlite3 Python (Cómo funciona para desarrolladores)

Actualizado agosto 13, 2024
Compartir:

En sqlite3 de Python ofrece una forma de interactuar con bases de datos SQLite. Forma parte de la biblioteca estándar de Python, por lo que no es necesario instalar nada adicional para utilizarlo. Exploremos sus características y veamos algunos ejemplos de código. Más adelante en este artículo, exploraremos IronPDF, una biblioteca de generación de PDF desarrollada por IronSoftware.

Introducción

SQLite es una base de datos ligera basada en disco que no requiere un proceso de servidor de bases de datos independiente. El módulo sqlite3 proporciona un entorno compatible con la interfaz SQL para interactuar sin problemas con una base de datos existente o de nueva creación. El módulo hace cumplir la especificación DB-API 2.0 descrita por PEP 2491.

Uso básico

He aquí un ejemplo sencillo y varias sentencias SQL para empezar sqlite3.

Conexión a una base de datos

En primer lugar, tendrás que conectarte a tu base de datos SQLite. Si falta el archivo de base de datos, se generará:

import sqlite3
# Connect to the database (or create it if it doesn't exist)
conn = sqlite3.connect('example.db')
# Create a cursor object
cur = conn.cursor()
import sqlite3
# Connect to the database (or create it if it doesn't exist)
conn = sqlite3.connect('example.db')
# Create a cursor object
cur = conn.cursor()
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Creación de una tabla

Utilice la sentencia SQL CREATE TABLE para crear una nueva tabla de datos:

# Create a table using sql statements like below
cur.execute('''
    CREATE TABLE IF NOT EXISTS users (
        id INTEGER PRIMARY KEY,
        name TEXT NOT NULL,
        age INTEGER
    )
''')
# Create a table using sql statements like below
cur.execute('''
    CREATE TABLE IF NOT EXISTS users (
        id INTEGER PRIMARY KEY,
        name TEXT NOT NULL,
        age INTEGER
    )
''')
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Inserción de datos

A continuación se explica cómo insertar datos en la tabla de la base de datos:

# Insert data into the table
cur.execute('''
    INSERT INTO users (name, age) VALUES (?, ?)
''', ('Alice', 30))
# Commit the transaction with connection object
conn.commit()
# Insert data into the table
cur.execute('''
    INSERT INTO users (name, age) VALUES (?, ?)
''', ('Alice', 30))
# Commit the transaction with connection object
conn.commit()
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Consulta de datos

Puede ejecutar comandos SQL y obtener resultados de la tabla de la base de datos:

# Query the database
cur.execute('SELECT * FROM users')
# Fetch all results
rows = cur.fetchall()
# Print the results
for row in rows:
    print(row)
# Query the database
cur.execute('SELECT * FROM users')
# Fetch all results
rows = cur.fetchall()
# Print the results
for row in rows:
    print(row)
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Actualización de datos

Para actualizar los datos existentes en la tabla:

# Update data in the table
cur.execute('''
    UPDATE users SET age = ? WHERE name = ?
''', (31, 'Alice'))
# Commit the transaction
conn.commit()
# Update data in the table
cur.execute('''
    UPDATE users SET age = ? WHERE name = ?
''', (31, 'Alice'))
# Commit the transaction
conn.commit()
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Borrar datos

Para borrar los datos de las filas de la base de datos cuyo nombre es Alice:

# Delete data from the table
cur.execute('''
    DELETE FROM users WHERE name = ?
''', ('Alice',))
# Commit the transaction
conn.commit()
# Delete data from the table
cur.execute('''
    DELETE FROM users WHERE name = ?
''', ('Alice',))
# Commit the transaction
conn.commit()
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Cerrar la conexión

Acuérdate de cerrar tanto el cursor como la conexión cuando hayas terminado:

# Close the cursor and connection
cur.close()
conn.close()
# Close the cursor and connection
cur.close()
conn.close()
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Funciones avanzadas

Uso de gestores de contexto

Puede utilizar gestores de contexto para gestionar el cierre de la conexión automáticamente:

with sqlite3.connect('example.db') as conn:
    cur = conn.cursor()
    cur.execute('SELECT * FROM users')
    rows = cur.fetchall()
    for row in rows:
        print(row)
with sqlite3.connect('example.db') as conn:
    cur = conn.cursor()
    cur.execute('SELECT * FROM users')
    rows = cur.fetchall()
    for row in rows:
        print(row)
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Gestión de transacciones

SQLite soporta transacciones, y puedes usar BEGIN, COMMIT y ROLLBACK para gestionarlas:

try:
    conn.execute('BEGIN')
    cur.execute('INSERT INTO users (name, age) VALUES (?, ?)', ('Bob', 25))
    conn.commit()
except sqlite3.Error as e:
    conn.rollback()
    print(f"An error occurred: {e}")
try:
    conn.execute('BEGIN')
    cur.execute('INSERT INTO users (name, age) VALUES (?, ?)', ('Bob', 25))
    conn.commit()
except sqlite3.Error as e:
    conn.rollback()
    print(f"An error occurred: {e}")
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Presentación de IronPDF

sqlite3 Python (Cómo funciona para desarrolladores): Figura 1 - IronPDF: La biblioteca PDF de Python

IronPDF es una potente biblioteca de Python diseñada para crear, editar y firmar PDF utilizando HTML, CSS, imágenes y JavaScript. Ofrece un rendimiento de nivel comercial con un bajo consumo de memoria. Las características clave incluyen:

**Conversión de HTML a PDF

Convierta archivos HTML, cadenas HTML y URL en PDF. Por ejemplo, renderiza una página web como PDF utilizando el renderizador de PDF de Chrome.

**Soporte multiplataforma

Compatible con varias plataformas .NET, incluidas .NET Core, .NET Standard y .NET Framework. Es compatible con Windows, Linux y macOS.

Edición y firma:

Establezca propiedades, añada seguridad con contraseñas y permisos, y aplique firmas digitales a sus PDF.

Plantillas de página y configuración:

Personalice los PDF con encabezados, pies de página, números de página y márgenes ajustables.

Cumplimiento de normas:

Cumple estándares PDF como PDF/A y PDF/UA, admite codificación de caracteres UTF-8 y gestiona activos como imágenes, CSS y fuentes.

Generar Documentos PDF usando IronPDF y SQLite3 Python

import sqlite3
from ironpdf import * 
# Apply your license key
License.LicenseKey = "key"
# Connect to the sqlite database file (or create it if it doesn't exist)
conn = sqlite3.connect('example.db')
# Create a cursor object for database connection
cur = conn.cursor()
# Create a table sql command 
cur.execute('''
    CREATE TABLE IF NOT EXISTS users (
        id INTEGER PRIMARY KEY,
        name TEXT NOT NULL,
        age INTEGER
    )
''')
# Insert data into the table
cur.execute('''
    INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser1', 30))
cur.execute('''
    INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser2', 31))
cur.execute('''
    INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser3', 25))
cur.execute('''
    INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser4', 28))
# Commit the transaction with connection object
conn.commit()
# Query the database
cur.execute('SELECT * FROM users')
# Fetch all results
rows = cur.fetchall()
# Print the results
for row in rows:
    print(row)
# Update data in the table
cur.execute('''
    UPDATE users SET age = ? WHERE name = ?
''', (31, 'Alice'))
# Commit the transaction
conn.commit()    
# Delete data from the table
cur.execute('''
    DELETE FROM users WHERE name = ?
''', ('IronUser1',))
# Commit the transaction
conn.commit()
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
content = "<h1>Awesome Iron PDF with Sqlite3</h1>"
content += "<p>table data</p>"
for row in rows:
    print(row)
    content += "<p>"+str(row)+"</p>"
# Close the cursor and connection
cur.close()
conn.close()
pdf = renderer.RenderHtmlAsPdf(content)    
    # Export to a file or Stream
pdf.SaveAs("DemoSqlite3.pdf")
import sqlite3
from ironpdf import * 
# Apply your license key
License.LicenseKey = "key"
# Connect to the sqlite database file (or create it if it doesn't exist)
conn = sqlite3.connect('example.db')
# Create a cursor object for database connection
cur = conn.cursor()
# Create a table sql command 
cur.execute('''
    CREATE TABLE IF NOT EXISTS users (
        id INTEGER PRIMARY KEY,
        name TEXT NOT NULL,
        age INTEGER
    )
''')
# Insert data into the table
cur.execute('''
    INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser1', 30))
cur.execute('''
    INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser2', 31))
cur.execute('''
    INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser3', 25))
cur.execute('''
    INSERT INTO users (name, age) VALUES (?, ?)
''', ('IronUser4', 28))
# Commit the transaction with connection object
conn.commit()
# Query the database
cur.execute('SELECT * FROM users')
# Fetch all results
rows = cur.fetchall()
# Print the results
for row in rows:
    print(row)
# Update data in the table
cur.execute('''
    UPDATE users SET age = ? WHERE name = ?
''', (31, 'Alice'))
# Commit the transaction
conn.commit()    
# Delete data from the table
cur.execute('''
    DELETE FROM users WHERE name = ?
''', ('IronUser1',))
# Commit the transaction
conn.commit()
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
content = "<h1>Awesome Iron PDF with Sqlite3</h1>"
content += "<p>table data</p>"
for row in rows:
    print(row)
    content += "<p>"+str(row)+"</p>"
# Close the cursor and connection
cur.close()
conn.close()
pdf = renderer.RenderHtmlAsPdf(content)    
    # Export to a file or Stream
pdf.SaveAs("DemoSqlite3.pdf")
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Código Explicación

Este programa de Python muestra cómo utilizar la biblioteca SQLite para crear una base de datos, insertar datos en ella, realizar consultas, actualizar registros, eliminar registros y, por último, generar un documento PDF utilizando IronPDF.

  1. Importación de bibliotecas:

    • sqlite3: Módulo incorporado en Python para trabajar con bases de datos SQLite.
    • ironPDF: Importación de componentes desde IronPDF, que permite la generación de PDFs.2. Conexión a la base de datos:
    • Establece una conexión con una base de datos SQLite llamada `ejemplo3.db`.3. Creación de una tabla:
    • Define una tabla SQLite "usuarios" con columnas "id" (ENTERO, CLAVE PRIMARIA) (TEXTO, NOT NULL)...y.. (INTEGRO).4. Insertar datos:
    • Insertar varias filas de datos en la tabla "usuarios".5. Comprometer transacciones:
    • Consigna los cambios en la Base de Datos para hacerlos persistentes.6. Consulta de la Base de Datos:
    • Ejecuta una sentencia SELECT para recuperar todas las filas de la tabla users.7. Actualización de datos:
    • Actualiza el `age`` de un usuario llamado 'Alice.'8. Borrado de datos:
    • Elimina un usuario llamado 'IronUser1' de la tabla `users`.9. Generando PDF:
    • Utiliza IronPDF (\Renderizador de PDF cromado) para crear un documento PDF a partir de contenido HTML.
    • Combina los datos de la cabecera y de la tabla (recuperado de la base de datos) en el contenido HTML.
    • Guarda el documento PDF como `DemoSqlite3.pdf`.10. Cerrar Conexiones: * Cierra el cursor (`cur`) y conexión (`conn`) para liberar recursos.

    Este script muestra un flujo de trabajo completo desde la configuración de la base de datos hasta la manipulación de datos y la generación de PDF utilizando las bibliotecas SQLite3 y IronPDF de Python.

Salida

sqlite3 Python (Cómo funciona para desarrolladores): Figura 2 - Ejemplo de salida de la consola

PDF

sqlite3 Python (Cómo funciona para desarrolladores): Figura 3 - Ejemplo de salida PDF generada a partir de IronPDF con sqlite para consultar datos

Licencia IronPDF

IronPDF funciona con la clave de licencia. IronPDF for Python ofrece una clave de licencia de prueba gratuita para permitir a los usuarios probar sus amplias funciones antes de la compra.

Coloque aquí la clave de licencia:

import {IronPdfGlobalConfig, PdfDocument} from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Add Your key here";
import {IronPdfGlobalConfig, PdfDocument} from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Add Your key here";
IRON VB CONVERTER ERROR developers@ironsoftware.com
VB   C#

Conclusión

sqlite3 Python (Cómo funciona para desarrolladores): Figura 4 - Página de licencias de IronPDF

El módulo sqlite3 es una herramienta potente y fácil de usar para trabajar con bases de datos SQLite en Python. Su integración en la biblioteca estándar de Python permite realizar cómodamente operaciones sencillas y complejas con bases de datos. En IronPDF. Después, el licencia a partir de 749 dólares.

< ANTERIOR
asyncio Python (Cómo funciona para desarrolladores)
SIGUIENTE >
psycopg2 (Cómo funciona para los desarrolladores)

¿Listo para empezar? Versión: 2024.8 acaba de salir

Instalación pip gratuita View Licenses >