📜  使用 fetchone() 和 fetchall() 从数据库中查询数据

📅  最后修改于: 2022-05-13 01:57:02.371000             🧑  作者: Mango

使用 fetchone() 和 fetchall() 从数据库中查询数据

fetchone() 和 fetchall() 是 Python MySQL 连接器,它们用于显示数据。此连接器有助于使Python程序能够使用 MySQL 数据库。在下面的代码中,我们使用 MySQL 和Python编写所有查询并从数据库中获取所有数据。

1. Fetchone(): Fetchone() 方法用于只需要从表中检索第一行的情况。该方法只返回定义表的第一行。当我们想要使用 cursor() 方法进行迭代时,也会使用该方法。此方法将光标的位置增加 1,然后返回下一行。

此方法不能用于游标对象,而是我们使用 SQL 语句运行查询,即“SELECT *”,它从表中获取第一行/元组。之后,我们对“SELECT *”语句返回的结果变量使用 fetchone() 方法。现在该方法从该结果中获取第一行。

句法:

使用Python在 Mysql 中使用 fetchone() 的步骤:

  • 第一的。导入 MySQL 连接器
  • 现在,使用 connect() 方法创建与 MySQL 连接器的连接
  • 接下来,使用 cursor() 方法创建一个游标对象
  • 现在使用带有 execute() 方法的“SELECT *”语句创建并执行查询以检索数据
  • 对结果变量使用 fetchone() 方法。
  • 打印结果

例子:

假设有一个名为“CUSTOMERS”的表,并且只想从中检索第一行,所以我们必须运行以下代码。

Python
# Program to display the data 
import mysql.connector
  
mydb = mysql.connector.connect(
  host = "localhost",
  user = "yourusername",
  password = "yourpass",
  database = "yourdatabase"
)
  
mycursor = mydb.cursor()
  
mycursor.execute("SELECT * FROM CUSTOMERS")
  
result = mycursor.fetchone()
  
print(result)


Python
# Program to display the data 
import mysql.connector
  
mydb = mysql.connector.connect(
  host = "localhost",
  user = "yourusername",
  password = "yourpass",
  database = "yourdatabase"
)
  
mycursor = mydb.cursor()
  
mycursor.execute("SELECT * FROM CUSTOMERS")
  
# This SQL statement selects all data from the CUSTOMER table.
result = mycursor.fetchall()
  
# Printing all records or rows from the table.
# It returns a result set. 
for all in result:
  print(all)


输出:

2. Fetchall(): Fetchall() 是一种从表中获取最后执行语句的所有剩余元组的方法(返回元组列表)。该方法仅返回定义表的第一行,如果没有元组,则在输出中返回一个空列表。

此方法不能用于游标对象,而是我们使用 SQL 语句运行查询,即“SELECT *”,它从表中获取所有行/元组。之后,我们对“SELECT *”语句返回的结果变量使用 fetchall() 方法。

句法:

使用Python在 Mysql 中使用 fetchall() 的步骤:

  • 第一的。导入 MySQL 连接器
  • 现在,使用 connect() 方法创建与 MySQL 连接器的连接
  • 接下来,使用 cursor() 方法创建一个游标对象
  • 现在使用带有 execute() 方法的“SELECT *”语句创建并执行查询以检索数据
  • 对结果变量使用 fetchall() 方法。
  • 使用 for 每个循环打印结果以显示所有

例子:

假设有一个名为“CUSTOMERS”的表,想要从中检索所有行,我们必须运行以下代码。

Python

# Program to display the data 
import mysql.connector
  
mydb = mysql.connector.connect(
  host = "localhost",
  user = "yourusername",
  password = "yourpass",
  database = "yourdatabase"
)
  
mycursor = mydb.cursor()
  
mycursor.execute("SELECT * FROM CUSTOMERS")
  
# This SQL statement selects all data from the CUSTOMER table.
result = mycursor.fetchall()
  
# Printing all records or rows from the table.
# It returns a result set. 
for all in result:
  print(all)

输出: