使用python如何操作数据库, 写出详细步骤, 至少3种方法
时间: 2023-06-07 11:08:20 浏览: 56
可以使用 Python 标准库中的 sqlite3 来操作 SQLite 数据库;也可以使用第三方包如 pymysql 连接 MySQL 数据库;还可以使用第三方包如 mongoengine 连接 MongoDB 数据库。
下面是该问题的详细步骤:
方法一:使用 sqlite3 操作 SQLite 数据库
1. 导入 sqlite3 模块。
2. 使用 sqlite3.connect() 方法连接数据库。
3. 创建一个游标对象。
4. 使用游标对象执行 SQL 查询或命令。
5. 提交事务。
6. 关闭游标对象和数据库连接对象。
举例:
```python
import sqlite3
# 连接数据库
conn = sqlite3.connect('example.db')
# 创建游标对象
cur = conn.cursor()
# 执行查询或命令
cur.execute('''CREATE TABLE stocks
(date text, trans text, symbol text, qty real, price real)''')
cur.execute("INSERT INTO stocks VALUES ('2006-01-05','BUY','RHAT',100,35.14)")
# 提交事务
conn.commit()
# 关闭游标对象和数据库连接对象
cur.close()
conn.close()
```
方法二:使用 pymysql 操作 MySQL 数据库
1. 导入 pymysql 模块。
2. 使用 pymysql.connect() 方法连接数据库。
3. 创建一个游标对象。
4. 使用游标对象执行 SQL 查询或命令。
5. 提交事务。
6. 关闭游标对象和数据库连接对象。
举例:
```
import pymysql
# 连接数据库
conn = pymysql.connect(host='localhost', user='root', password='password', db='test', port=3306, charset='utf8mb4')
# 创建游标对象
cur = conn.cursor()
# 执行查询或命令
cur.execute("SELECT * FROM user WHERE id=1")
cur.execute("INSERT INTO user(name,age) VALUES ('jerry',18)")
# 提交事务
conn.commit()
# 关闭游标对象和数据库连接对象
cur.close()
conn.close()
```
方法三:使用 mongoengine 操作 MongoDB 数据库
1. 导入 mongoengine 模块。
2. 使用 mongoengine.connect() 方法连接数据库。
3. 定义文档类。
4. 创建文档对象。
5. 保存文档对象。
6. 关闭数据库连接。
举例:
```
from mongoengine import *
# 连接数据库
connect('test')
# 定义文档类
class User(Document):
name = StringField(required=True)
age = IntField(required=True)
# 创建文档对象
user = User(name='Tom', age=20)
# 保存文档对象
user.save()
# 关闭数据库连接
disconnect('test')
```