【Python】数据处理:SQLite操作

使用 Python 与 SQLite 进行交互非常方便。SQLite 是一个轻量级的关系数据库,Python 标准库中包含一个名为 sqlite3 的模块,可以直接使用。

python 复制代码
import sqlite3

数据库连接和管理

连接到 SQLite 数据库。如果数据库文件不存在,则创建一个新数据库文件

python 复制代码
sqlite3.connect(database[, timeout, detect_types, isolation_level, check_same_thread, factory, cached_statements, uri])
  • 参数:

    • database (str):数据库文件路径。如果使用 :memory:,则创建一个内存数据库

    • timeout (float, 可选):数据库操作的超时时间,以秒为单位。默认为 5.0 秒

    • detect_types (int, 可选):启用列类型检测。默认值为 0

    • isolation_level (str, 可选):事务隔离级别。默认为 None(自动提交模式)

    • check_same_thread (bool, 可选):是否只允许单个线程访问数据库连接。默认为 True

    • factory (可选):用于创建连接的工厂函数。默认为 sqlite3.Connection

    • cached_statements (int, 可选):SQLite 语句缓存大小。默认为 100

    • uri (bool, 可选):是否解释 database 参数为 URI。默认为 False

  • 返回值:一个数据库连接对象 (sqlite3.Connection)

提交当前事务,将所有未保存的更改写入数据库

python 复制代码
Connection.commit()
  • 参数:无
  • 返回值:无

回滚当前事务,撤销所有未提交的更改

python 复制代码
Connection.rollback()
  • 参数:无
  • 返回值:无

关闭数据库连接。关闭后,不能再使用此连接对象

python\ 复制代码
Connection.close()
  • 参数:无
  • 返回值:无

游标管理

创建并返回一个游标对象,用于执行 SQL 语句

python 复制代码
Connection.cursor()
  • 参数:无
  • 返回值:一个游标对象 (sqlite3.Cursor)
python 复制代码
Cursor.close()
  • 参数:无
  • 返回值:无

SQL语句执行

执行一条 SQL 语句

python 复制代码
Cursor.execute(sql, parameters=())
  • 参数

    • sql (str):要执行的 SQL 语句

    • parameters (tuple, 可选):SQL 语句的参数。默认为空元组

  • 返回值:游标对象本身

执行多条带参数的 SQL 语句

复制代码
Cursor.executemany(sql, seq_of_parameters)
  • 参数:

    • sql (str):要执行的 SQL 语句

    • seq_of_parameters (sequence):参数序列

  • 返回值:游标对象本身

获取查询结果

获取查询结果的所有行

python 复制代码
Cursor.fetchall()
  • 参数:无

  • 返回值:包含所有行的列表,每行表示为一个元组。

获取查询结果的下一行

python 复制代码
Cursor.fetchone()
  • 参数:无。

  • 返回值:表示下一行的元组。如果没有更多行,则返回 None

示例

相关推荐
一头生产的驴1 分钟前
java整合itext pdf实现固定模版pdf导出
java·python·pdf
魔都吴所谓3 分钟前
【python】快速实现pdf批量去除指定位置水印
java·python·pdf
YFCodeDream28 分钟前
MLLM技术报告 核心创新一览
python·gpt·aigc
夜幽青玄2 小时前
mybatis-plus调用报 org.springframework.dao.DataIntegrityViolationException 错误处理
开发语言·python·mybatis
这里有鱼汤3 小时前
📊量化实战篇:如何计算RSI指标的“拥挤度指标”?
后端·python
JJJJ_iii3 小时前
【机器学习05】神经网络、模型表示、前向传播、TensorFlow实现
人工智能·pytorch·python·深度学习·神经网络·机器学习·tensorflow
William.csj3 小时前
服务器/Pytorch——对于只调用一次的函数初始化,放在for训练外面和里面的差异
人工智能·pytorch·python
Ingsuifon3 小时前
pytorch踩坑记录
人工智能·pytorch·python
smj2302_796826523 小时前
解决leetcode第3721题最长平衡子数组II
python·算法·leetcode
m0_626535204 小时前
力扣题目练习 换水问题
python·算法·leetcode