Python 连接 SQLite 数据库及基础增删改查操作

山海之间
山海之间
发布时间:2026-10-10 | 3人浏览过
原创

本文详细介绍了如何使用 Python 标准库 sqlite3 连接 SQLite 数据库,并演示了基础的数据库操作。通过具体的代码示例,展示了如何建立数据库连接、获取游标、执行查询语句以及插入数据。文章涵盖了从连接数据库到执行 SQL 命令的完整流程,帮助开发者快速上手 SQLite 在 Python 中的应用。

Python 连接 SQLite 数据库

在 Python 中操作 SQLite 数据库,主要依赖于内置的 sqlite3 模块。该模块提供了与 SQLite 数据库交互所需的所有功能,包括连接数据库、执行 SQL 语句以及处理结果集。以下是连接数据库的基本步骤:

  1. 导入模块:首先需要导入 sqlite3 模块。
  2. 建立连接:使用 sqlite3.connect() 方法连接到指定的数据库文件。如果文件不存在,该操作会自动创建一个新的数据库文件。
  3. 获取游标:通过连接对象的 cursor() 方法获取游标对象,游标用于执行 SQL 命令。
import sqlite3
# 连接数据库,如果文件不存在则自动创建
con = sqlite3.connect("E:/Datebase/SQLiteStudio/Park.db")
# 获得游标
cur = con.cursor()

执行查询操作

连接数据库并获取游标后,可以使用游标的 execute() 方法执行 SQL 查询语句。以下是一个简单的查询示例,展示了如何查询整个表的数据:

# 查询整个表
cur.execute('select *from '+table)
lists = ['name','password']
if table == 'login':
  # 将数据库列名存入字典
  colnames = {desc[0] for desc in cur.description}
  # 将字典和数据库的数据一起存入列表,获得了记录字典
  rowdicts = [dict(zip(lists, row)) for row in cur.fetchall()]
else:
  rowdicts = []
  for row in cur:
    rowdicts.append(row)

在上述代码中,首先执行了 select *from 语句来查询指定表的所有数据。然后,根据表名的不同,对查询结果进行了不同的处理。如果表名为 'login',则将数据库列名存入字典,并将字典和数据库的数据一起存入列表,获得了记录字典。否则,直接将查询结果存入列表。

插入数据操作

除了查询操作,SQLite 还支持插入、更新和删除数据。以下是一个插入数据的示例:

# 插入数据
def insert_data(ID,name,money):
  con = sqlite3.connect("E:/Datebase/SQLiteStudio/Park.db")
  cur = con.cursor()
  # 使用SQL语句插入
  cur.execute('insert into Charge values (?,?,?)', (ID,name, money))
  # 插入后进行整表查询,看是否成功插入
  cur.execute('select *from Charge')
  print(cur.fetchall())
  con.commit()
  cur.close()

在插入数据时,使用了 insert into 语句,并通过占位符 ? 来防止 SQL 注入攻击。插入数据后,通过执行 select *from 语句来验证数据是否成功插入。最后,调用 con.commit() 提交事务,并关闭游标和连接。

注意事项

在使用 Python 操作 SQLite 数据库时,需要注意以下几点:

  • 事务管理:SQLite 默认开启事务,因此在执行插入、更新或删除操作后,需要调用 commit() 方法来提交事务。
  • 资源释放:操作完成后,应关闭游标和数据库连接,以释放系统资源。
  • SQL 注入:在执行 SQL 语句时,应使用占位符来防止 SQL 注入攻击。

以上就是 Python 连接 SQLite 数据库及基础增删改查操作的详细内容,更多关于 Python 数据库操作、SQLite 高级用法、Python 数据库编程的资料请关注本站其它相关文章!

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表