Python
Python 是一门高级编程语言,具有简单优美,易学易用,能快速开发应用程序等优点,已经成为目前最受欢迎的编程语言之一。
MySQL
MySQL 是一个开源的关系型数据库管理系统,是最常使用的关系型数据库之一。它以其高性能、稳定性和可靠性而广泛使用。
Python 访问 MySQL 数据库
在 Python 中访问 MySQL 数据库的方式有很多,包括直接使用 MySQL 的命令行接口、Python 中的 MySQLdb 和 PyMySQL 等库。本篇文章将结合 PyMySQL 这个库,详细介绍 Python 如何访问 MySQL 数据库。
安装 PyMySQL
在开始使用 PyMySQL 之前,需要先将它安装到您的计算机上。PyMySQL 可以通过 pip 包管理器来安装,如下所示:
```
pip install PyMySQL
连接 MySQL 数据库
连接到 MySQL 数据库的第一步是使用 PyMySQL 中的 connect() 方法创建一个连接对象。这个方法需要传递一些参数来指定连接数据库的详细信息,例如 MySQL 主机名、端口号、用户名和密码等。
下面是一个简单的 PyMySQL 连接 MySQL 数据库的示例:
```python
import pymysql
# 打开数据库连接
db = pymysql.connect(host='localhost', port=3306, user='root', password='root', db='test')
# 关闭数据库连接
db.close()
上面的代码中,我们使用 pymysql 库的 connect() 方法打开了一个名为 test 的数据库连接。这个方法接收以下参数:
- host: MySQL 服务器地址
- port: MySQL 服务器端口号
- user: 登录 MySQL 服务器的用户名
- password: 登录 MySQL 服务器的密码
- db: 要连接的数据库名称
创建数据库表
在连接到数据库之后,第二步是创建一个表来存储数据。在 PyMySQL 中,可以使用 execute() 方法来执行 SQL 语句来创建一个表。
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# 使用 execute() 方法执行 SQL 语句来创建一个表
sql = '''CREATE TABLE EMPLOYEE (
ID INT PRIMARY KEY,
NAME CHAR(20) NOT NULL,
AGE INT,
SEX CHAR(10),
INCOME FLOAT )'''
cursor.execute(sql)
# 关闭游标和数据库连接
cursor.close()
上面的代码中,我们使用 PyMySQL 的 cursor() 方法创建一个游标对象 cursor,然后使用 execute() 方法来执行 SQL 语句来创建一个名称为 EMPLOYEE 的表。这个表包含了一个 ID、一个 NAME、一个 AGE、一个 SEX 和一个 INCOME 字段,其中 ID 是主键。
插入数据
在创建了 EMPLOYEE 表之后,接下来的步骤是向表中插入数据。在 PyMySQL 中,可以使用 execute() 方法来执行 SQL 语句来向表中插入数据。
下面是一个简单的示例,向 EMPLOYEE 表中插入了两条记录:
# 使用 execute() 方法执行 SQL 语句来向 EMPLOYEE 表中插入数据
sql = "INSERT INTO EMPLOYEE(ID, NAME, AGE, SEX, INCOME) VALUES (1, '张三', 23, '男', 2000.00), (2, '李四', 25, '女', 1500.00)"
# 提交到数据库执行
db.commit()
在执行完插入数据的 SQL 语句之后,还需要使用 commit() 方法将数据提交到数据库。如果不提交,那么插入的数据将不会被保存在数据库中。关闭游标和数据库连接。
查询数据
查询数据是使用数据库的最常见操作之一。在 PyMySQL 中,可以使用 execute() 方法来执行 SQL 语句来查询数据。
下面是一个简单的示例,查询 EMPLOYEE 表中的所有记录:
# 使用 execute() 方法执行 SQL 语句来查询 EMPLOYEE 表中的所有记录
sql = "SELECT * FROM EMPLOYEE"
# 使用 fetchall() 方法获取所有记录列表
results = cursor.fetchall()
# 遍历记录列表,打印每个记录
for row in results:
id = row[0]
name = row[1]
age = row[2]
sex = row[3]
income = row[4]
print("ID=%d, NAME=%s, AGE=%d, SEX=%s, INCOME=%f" % (id, name, age, sex, income))
上面的代码中,我们使用 PyMySQL 的 cursor() 方法创建一个游标对象 cursor,然后使用 execute() 方法来执行 SQL 语句来查询 EMPLOYEE 表中的所有记录。查询结果使用 fetchall() 方法获取,然后遍历结果列表,打印每一条记录。
更新数据
在 PyMySQL 中,可以使用 execute() 方法来执行 SQL 语句来更新表中的数据。
下面是一个简单的示例,将 EMPLOYEE 表中 ID 为 2 的记录的 AGE 字段更新为 30:
# 使用 execute() 方法执行 SQL 语句来更新 EMPLOYEE 表中的数据
sql = "UPDATE EMPLOYEE SET AGE = 30 WHERE ID = 2"
在执行完更新数据的 SQL 语句之后,还需要使用 commit() 方法将数据提交到数据库。如果不提交,那么更新的数据将不会被保存在数据库中。关闭游标和数据库连接。
删除数据
在 PyMySQL 中,可以使用 execute() 方法来执行 SQL 语句来删除表中的数据。
下面是一个简单的示例,从 EMPLOYEE 表中删除 ID 为 1 的记录:
# 使用 execute() 方法执行 SQL 语句来删除 EMPLOYEE 表中的数据
sql = "DELETE FROM EMPLOYEE WHERE ID = 1"
网友留言(0)