# MySQLdb 獲取結果
> 原文: [https://thepythonguru.com/fetching-results/](https://thepythonguru.com/fetching-results/)
* * *
于 2020 年 1 月 7 日更新
* * *
在上一篇文章中,我們看到了如何使用`execute()`方法執行 sql 查詢。 `execute()`方法返回受影響的行,但不返回結果。 要獲取結果,我們使用游標對象的`fetchall()`方法。
**語法**: `cursor.fetchall()`
成功后,它將返回行的元組,其中每一行都是一個元組。
```py
from __future__ import print_function
import MySQLdb as my
db = my.connect(host="127.0.0.1",
user="root",
passwd="",
db="world"
)
cursor = db.cursor()
number_of_rows = cursor.execute("select * from city");
result = cursor.fetchall()
print(result)
db.close()
```
上面的代碼將打印城市表中的所有行。
您也可以使用`for`循環遍歷結果。
```py
from __future__ import print_function
import MySQLdb as my
db = my.connect(host="127.0.0.1",
user="root",
passwd="",
db="world"
)
cursor = db.cursor()
number_of_rows = cursor.execute("select * from city");
result = cursor.fetchall()
for row in result:
print(row)
db.close()
```
一些更多的例子。
**示例 1**:
```py
from __future__ import print_function
import MySQLdb as my
db = my.connect(host="127.0.0.1",
user="root",
passwd="",
db="world"
)
cursor = db.cursor()
id = 10
operation = ">"
sql = "select * from city where id {} {}".format(operation, id)
number_of_rows = cursor.execute(sql)
result = cursor.fetchall()
for row in result:
print(row[0], row[1])
db.close()
```
**示例 2**:
```py
from __future__ import print_function
import MySQLdb as my
db = my.connect(host="127.0.0.1",
user="root",
passwd="",
db="world"
)
cursor = db.cursor()
city = "%pur%"
sql = "select * from city where name like '{}'".format(city)
number_of_rows = cursor.execute(sql)
result = cursor.fetchall()
for row in result:
print(row[0], row[1])
db.close()
```
在下一篇文章中,我們討論如何[將行插入數據庫](/inserting-rows/)中。
* * *
* * *
- 初級 Python
- python 入門
- 安裝 Python3
- 運行 python 程序
- 數據類型和變量
- Python 數字
- Python 字符串
- Python 列表
- Python 字典
- Python 元組
- 數據類型轉換
- Python 控制語句
- Python 函數
- Python 循環
- Python 數學函數
- Python 生成隨機數
- Python 文件處理
- Python 對象和類
- Python 運算符重載
- Python 繼承與多態
- Python 異常處理
- Python 模塊
- 高級 Python
- Python *args和**kwargs
- Python 生成器
- Python 正則表達式
- 使用 PIP 在 python 中安裝包
- Python virtualenv指南
- Python 遞歸函數
- __name__ == "__main__"是什么?
- Python Lambda 函數
- Python 字符串格式化
- Python 內置函數和方法
- Python abs()函數
- Python bin()函數
- Python id()函數
- Python map()函數
- Python zip()函數
- Python filter()函數
- Python reduce()函數
- Python sorted()函數
- Python enumerate()函數
- Python reversed()函數
- Python range()函數
- Python sum()函數
- Python max()函數
- Python min()函數
- Python eval()函數
- Python len()函數
- Python ord()函數
- Python chr()函數
- Python any()函數
- Python all()函數
- Python globals()函數
- Python locals()函數
- 數據庫訪問
- 安裝 Python MySQLdb
- 連接到數據庫
- MySQLdb 獲取結果
- 插入行
- 處理錯誤
- 使用fetchone()和fetchmany()獲取記錄
- 常見做法
- Python:如何讀取和寫入文件
- Python:如何讀取和寫入 CSV 文件
- 用 Python 讀寫 JSON
- 用 Python 轉儲對象