Python操作SQLite3数据库实战:连接、查询、插入、更新、删除与关闭
199 浏览量
更新于2024-08-31
收藏 74KB PDF 举报
"本文将详细讲解Python开发SQLite3数据库的相关操作,包括连接、查询、插入、更新、删除和关闭数据库的技巧。SQLite是一款轻量级的嵌入式数据库,Python的sqlite3模块提供了与SQLite交互的接口。我们将通过示例代码来阐述如何使用这些操作。"
在Python中,SQLite3数据库的使用首先需要建立连接。如果指定的数据库文件不存在,`sqlite3.connect()`方法会自动创建。例如,连接到硬盘上的数据库文件可以这样写:
```python
conn = sqlite3.connect('c:\\test\\hongten.db')
```
连接对象(conn)提供了几个关键方法:
- `commit()`:用于提交事务,保存对数据库的修改。
- `rollback()`:如果发生错误,可以回滚事务,撤销未保存的更改。
- `close()`:关闭数据库连接,释放资源。
- `cursor()`:创建一个游标对象,用于执行SQL命令。
游标对象(如`cu = conn.cursor()`)是执行SQL语句的核心。它有以下方法:
- `execute(sql)`:执行单条SQL语句。
- `executemany(sql, params_list)`:批量执行多条相同的SQL语句,参数列表包含不同的数据。
- `close()`:关闭游标,释放内存。
- `fetchone()`:获取查询结果集中的一条记录。
- `fetchmany(size)`:获取size条记录,如果结果集小于size,则返回所有剩余记录。
- `fetchall()`:获取结果集中所有记录。
- `scroll(offset, mode='relative')`:移动游标的位置,mode可选为'relative'(相对位置)或'absolute'(绝对位置)。
下面是一个简单的示例,展示了如何使用Python操作SQLite3数据库:
```python
import sqlite3
# 连接到数据库
conn = sqlite3.connect('example.db')
# 创建游标
cur = conn.cursor()
# 创建表
cur.execute('''CREATE TABLE users
(id INTEGER PRIMARY KEY, name TEXT, email TEXT)''')
# 插入数据
cur.execute("INSERT INTO users VALUES (1, 'Alice', 'alice@example.com')")
cur.execute("INSERT INTO users VALUES (2, 'Bob', 'bob@example.com')")
# 提交事务
conn.commit()
# 查询数据
cur.execute("SELECT * FROM users")
print(cur.fetchall())
# 关闭游标和连接
cur.close()
conn.close()
```
在这个例子中,我们创建了一个名为`users`的表,插入了两条记录,并打印了所有用户的信息。最后,确保游标和连接都被正确关闭,以释放系统资源。
总结起来,Python的sqlite3模块提供了简单而强大的接口,允许开发者轻松地进行数据库操作。无论是初次接触数据库编程,还是在小型项目中快速存储和检索数据,SQLite3都是一个理想的选择。通过学习和实践这些基本操作,你可以高效地管理SQLite数据库并与之交互。
1116 浏览量
219 浏览量
423 浏览量
444 浏览量
714 浏览量
141 浏览量
171 浏览量
点击了解资源详情
点击了解资源详情

weixin_38682790
- 粉丝: 3
最新资源
- 足球模拟标记语言FerSML开源项目发布
- 精选awesome twitter工具列表:提升社交媒体管理效率
- 自制汇编语言计算器:基础运算与存储功能
- 泰迪科技数据产品分析及PowerBI可视化教程
- Elasticsearch聚合值过滤的实现方法
- Android网络通信组件EasyHttp:全面支持Get/Post及下载上传功能
- React元素平移组件:实现Google Maps式DOM操作
- 深入浅出Ajax开发讲义与完整源代码分析
- Vue.js + Electron打造的Twitter客户端功能全面上线
- PHP开发威客平台源码分享:前端后端及多技术项目资源
- 掌握XSS防护:使用xssProtect及核心jar包
- zTree_v3树形结构和拖拽效果的演示与API文档
- Matlab运动检测与测速GUI程序详解与打包指南
- C#中GridView Eval()方法实现数据格式化详解
- Flex快速入门到精通的电子资源与源码
- gulp与Maven结合的示例项目实践指南