Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / MS SQL Server: забирать результат запроса проциями / 4 сообщений из 4, страница 1 из 1
09.07.2019, 18:20
    #39835634
seperblunt
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS SQL Server: забирать результат запроса проциями
Всем добрый день!

Такая задачка для MS SQL Server: мне нужно выполнить запрос, но забирать результат порциями, при этом между вызовами процедуры "Взять_Очередную_Порцию" нет возможности сохранять на клиенте RecordSet.

Т.е. мне нужно при первом обращении с клиента выполнить запрос и вернуть адрес RecordSet
При последующих запросах с клиента я буду передавать этот адрес и получать следующую порцию данных.

Возможно ли такое?

Модератор: Тема перенесена из форума "MySQL".
...
Рейтинг: 0 / 0
10.07.2019, 09:02
    #39835784
L_argo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS SQL Server: забирать результат запроса проциями
Можно сохранить рекордсет во времянку и доставать оттуда порциями.
Но будет нужен четкий критерий порции: н-р, интервал значений.
...
Рейтинг: 0 / 0
10.07.2019, 09:53
    #39835813
uaggster
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS SQL Server: забирать результат запроса проциями
Основная проблема в том, что значение выборки может измениться между извлечениями порций данных.
Если этим можно пренебречь, то можно воспользоваться инструкцией FETCH - OFFSET, начиная с 2012 сервера, см. пример:
Код: sql
1.
2.
3.
  SELECT * FROM TestTable
   ORDER BY ProductId
   OFFSET 3 ROWS FETCH NEXT 3 ROWS ONLY


Последовательно вызывая, соответственно с разными значениями OFFSET.

Однако, если выборка быстро меняется - на выходе получите лажу.
Поэтому ее сначала придется материализовать в таблицу, а потом - отдавать. Причем, если у вас соединение между запросами с клиента - не существует, материализовать придется даже не во временную таблицу.
...
Рейтинг: 0 / 0
10.07.2019, 17:25
    #39836048
seperblunt
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS SQL Server: забирать результат запроса проциями
uaggster,
Спасибо! то что надо. У меня таблицы сугубо статичны,е так что ваш метод подходит.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / MS SQL Server: забирать результат запроса проциями / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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