Форум: "Базы";
Текущий архив: 2004.02.02;
Скачать: [xml.tar.bz2];
ВнизКак в ClientDataSet организовать выборку из ClientDataSet ов. Найти похожие ветки
← →
Aleksandr (2004-01-08 13:12) [0]Есть несколько файловых ClientDataSet"ов, в которых содержится справочная информация по типу CurrencyID, CurrencyName и главная таблица по типу Field1, Field2, CurrencyID. Есть ClientDataSet, дающий JOIN-отображение. Через TQuery и таблицы Парадокс раньше все было просто: в самом запросе пишешь
SELECT Field1,Field2,Currencies.CurrencyName FROM Table1
LEFT JOIN Currencies ON Currencies.CurrencyID=Table1.CurrencyID
А как сделать подобное подсоединение через файловые ClientDataSet? Просто хочется избавиться от задолбавшего глюками и тормозами Парадокса, ClientDataSetы со своими файловыми таблицами работают не в пример быстрее и проще, но с визуализацией справочников все трудно.
← →
Vlad (2004-01-08 13:40) [1]Сами данные хранятся в CDS-файлах надо понимать ?
Тогда SQL запросы тут как бы не к месту :-)
Почитай про LookUp поля в TDataSet, думаю в твоем случае - это то что нужно.
← →
MV (2004-01-08 14:14) [2]Никак. Только ручками, перебирать в цикле, сравнивать и т.д. :(
← →
Aleksandr (2004-01-08 14:31) [3]Да про LookUp я знаю... Просто он тоже не подарок, когда десяток справочников подключаешь (по скорости). Вот и надеялся, что может, есть у ClientDataSet какая-то скрытая моща, потому как странно, что формирование подзапросов для своих файлов у него отсутствует....
← →
Vlad (2004-01-08 14:37) [4]
> Aleksandr © (08.01.04 14:31) [3]
Десяток справочников ????? И все это без СУБД, на чистых ClientDataSet"ах ????
Ну это.... мягко говоря ненормально :-)
← →
MV (2004-01-08 16:08) [5]Да классно, я недавно одну крошку - СУБД переделал на такой режим. Да, извращение. Но зато прога и база вся (зарареная, есн-но), на дискетку лезут.
← →
Aleksandr (2004-01-08 16:43) [6]Вот в том-то и дело. Извращение не извращение, а возможности BDE для моей системы себя исчерпали уже пару лет назад (извините, но никаких индексов на лету и фильтров там не применишь, когда у тебя 10000 записей, собранных из десятка-двух справочников - ждать умрешь. Альтернатив маленьких драйверов нет, а восьмистам юзверам, живущим по всей СНГ, я Интербазу не буду ездить устанавливать ради локальной программы - это уж будет извращение похлеще любых лукапов.
← →
MV (2004-01-08 16:48) [7]Интербаза уже есть эмбеддед! FireBird 1.5 - просто добавляешь в директорию проги одну DLL - ку - и все! И никакой инсталляции! Правда, режим однопользовательский. Но все очень удобно и шустро!
← →
Vlad (2004-01-08 16:50) [8]
> Aleksandr © (08.01.04 16:43) [6]
Есть клон InterBase, Называется Yaffil Personal. Заточен специально для локальных БД.
Требует всего одной библиотеки gds32.dll (кстати ClientDataSet требует midas.dll) Кидаешь эту библиотеку в один каталог с файлом базы данных и вперед.
Кстати говоря - 10000 записей это ничто для IB
← →
MV (2004-01-08 16:52) [9](кстати ClientDataSet требует midas.dll)
Не обязательно. В Uses добавлаешь midaslib, и все.
← →
Vlad (2004-01-08 16:58) [10]
> MV (08.01.04 16:52) [9]
Ну все равно, пускай у тебя будет одна лишняя библиотека - gds32.dll в папке, но зато работаешь с нормальной базой, в отличие от CDS файлов.
← →
MV (2004-01-08 17:01) [11]Согласен! Просто бывает нужно было обеспечить ОСОБУЮ компактность. Типа "прога+данные на одной дискетке"
← →
Term (2004-01-08 17:09) [12]
> Согласен! Просто бывает нужно было обеспечить ОСОБУЮ компактность.
> Типа "прога+данные на одной дискетке"
при таком объёме и тормоза??? может тут еще в чём то дело?
← →
MV (2004-01-08 17:11) [13]Да это не у меня. Хотя можно добиться и тормозов.
← →
Term (2004-01-08 17:17) [14]!!!!! :D
← →
MV (2004-01-08 17:17) [15]А ты думал!
← →
Aleksandr (2004-01-08 17:33) [16]Ну-ка ну-ка... Будьте добры, Расскажите-ка поподробнее про эту усеченку или ссылку на нее дайте!
← →
MV (2004-01-08 17:35) [17]http://sourceforge.net/projects/firebird
http://sourceforge.net/project/showfiles.php?group_id=9028&package_id=9104
← →
MV (2004-01-08 17:37) [18]А еще - она не усеченка. Просто на одно подключение единовременно.
← →
Vlad (2004-01-08 17:45) [19]Вот еще вариант
http://yaffil.ibase.ru/news.htm
← →
MV (2004-01-08 17:46) [20]Еще:
http://yaffil.ibase.ru/download.htm
Шустрая - жуть.
← →
Aleksandr (2004-01-08 17:57) [21]Господи... Что же качать оттуда-то? Там столько их...
← →
Vlad (2004-01-08 17:58) [22]
> Aleksandr © (08.01.04 17:57) [21]
Какой ссылкой пользовались ?
← →
Aleksandr (2004-01-08 18:02) [23]Вашей. Там что-то куча разновидностей, какая нужна?
← →
Vlad (2004-01-08 18:08) [24]нужно скачать:
сборка супер/классик/персонал
Единственная папка которая нужна вам - это yaffil.em
это типа Yaffil Embedded
← →
Vlad (2004-01-08 18:11) [25]Там три библиотеки, но для работы приложения достаточно одной gds32.dll иметь в папке с приложением.
msvcr70.dll - нужна для работы IBExpert
ib_util.dll - набор полезных UDF
← →
Aleksandr (2004-01-08 18:12) [26]А через какие компоненты все это работает?
← →
Vlad (2004-01-08 18:13) [27]
> Aleksandr © (08.01.04 18:12) [26]
Все работает через стандартные дельфовые IBX (вкладка Interbase)
← →
div (2004-01-08 18:47) [28]советую так же внимательно причитать лицензию на midas )))
что б его использовать в таком режиме как используете Вы очень много килобаксов дяде Борману отвалить нужно ))))))
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.02.02;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.01 c