Вниз
Скачать: CL | DM;

вопрос по БД   Найти похожие ветки 

← →
aKor   (2008-10-31 01:22) [0]

Подскажите как не выбирать все записи из таблицы, а выбирать, скажем только 15 а по AfterScroll Дата Сета выбирать уже следующий диапазон(limit)

БД InterBase


← →
Германн ©   (2008-10-31 02:06) [1]


> aKor   (31.10.08 01:22)
>
> Подскажите как не выбирать все записи из таблицы, а выбирать,
>  скажем только 15 а по AfterScroll Дата Сета выбирать уже
> следующий диапазон(limit)
>

Ух как классно закручено! :)
И смешено!
P.S. "смешено" - это не очепятка!  Это новояз! :)


> вопрос по БД [D7]
>
> aKor   (31.10.08 01:22)

Объясни задачу простыми словами. Подчёркиваю - Задачу, а не вопрос.


← →
MsGuns ©   (2008-10-31 10:56) [2]

А зачем нужно "перебирать" ВСЕ записи таблицы - неужели нельзя использовать запросы ?


← →
Правильный$Вася   (2008-10-31 12:18) [3]

использовать ClientDataSet с включенной опцией PacketRecords

но сам подход чреват тормозами


← →
Труп Васи Доброго ©   (2008-10-31 16:15) [4]

вот так надо делать
SELECT [FIRST <value>] [SKIP <value>] <select list>
   FROM <table expression list>


← →
Johnmen ©   (2008-10-31 16:24) [5]


> Труп Васи Доброго ©   (31.10.08 16:15) [4]

Не надо советовать, чего сам не знаешь.
Никогда предикатов FIRST и SKIP в InterBase не было.


← →
aKor   (2008-11-02 00:51) [6]

Весь вопрос в том как снять нагрузку с сервера.
Есть одна таблица  клиентов с полем "status" , пользователь без конца кликает на кнопки условий выбора из этой таблицы по полю статус, так как другие пользователи в сетке часто меняют статусы у клиента, а таблица большая(относительно), примерно "7000-9000" записей.
Но все дело в том что пользователи хотят Перебирать все записи стрелочками, Поэтому нужно выбирать(select)  только видимые записи в
DBGrid, что бы не было так "больно" при кликах на кнопках выбора, а потом делать выбор следующего дипазона записей, но если много людей будут активно Скролить DBGrid это тоже определенная нагрузка(при каждом нажатии стрелочки(верх, низ) нужно делать такой запрос: select * from clients where status = "какой-то статус" limit n,m), вот я и хочу спросить совета, как лучше сделать, что бы не изобретать это трюк с limit -ом записей в таблицы


← →
Johnmen ©   (2008-11-02 01:10) [7]

1. Не выбирать зараз много записей. Это стандартно.
2. Когда все записи получены на клиента, ни о какой нагрузке на сервер речь не идет, хоть облистайся... Вот только эта загрузка м.б. не быстрой.
Таблица в "7000-9000" записей - это просто смешное количество...


← →
Германн ©   (2008-11-02 01:25) [8]

3. Не делать
> select *
(с) (Перечислять всех кому принадлежит этот копирайт слишком долго :)


← →
aKor   (2008-11-02 18:45) [9]

Ок, спасибо



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.009 c
2-1225629295
M
2008-11-02 15:34
2008.12.14
D6 + D7 на одной машине


2-1226044326
alex_3
2008-11-07 10:52
2008.12.14
onresize, etc


1-1203994220
Anton
2008-02-26 05:50
2008.12.14
Пропадает курсор при вводе


2-1225562458
dmitry_12_08_73
2008-11-01 21:00
2008.12.14
Как прописать настройки директив компилятора в константу


2-1225923413
Андрей
2008-11-06 01:16
2008.12.14
Делфи




   Наверх