关键词

python连接mysql数据库并读取数据的实现

下面我将为你详细讲解“Python连接MySQL数据库并读取数据的实现”。

一、环境准备

在进行Python操作MySQL之前,需要先安装pymysql库。如果你没有安装,可以使用以下命令来安装:

pip install pymysql

接下来需要连接MySQL数据库,需要知道MySQL服务器地址、端口号、用户名、密码和要连接的数据库名。在本文中,我们使用如下数据作为示例:

  • IP地址:127.0.0.1
  • 端口号:3306
  • 用户名:root
  • 密码:123456
  • 数据库名:test

二、代码实现

接下来,我们使用Python来连接MySQL,并读取数据。完整的代码如下:

import pymysql

# 连接MySQL数据库
db = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='123456', database='test', charset='utf8')

# 获取游标
cursor = db.cursor()

# 执行SQL语句
sql = """
SELECT *
FROM students
"""
cursor.execute(sql)

# 获取查询结果
result = cursor.fetchall()

# 打印查询结果
for data in result:
    print(data)

# 关闭连接
cursor.close()
db.close()

以上代码中,首先使用pymysql库连接MySQL数据库,通过指定MySQL服务器地址、端口号、用户名、密码和要连接的数据库名等参数连接MySQL,并设置连接字符集为utf8

接下来,通过获取数据库游标执行SQL语句,并使用cursor.execute()方法来执行SQL语句,查询students表中的所有数据。使用cursor.fetchall()方法获取查询结果,并通过for循环遍历查询结果。最后,使用cursor.close()方法关闭游标,使用db.close()方法关闭连接。

三、示例说明

  1. 查询students表中有哪些学生
import pymysql

# 连接MySQL数据库
db = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='123456', database='test', charset='utf8')

# 获取游标
cursor = db.cursor()

# 执行SQL语句
sql = """
SELECT name
FROM students
"""
cursor.execute(sql)

# 获取查询结果
result = cursor.fetchall()

# 打印查询结果
for data in result:
    print(data[0])

# 关闭连接
cursor.close()
db.close()

以上代码示例中,查询students表中所有学生的姓名。通过执行SELECT name FROM students语句来查询结果,并使用data[0]输出查询结果集中的学生姓名。

  1. 查询students表中数学成绩大于80分的学生
import pymysql

# 连接MySQL数据库
db = pymysql.connect(host='127.0.0.1', port=3306, user='root', password='123456', database='test', charset='utf8')

# 获取游标
cursor = db.cursor()

# 执行SQL语句
sql = """
SELECT name, score
FROM students
WHERE subject = 'math' and score > 80
"""
cursor.execute(sql)

# 获取查询结果
result = cursor.fetchall()

# 打印查询结果
for data in result:
    print("{}的数学成绩是{}分".format(data[0], data[1]))

# 关闭连接
cursor.close()
db.close()

以上代码示例中,查询students表中数学成绩大于80分的学生姓名和对应的成绩。使用SELECT name, score FROM students WHERE subject = 'math' and score > 80语句查询结果,并使用format()方法输出查询结果集中的学生姓名和成绩。

本文链接:http://task.lmcjl.com/news/14168.html

展开阅读全文