![]() |
|
|
![]()
|
|
| Чучмек |
|
||||||||||
|
НЭТ БИЛЭТ ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 11.5.2008 Где: СССР Репутация: 1 Всего: 41 |
Если использовать серверный курсор, прокрутка имеет всего три позиции - начало,конец, и посредине( сдвиг на страницу).
Пришлось разобраться с серверным курсором. Это замена, для постраничной, выборки от мелкософта. Отсутствие LIMIT, было для меня большим разочарованием в MS SQL Разбираясь с прокруткой нашел следующие DBGrids
и ADODB
Переопределяем IsSequenced
Запускаем. Тревожное ожидание. Подозрительная задержка. Но вот появляется... О чудо!!! Нормальная прокрутка!!! Смотрим сколько данных было получено... Восторг пропадает. Грузилось так, как если бы вся таблица целиком. Ищем причину. Причина кроется в вызове метода Get_RecordCount интерфейса Recordset15. Легко проверить посмотрев сколько времени выполняется вызов GetRecordCount ( и сколько при этом подгружается данных). Возможно в другой версии Microsoft ActiveX Data Objects Library эта проблема устранена. Поскольку определить число строк в курсоре, при работе с курсором средствами TSQL, очень просто (переменная @@CURSOR_ROWS после открытия курсора). Я пойду на хитрость. Переопределю GetRecordCount.
Это сообщение отредактировал(а) Чучмек - 10.3.2013, 14:53 -------------------- умную мысль держи при себе, а дурной - поделись с другими |
||||||||||
|
|||||||||||
| Illusion Dolphin |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1198 Регистрация: 3.5.2003 Репутация: 2 Всего: 63 |
В MS SQL есть TOP, ROW_NUMBER ( ) и другие примочки -------------------- В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен. Шифрование и организация фотографий - Photo Database 4.5 |
|||
|
||||
| Чучмек |
|
|||
|
НЭТ БИЛЭТ ![]() ![]() Профиль Группа: Участник Сообщений: 841 Регистрация: 11.5.2008 Где: СССР Репутация: 1 Всего: 41 |
TOP это TOP - первые n записей.
Все остальное, кроме курсора - костыли. -------------------- умную мысль держи при себе, а дурной - поделись с другими |
|||
|
||||
![]()
|
| Правила форума "Delphi: Базы данных и репортинг" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |