游标对象

class pymysql.cursors.Cursor(connection)

这是用于与数据库交互的对象。

不要自行创建游标实例。调用 connections.Connection.cursor()。

请参阅规范中的游标

callproc(procname, args=())

使用 args 执行存储过程 procname。

参数:
  • procname (str) – 在服务器上执行的过程名称。

  • args (tuplelist) – 用于过程的参数序列。

返回原始 args。

兼容性警告:PEP-249 指定必须返回任何已修改的参数。由于只能将参数存储在服务器变量中,然后再通过查询检索,因此目前无法实现。由于存储过程返回零个或多个结果集,因此无法可靠地通过 callproc 获得 OUT 或 INOUT 参数。服务器变量命名为 @_procname_n,其中 procname 是上述参数,n 是参数的位置(从零开始)。在获取由过程生成的所有结果集后,可以发出使用 .execute() 的 SELECT @_procname_0, … 查询,以获取任何 OUT 或 INOUT 值。

兼容性警告:调用存储过程的行为本身会创建一个空结果集。这会出现在由过程生成的任何结果集后面。就 DB-API 而言,这是一种非标准行为。请务必使用 nextset() 遍历所有结果集;否则,你可能会断开连接。

关闭()

关闭游标仅用尽所有剩余数据。

执行(查询, 参数=)

执行查询。

参数:
  • 查询 (str) – 要执行的查询。

  • 参数 (元组列表字典) – 与查询一起使用的参数。(可选)

返回:

受影响的行数。

返回类型:

int

如果参数是列表或元组,则 %s 可用作查询中的占位符。如果参数是字典,则 %(name)s 可用作查询中的占位符。

多执行(查询, 参数)

针对一个查询运行多个数据。

参数:
  • 查询 (str) – 要执行的查询。

  • 参数 (元组列表) – 序列序列或映射序列。用作参数。

返回:

受影响的行数(若有)。

返回类型:

int 或 None

此方法提高了多行 INSERT 和 REPLACE 的性能。否则,它等效于通过 execute() 循环使用参数。

获取全部()

获取所有行。

获取多行(大小=)

获取多行。

获取一行()

获取下一行。

最大语句长度 = 1024000

executemany() 生成的最大语句大小。

允许的最大语句大小为 max_allowed_packet - packet_header_size。max_allowed_packet 的默认值为 1048576。

mogrify(query, args=None)

返回通过调用 execute() 方法将发送到数据库的确切字符串。

参数:
  • query (str) – 要模糊处理的查询。

  • 参数 (元组列表字典) – 与查询一起使用的参数。(可选)

返回:

应用了参数绑定的查询。

返回类型:

str

此方法遵循 Psycopg 遵循的 DB API 2.0 扩展。

setinputsizes(*args)

什么也不做,DB API 要求。

setoutputsizes(*args)

什么也不做,DB API 要求。

pymysql.cursors.SSCursor(connection)

未缓冲光标,主要用于返回大量数据的查询或通过慢速网络连接到远程服务器的查询。

此方法不会将每一行数据复制到缓冲区中,而是根据需要获取行。优点是客户端使用的内存更少,而且当通过慢速网络传输或结果集非常大的时候,返回行也会快得多。

但是,存在一些局限性。MySQL 协议不支持返回总行数,因此判断有多少行的唯一方式是对返回的每一行进行迭代。此外,目前无法向后滚动,因为在内存中只保存了当前行。

close()

关闭游标仅用尽所有剩余数据。

fetchall()

全部获取,根据 MySQLdb。对于大型查询来说几乎没用,因为它已缓冲。如果您希望获取此方法的未缓冲生成器版本,请参见 fetchall_unbuffered()。

fetchall_unbuffered()

全部获取,用作生成器实现,这不是标准,但是,列表中不应包含所有信息,因为对于较大的结果集合,这将使用大量内存。

fetchmany(size=None)

获取许多。

fetchone()

获取下一行。

read_next()

读取下一行。

class pymysql.cursors.DictCursor(connection)

以词典的方式返回结果的游标

class pymysql.cursors.SSDictCursor(connection)

不缓冲的游标,以字典的方式返回结果