Здравствуйте, wildwind, Вы писали:
N_P>>"В лоб" решить не получится: в память приложения все не влезет, да и по времени таймаут будет. W>А зачем все в память? Обрабатывай поточно. Таймауты настраиваются, в т.ч. программно.
Поточно — не нравится привязка к framework, с которым с БД работаю (сейчас C# ADO.NET). А таймауты расширять дело плохое. Или на большой запрос времени не хватит или посыпятся жалобы на то, что при отвале БД об ошибке программа сообщит только через полчаса.
Вообще — я почему именно сюда, а не в .NET тему, такой вопрос написал? Я подумал, что дело это, чтение больших выборок, не редкое, те же grid для вывода больших данных есть аналогичная задача. И что есть уже наработанные и проверенные паттерны этой задачи решения.
В принципе, ответ в виде "общего решения нет, только БД и framework-ориентированные" тоже ответ.
N_P>>Как принято решать такие вопросы ?
W>1. Обрабатывать на сервере (с помощью SQL или ХП).
А как? Что по этому поводу почитать и где посмотреть пример?
W>2. Обрабатывать на клиенте, не помещая все в память.
В память вполне можно получить полный ID записей.