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

Delphi 5 + ADO - фичинг записей..   Найти похожие ветки 

← →
Азазелло   (2002-08-28 14:12) [0]

Всем доброго времени суток!

Раньше работал только с IB и привык к тому, что TIBDataSet и TIBQuery
фичат на клиента только в видимую часть визуального компонента и дофичивают, если происходит перемещение.

К сожалению в ADOшных компонентах этого нет : (

MSSQL установлен удаленно, общение происходит посредством интернет, поэтому я не могу прописать в свойства TADODataSet
MaxRecords=0 и выставляю там 30 (тащатся первые тридцать записей).
При просмотре методов TADODataSet я не нашёл возможности фичить следующие тридцать или предыдущие тридцать. Если я знаю тип сортировки (допустим он по Id), то при позиционировании на последнюю (30-ю) запись я могу переоткрывать датасет с другим условием(where Id>=30) и брать следующие 30 записей. Но как тогда двигаться назад? Если мне не изменяет память, то в MSSQL есть возможность брать n TOP записей, но пользоваться этим ну совсем не хочется.

Подскажите пожалуйста, кто как решает данную проблему?

С уважением, Игорь.


← →
Mike Kouzmine   (2002-08-28 14:33) [1]

А можно сделать глобальную переменную и присваивать ей значение, ну, например 30. при перемещении вперед увеличивать на дельту при назад - уменьшать на дельту, проверяя на мин возможное число и делать запросы where id > имя_переменной?


← →
Азазелло   (2002-08-28 14:39) [2]

Датасетов у меня много.. неужели столько и перменных заводить? ;-) Да и пример в данном случае неудачный.. по Id. А если сортировка идёт по какому-либо другому (другого типа) полю?


← →
Mike Kouzmine   (2002-08-28 14:47) [3]

А я не знааааю, я знаю только что в 21-00 по СТС идет мура! :)


← →
Bond ©   (2002-08-28 15:43) [4]

А зачем тебе тащить по 30 записей?
Тащи по одной. Почему такое странное число - 30.

А вообще использовать клиент - серверную технологию для связи через интернет - крайне неэффективно. И вообще, я вчера статью читал, так наша Дельфя, и клиент-сервер это, пацаны, - прошлый век, если говорить о работе с БД. PHP - вот сила. Аж обидно...


← →
Юрий Жуков ©   (2002-08-28 15:48) [5]

CaсheSize не подойдет?


← →
Азазелло   (2002-08-28 16:15) [6]

30-40.. не важно, будет тащиться столько, чтобы полностью "закрывать данными" Grid-ы, которые отображаются пользователю.

А CacheSize - это количество записей, помещаемых в буфер, взятые из тех самых maxrecords (то есть в данном случае 30). Али я не прав??



← →
Юрий Жуков ©   (2002-08-28 17:14) [7]

Не знаю, надо пробовать.

2Bond: Ню-ню. Это кто же тебя так обманул?



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

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



Память: 0.46 MB
Время: 0.009 c
1-61156
Werewolfru
2002-09-07 12:18
2002.09.19
Происходит ошибка при обращении к блоку памяти! (FULL)


14-61302
V.exeR
2002-08-22 18:00
2002.09.19
Винт упал и встать не может :(


1-61148
Losyara
2002-09-06 11:42
2002.09.19
Компоненты


14-61290
ZzzzzzzzzzMan
2002-08-22 18:23
2002.09.19
...


3-60931
DeepProg
2002-08-28 16:24
2002.09.19
FormCreate must be first!!!




   Наверх