python操作mysql教程教程文档
时间: 2023-10-08 10:11:12 浏览: 126
以下是Python操作MySQL的教程文档:
1. 安装MySQL驱动
在使用Python操作MySQL之前,需要先安装MySQL驱动。常见的MySQL驱动有:PyMySQL、mysql-connector-python、MySQLdb等。这里以PyMySQL为例进行介绍。
使用pip命令安装PyMySQL:
```
pip install PyMySQL
```
2. 连接MySQL数据库
使用PyMySQL连接MySQL数据库的方法如下:
```python
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 关闭数据库连接
db.close()
```
其中,host表示MySQL服务器的地址,user表示MySQL用户名,password表示MySQL用户密码,database表示要连接的数据库名,charset表示连接使用的字符集。可以根据实际情况修改这些参数。
3. 创建数据库表
使用PyMySQL创建MySQL数据库表的方法如下:
```python
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# 使用 execute() 方法执行 SQL,如果表存在则删除
cursor.execute("DROP TABLE IF EXISTS student")
# 使用预处理语句创建表
sql = """CREATE TABLE student (
id INT(11) NOT NULL AUTO_INCREMENT,
name CHAR(20) NOT NULL,
age INT(11),
PRIMARY KEY (id))"""
cursor.execute(sql)
# 关闭游标和数据库连接
cursor.close()
db.close()
```
其中,使用execute()方法执行SQL语句,如果表已经存在则先删除。使用预处理语句创建表,其中id为主键,自动递增;name为字符型,长度为20;age为整型。
4. 插入数据
使用PyMySQL插入数据的方法如下:
```python
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# SQL 插入语句
sql = "INSERT INTO student(name, age) VALUES ('Tom', 18)"
try:
# 执行 SQL 语句
cursor.execute(sql)
# 提交到数据库执行
db.commit()
except:
# 如果发生错误则回滚
db.rollback()
# 关闭游标和数据库连接
cursor.close()
db.close()
```
其中,使用execute()方法执行SQL插入语句。如果插入成功,则提交到数据库执行,否则回滚。
5. 查询数据
使用PyMySQL查询数据的方法如下:
```python
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost', user='root', password='123456', database='test', charset='utf8')
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# SQL 查询语句
sql = "SELECT * FROM student WHERE age > %d" % (17)
try:
# 执行 SQL 语句
cursor.execute(sql)
# 获取所有记录列表
results = cursor.fetchall()
for row in results:
id = row[0]
name = row[1]
age = row[2]
# 打印结果
print("id=%d,name=%s,age=%d" % (id, name, age))
except:
print("Error: unable to fetch data")
# 关闭游标和数据库连接
cursor.close()
db.close()
```
其中,使用execute()方法执行SQL查询语句。使用fetchall()方法获取所有查询结果。遍历结果并打印。
以上就是Python操作MySQL的基本教程文档,希望对你有所帮助。
阅读全文