PYTHON帮助

sqlite3 Python(如何为开发者运行)

发布 2024年八月13日
分享:

"(《世界人权宣言》) sqlite3 Python模块提供了一种与SQLite数据库交互的方式。它是Python标准库的一部分,所以你不需要安装任何额外的东西来使用它。让我们来探索它的功能并查看一些代码示例。稍后在本文中,我们将探索IronPDF,这是由IronSoftware开发的PDF生成库。

介绍

SQLite 是一个轻量级的基于磁盘的数据库,不需要单独的数据库服务器进程。sqlite3 模块提供了一个符合 SQL 接口的环境,可以无缝地与现有数据库或新创建的数据库进行交互。该模块强制执行 PEP 2491 描述的 DB-API 2.0 规范。

基本用法

这是一个简单的示例和多个 SQL 语句,帮助您开始使用 sqlite3.

连接到数据库

首先,您需要连接到您的SQLite数据库。如果数据库文件丢失,它将会生成:

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()
PYTHON

创建表格

使用 CREATE TABLE SQL 语句来创建新数据表:

# 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
    )
''')
PYTHON

插入数据

以下是在数据库表中插入数据的方法:

# Insert data into the table
cur.execute('''
    INSERT INTO users (name, age) VALUES (?, ?)
''', ('Alice', 30))
# Commit the transaction with connection object
conn.commit()
PYTHON

查询数据

您可以运行SQL命令并从数据库表中获取结果:

# Query the database
cur.execute('SELECT * FROM users')
# Fetch all results
rows = cur.fetchall()
# Print the results
for row in rows:
    print(row)
PYTHON

更新数据

要更新表中的现有数据:

# Update data in the table
cur.execute('''
    UPDATE users SET age = ? WHERE name = ?
''', (31, 'Alice'))
# Commit the transaction
conn.commit()
PYTHON

删除数据

要删除数据库中名字为 Alice 的行:

# Delete data from the table
cur.execute('''
    DELETE FROM users WHERE name = ?
''', ('Alice',))
# Commit the transaction
conn.commit()
PYTHON

关闭连接

记得在完成操作后关闭游标和连接:

# Close the cursor and connection
cur.close()
conn.close()
PYTHON

高级功能

使用上下文管理器

您可以使用上下文管理器来自动处理关闭连接:

with sqlite3.connect('example.db') as conn:
    cur = conn.cursor()
    cur.execute('SELECT * FROM users')
    rows = cur.fetchall()
    for row in rows:
        print(row)
PYTHON

处理事务

SQLite 支持事务,您可以使用 BEGIN、COMMIT 和 ROLLBACK 来管理它们:

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}")
PYTHON

IronPDF 简介

sqlite3 Python(它如何为开发人员工作):图1 - IronPDF:Python PDF库

IronPDF 是一个强大的Python库,设计用于使用HTML、CSS、图像和JavaScript来创建、编辑和签署PDF。它提供商业级性能,并具有较低的内存占用。其主要功能包括:

HTML转PDF转换:

将HTML文件、HTML字符串和URL转换为PDF。例如,使用Chrome PDF渲染器将网页呈现为PDF。

跨平台支持:

兼容各种.NET平台,包括.NET Core、.NET Standard和.NET Framework。支持Windows、Linux和macOS。

编辑与签名:

设置属性,使用密码和权限添加安全性,并在PDF中应用数字签名。

页面模板与设置:

通过页眉、页脚、页码和可调节的边距自定义PDF。支持响应式布局和自定义纸张大小。

标准合规:

符合PDF标准,如PDF/A和PDF/UA,支持UTF-8字符编码,并管理图像、CSS和字体等资源。

使用IronPDF和SQLite3 Python生成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")
PYTHON

代码解释

这段 Python 程序演示了如何使用 SQLite 库来创建数据库、插入数据、执行查询、更新记录、删除记录,最后使用 IronPDF 生成 PDF 文档。

  1. 导入库:
  • sqlite3:Python 内置的用于处理 SQLite 数据库的模块。
  • ironpdf:从 IronPDF 导入组件,用于 PDF 生成。
  1. 连接数据库:
  • 建立与名为 example3.db 的 SQLite 数据库的连接。
  1. 创建表:
    • 定义一个名为 users 的 SQLite 表,包含 id 列。 (整数, 主键), `name` (文本,不为空), 和 `age` (整数).4. 插入数据:
    • users表插入多行数据。5. 提交事务:
    • 提交更改到数据库以使其持久。6. 查询数据库:
    • 执行SELECT语句以检索users表中的所有行。7. 更新数据:
    • 更新名为'Alice'的用户的age。8. 删除数据:
    • users表中删除名为'IronUser1'的用户。9. 生成PDF:
    • 使用IronPDF (`ChromePdfRenderer`) 根据HTML内容创建PDF文档。
    • 合并标题和表格数据 (从数据库检索) 将内容插入到HTML中。
  • 将PDF文档保存为`DemoSqlite3.pdf`。
    1. 关闭连接: * 关闭游标 (cur) 和连接 (`连接`) 释放资源。

这个脚本演示了一个完整的工作流程,从数据库设置到数据操作,再到使用Python的SQLite3和IronPDF库生成PDF。

输出

sqlite3 Python(对开发人员的工作原理):图 2 - 示例控制台输出

PDF

sqlite3 Python(如何为开发人员工作):图3 - 从IronPDF生成的示例PDF输出,使用sqlite查询数据

IronPDF License

IronPDF 由许可证密钥驱动。IronPDF for Python 提供免费试用许可证密钥,让用户在购买前测试其广泛的功能。

在此处放置许可证密钥:

import {IronPdfGlobalConfig, PdfDocument} from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Add Your key here";
PYTHON

结论

sqlite3 Python(开发人员的工作原理):图4 - IronPDF许可页面

sqlite3模块是一款强大且易于使用的工具,用于在Python中处理SQLite数据库。它集成在Python标准库中,使得简单和复杂的数据库操作都变得方便。 IronPDF. 之后, 许可证 起价为749美元及以上。

< 前一页
asyncio Python(对开发人员的工作原理)
下一步 >
psycopg2(开发人员如何使用)

准备开始了吗? 版本: 2024.9 刚刚发布

免费 pip 安装 查看许可证 >