使 PyMySQL 游标开始
Bringing PyMySQL cursor to beginning
我正在使用 PyMySQL 0.7.9 和 MySQL 5.1.73。我必须使用同一个 PyMySQL 游标执行两个操作。在游标上完成第一次操作后,我需要将游标带回开头。
import pymysql;
cursor.execute("my query");
# First operation
for row in cursor :
# run update query to update status flag for all rows fetched.
# Second Operation
for row in cursor :
# run some more commands for the rows.
我在第二次操作前加了
cursor.rownumber = 0
。有效。但是有没有 PyMySQL 函数可以实现相同的目的?
PyMySQL 中是否有与 http://php.net/manual/en/mysqli-result.data-seek.php 类似的内容
根据API定义,可以使用scroll
函数:
cursor.scroll(value [, mode='relative' ])
Scroll the cursor in the result set to a new position according to mode .
If mode is relative (default), value is taken as offset to the current position in the result set, if set to absolute, value states an absolute target position.
所以要跳到第一行,你可以使用
cursor.scroll(0, 'absolute')
在内部,pymysql
实际上也会执行 cursor.rownumber = 0
。
这仅适用于普通 cursor
,不适用于无缓冲 SScursor
,您(当前)只能向前滚动。
我正在使用 PyMySQL 0.7.9 和 MySQL 5.1.73。我必须使用同一个 PyMySQL 游标执行两个操作。在游标上完成第一次操作后,我需要将游标带回开头。
import pymysql;
cursor.execute("my query");
# First operation
for row in cursor :
# run update query to update status flag for all rows fetched.
# Second Operation
for row in cursor :
# run some more commands for the rows.
我在第二次操作前加了
cursor.rownumber = 0
。有效。但是有没有 PyMySQL 函数可以实现相同的目的?
PyMySQL 中是否有与 http://php.net/manual/en/mysqli-result.data-seek.php 类似的内容
根据API定义,可以使用scroll
函数:
cursor.scroll(value [, mode='relative' ])
Scroll the cursor in the result set to a new position according to mode .
If mode is relative (default), value is taken as offset to the current position in the result set, if set to absolute, value states an absolute target position.
所以要跳到第一行,你可以使用
cursor.scroll(0, 'absolute')
在内部,pymysql
实际上也会执行 cursor.rownumber = 0
。
这仅适用于普通 cursor
,不适用于无缓冲 SScursor
,您(当前)只能向前滚动。