Документация MySQL
8.4.3.218 Описание
необходимо вызывать
после каждого выполненного запроса, извлекающего данные (
,
,
,
).
инициализирует извлечение результирующего
набора, но фактически не производит чтение в клиенте подобно тому, как это
делает функция
. Вместо этого каждая строка должна
извлекаться индивидуально посредством вызова функции
.
При этом методе результат запроса читается непосредственно на сервере без
промежуточного хранения его во временной таблице или локальном буфере, что
быстрее и требует намного меньше памяти, чем использование функции
. Клиент будет выделять память только для текущей
строки и буфер связи может расти до величины
байтов.
С другой стороны, функцию
нельзя использовать, если
выполняется много операций по обработке каждой строки на клиентской
стороне, или если вывод делается на терминал, на котором пользователь
может нажать
(остановить вывод).
Это будет ограничивать работу сервера и будет мешать другим потокам в
обновлении таблиц, из которых выбираются данные.
, пока не возвратится величина
, в противном случае
невыбранные строки данного запроса будут возвращены как часть
результирующего набора для следующего запроса. Если вы забыли сделать это,
то интерфейс C будет выдавать ошибку
Commands out of sync; you can't run
this command now!
,
,
,
для обработки
результата, возвращенного функцией
, а также нельзя
запускать другие запросы, пока функция
будет корректно
возвращать количество выбранных строк).
сразу же после окончания
действий с результирующим набором.
8.4.3.219 Возвращаемые значения
с результатами.
, если произошла
ошибка.
8.4.3.220 Ошибки
Команды были выполнены в ненадлежащем порядке.
Нехватка памяти.
Сервер MySQL неожиданно завершил работу.
Соединение с сервером прервалось в процессе данного запроса.
Произошла неизвестная ошибка.
Рубрики: Без рубрики |

