游标位置self.cur.scroll(0, mode='absolute')
如果在select_all方法中用到了self.cur.scroll(0,mode='absolute'),那么在运行代码时要将游标的索引加到初始位置,如下:
假如测试数据库表中的数据有3条,则表结构如下图所示。
(1)在游标下执行SQL语句,则执行的结果被先放在游标中。
(2)在游标下执行scroll方法,如果不清楚这一步具体是做什么的,则可以先看Python源码是怎么解释的,如下图:
(3)在游标下执行fetchall方法,看一下Python源码是怎么解释的,如下图:
(4)设置游标的位置。
可以通过cursor.scroll(position,mode="relative|absolute")方法,来设置相对位置游标和绝对位置游标。
方法参数描述:
①position:游标位置(游标位置从0开始)。
②mode:游标位置的模式,包括以下两种。
· relative:默认模式,相对当前位置(即执行scroll方法时游标的位置)。
· absolute:绝对位置。
例如:
mode=relative,position=1:设置游标位置为“当前位置+1”,即向下移动一个位置。
mode=absolute,position=2:将游标移动到索引为2的位置,无论当前位置在哪里。