Spec-Zone.ru › MySQL Connectors 1.0

10.6.1 Класс cursor.MySQLCursorBuffered

Класс MySQLCursorBuffered наследуется от MySQLCursor.

После выполнения запроса курсор MySQLCursorBuffered извлекает весь результат из сервера и буферизует строки.

Для запросов, выполняемых с использованием буферизованного курсора, методы извлечения строк, такие как fetchone(), возвращают строки из набора буферизованных строк. Для небуферизованных курсоров строки не извлекаются с сервера, пока не будет вызван метод извлечения строк. В этом случае вы должны убедиться, что извлечены все строки результата перед выполнением других операторов на том же соединении, иначе будет возбуждено исключение InternalError (Найден необработанный результат).

MySQLCursorBuffered может быть полезно в ситуациях, когда необходимо объединить или вычислить несколько запросов с небольшими наборами результатов.

Чтобы создать буферизованный курсор, используйте аргумент buffered при вызове метода соединения cursor(). В качестве альтернативы, чтобы сделать все курсоры, созданные из соединения, буферизованными по умолчанию, используйте аргумент соединения buffered аргумент соединения.

Пример:

import mysql.connector

cnx = mysql.connector.connect()

# Only this particular cursor will buffer results
cursor = cnx.cursor(buffered=True)

# All cursors created from cnx2 will be buffered by default
cnx2 = mysql.connector.connect(buffered=True)

Для практического примера см. Раздел 6.1 «Урок: Изменение зарплаты сотрудника с использованием буферизованного курсора».

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/connector-python-en/connector-python-api-mysqlcursorbuffered.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API