📜  Python MySQL-游标对象(1)

📅  最后修改于: 2023-12-03 15:04:06.448000             🧑  作者: Mango

Python MySQL-游标对象

在使用 Python 连接 MySQL 数据库时,经常需要用到游标对象(Cursor Object)。游标对象在执行 SQL 语句时被创建,可以用于遍历查询结果集中的每一行。

连接到 MySQL 数据库

在使用游标对象之前,我们需要先与 MySQL 数据库建立连接。可以使用 PyMySQL 库提供的 connect() 函数:

import pymysql

# 打开数据库连接
db = pymysql.connect("localhost", "testuser", "test123", "testdb")

connect() 函数接收 4 个参数:

  • host:MySQL 服务器地址。
  • user:用户名。
  • password:密码。
  • database:要连接的数据库名。
创建游标对象

我们可以使用 cursor() 方法创建游标对象:

# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
执行 SQL 语句

有了游标对象后,就可以执行 SQL 语句。在 PyMySQL 中,通过游标对象的 execute() 方法执行 SQL 语句,例如:

# 执行 SQL 语句
cursor.execute("SELECT * FROM employees")
遍历结果集

执行完 SQL 语句后,我们可以通过游标对象的 fetchone()fetchall() 方法获取查询结果集中的行。

  • fetchone():获取查询结果集中的一行数据。
  • fetchall():获取查询结果集中的所有数据。
fetchone()
# 获取一条记录,第一次是第一条记录,第二次是第二条
data = cursor.fetchone()
print(data)

fetchone() 返回一个元组,包含查询结果集的一行数据。

fetchall()
# 获取所有记录
data = cursor.fetchall()
for row in data:
    print(row)

fetchall() 返回一个嵌套列表,包含查询结果集的所有数据。

关闭游标和数据库连接

操作完成后,应该关闭游标对象和数据库连接。可以使用 close() 方法:

# 关闭游标
cursor.close()

# 关闭数据库连接
db.close()

以上就是 Python MySQL 游标对象的介绍。在使用过程中,需要注意的是,游标对象在执行 SQL 语句时应当为每个查询创建一个新的游标对象,以免出现问题。