Python与数据库交互:华为云大数据中台的SQLite操作
需积分: 32 196 浏览量
更新于2024-08-08
收藏 5.68MB PDF 举报
"这篇文档是关于如何在Python中与关系型数据库进行交互的,主要以华为云大数据中台架构为背景,介绍了使用Python标准库sqlite3模块与SQLite数据库的连接和操作方法。文档出自《Python Cookbook》中文版,涵盖了Python在数据库操作中的常见技巧和方法。"
在Python中,与关系型数据库交互主要遵循PEP249(Python Database API Specification v2.0),这定义了Python标准数据库API。文档中提到,多行数据通常用一个由元组组成的序列来表示,例如股票数据。你可以使用`sqlite3`模块来连接和操作SQLite数据库,如果需要操作其他类型的数据库(如MySQL、PostgreSQL或ODBC),则需要相应的第三方模块。
首先,要连接到数据库,需要调用`sqlite3.connect()`函数,并传入数据库的名称,如'(database.db)'。这会返回一个数据库连接对象,如`db`。接着,创建一个游标`c = db.cursor()`,游标是执行SQL命令的接口。然后,你可以使用游标执行`execute()`方法来创建表,例如:
```python
c.execute('create table portfolio (symbol text, shares integer, price real)')
```
执行SQL命令后,通常需要调用`commit()`方法来提交事务,确保数据的持久化。对于插入多条记录,可以使用类似以下的SQL插入语句:
```python
symbols = ['GOOG', 'AAPL', 'FB', 'HPQ']
shares = [100, 50, 150, 75]
prices = [490.1, 545.75, 7.45, 33.2]
rows = [(symbol, shares, price) for symbol, shares, price in zip(symbols, shares, prices)]
c.executemany('insert into portfolio values (?, ?, ?)', rows)
db.commit()
```
除了基本的连接、创建表和插入数据,Python还支持查询、更新和删除操作,这些都可以通过SQL语句实现,并通过游标对象执行。例如,查询所有记录:
```python
c.execute('select * from portfolio')
rows = c.fetchall()
for row in rows:
print(row)
```
或者更新特定记录:
```python
c.execute("update portfolio set shares = 125 where symbol = 'GOOG'")
db.commit()
```
删除记录:
```python
c.execute("delete from portfolio where symbol = 'HPQ'")
db.commit()
```
Python提供了简单而强大的工具来处理关系型数据库,无论是在大数据处理还是常规的数据操作中,都能够有效地与数据库进行交互。这个文档片段只是《Python Cookbook》中的一部分,全书还涵盖了更多关于数据结构、字符串、数字日期和时间、迭代器与生成器等主题的实用技巧和方法。
2021-08-28 上传
2024-01-03 上传
2009-02-11 上传
2021-09-22 上传
2024-04-24 上传
2024-03-17 上传
点击了解资源详情
2023-07-27 上传
2022-06-08 上传
刘看山福利社
- 粉丝: 33
- 资源: 3901
最新资源
- 掌握Jive for Android SDK:示例应用的使用指南
- Python中的贝叶斯建模与概率编程指南
- 自动化NBA球员统计分析与电子邮件报告工具
- 下载安卓购物经理带源代码完整项目
- 图片压缩包中的内容解密
- C++基础教程视频-数据类型与运算符详解
- 探索Java中的曼德布罗图形绘制
- VTK9.3.0 64位SDK包发布,图像处理开发利器
- 自导向运载平台的行业设计方案解读
- 自定义 Datadog 代理检查:Python 实现与应用
- 基于Python实现的商品推荐系统源码与项目说明
- PMing繁体版字体下载,设计师必备素材
- 软件工程餐厅项目存储库:Java语言实践
- 康佳LED55R6000U电视机固件升级指南
- Sublime Text状态栏插件:ShowOpenFiles功能详解
- 一站式部署thinksns社交系统,小白轻松上手