Spec-Zone.ru › MySQL 9.2

15.6.6.5 Ограничения на курсоры на стороне сервера

Курсоры на стороне сервера реализованы в C API с помощью функции. Такая же реализация используется для курсоров в хранимых процедурах. Курсор на стороне сервера позволяет генерировать результат на сервере, но не передавать его клиенту, за исключением запрошенных строк. Например, если клиент выполняет запрос, но интересуется только первой строкой, остальные строки не передаются.

В MySQL курсор на стороне сервера материализуется во внутреннюю временную таблицу. Изначально это таблица типа MEMORY, но она преобразуется в таблицу типа MyISAM, когда ее размер превышает минимальное значение системных переменных max_heap_table_size и tmp_table_size. Те же ограничения применяются к внутренним временным таблицам, созданным для хранения набора результатов курсора, что и к другим использованиям внутренних временных таблиц. Смотрите Раздел 10.4.4, «Использование внутренних временных таблиц в MySQL». Одним из ограничений реализации является то, что для больших наборов результатов получение строк через курсор может быть медленным.

Курсоры только для чтения; вы не можете использовать курсор для обновления строк.

UPDATE WHERE CURRENT OF и DELETE WHERE CURRENT OF не реализованы, так как обновляемые курсоры не поддерживаются.

Курсоры не сохраняемые (не остаются открытыми после коммита).

Курсоры нечувствительные.

Курсоры не прокручиваемые.

Курсоры не именованные. Обработчик инструкций выступает в качестве идентификатора курсора.

Вы можете иметь открытым только один курсор на инструкцию с предварительной подготовкой. Если вам нужны несколько курсоров, необходимо подготовить несколько инструкций.

Вы не можете использовать курсор для инструкции, которая генерирует набор результатов, если инструкция не поддерживается в режиме предварительной подготовки. Это включает инструкции, такие как CHECK TABLE, HANDLER READ и SHOW BINLOG EVENTS.

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-8.4-en/cursor-restrictions.html

Spec-Zone.ru

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