Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.09.19;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "Базы";
Текущий архив: 2002.09.19;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.022 c
1-61071
Демонов Е.В.
2002-09-09 16:37
2002.09.19
нетипизированный параметр-переменная функции


1-61208
Usre
2002-09-08 23:34
2002.09.19
var xxx:String;???


1-61075
SergeyDN
2002-09-09 11:39
2002.09.19
Как можно из делфей выбрать определённый лист в Excel!


3-61015
DimS75
2002-08-29 16:43
2002.09.19
Query переполняет память.


1-61036
Arm
2002-09-07 01:21
2002.09.19
Привязка библиотек С++ к Делфи





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский