Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Корректная обработка курсора. / 4 сообщений из 4, страница 1 из 1
15.02.2014, 02:15:07
    #38561681
beginer.ua
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Корректная обработка курсора.
С добрым.
При переборе курсора можно определить handler выхода по достижению конца набора курсора.
Я сделал -
Код: plsql
1.
declare exit handler for sqlstate '02000'  set done=1;


То есть когда получит пустую строку (конец набора) он выйдет из текущего блока begin - end
Ну естественно, этот курсор я использую в процедуре, значения курсора перебираются в цикле пока done=0.
Как мне избавиться от того что процедура постоянно возвращается warning. Естественно
что мне этот ворнинг нужно будет обрабатывать на клиенте. Как его обработать внутри процедры, чтобы
клиент не знал что был ворнинг. Это создает определенные трудности по работе с хр.процедурами.
...
Рейтинг: 0 / 0
15.02.2014, 23:14:37
    #38562029
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Корректная обработка курсора.
А зачем sqlstate '02000'?
...
Рейтинг: 0 / 0
16.02.2014, 01:43:31
    #38562081
beginer.ua
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Корректная обработка курсора.
AkinaА зачем sqlstate '02000'?
Ну как минимум для того чтобы при перемещении по курсору отловить состояние конца курсора, когда нам не вернет итерация данных.
...
Рейтинг: 0 / 0
16.02.2014, 20:48:36
    #38562462
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Корректная обработка курсора.
Я не о том.
Ты ждёшь попадания в это состояние. Т.е. в момент срабатывания хэндлера ворнинг уже существует (читай - уже полетел клиенту на обработку). И потом удивляешься, что его надо как-то ловить за хвост... Тебе надо ещё до фетча пустой записи определять факт, что выходной набор курсора весь промотрен. А эта ошибка остаётся для констатации, что по какой-то причине курсор выгреб записей меньше, чем должен был, споткнулся посередь процесса...
Или просто плюнь и не заморачивайся.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Корректная обработка курсора. / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]