|
|
|
|
База
данных
»»»
kingdom (11.07.00 18:10) Привет всем Delphi-ерам !!!
Есть бинарное
дерево в узлах информация (неважно какая), очень большое дерево порядка 1000
узлов. Имеет ли смысл использовать БД для представления такого дерева, и
если да, то какие компоненты лучше использовать ( типа TTreeView но только
для БД, если токое есть ?).
Спасибо за помощь !!!
»»» Mike
Goblin - mgoblin@mail.ru (12.07.00 09:13) Привет Вроде делал
тематический рубрикатор, ну узлов было около 200. Скорость была нормальная.
Использовал обычный TreeView и хранимые процедуры на сервере для
отображения/изменения
»»» Romych (12.07.00 14:45) Ну бинарное-то
дерево можно в любой таблице (хоть в парадоксовской) хранить. Поля такие
(например): 1. Ключ 2. Ссылка на левый лист/ветвь 3. Ссылка на
правый лист/ветвь 4...n прочие поля с информацией.
В первой записи
храни корень. По трем первым полям задай индексы, благо поля цифровые -
индекс будет небольшой.
А 1000 узлов - это мало, хотя все зависит от
количества информации в этих узлах. Для отображения используй тот же
TTreeView, грузи в него изначально корень и делай ему него одного потомка
(чтоб плюсик был), когда юзерь жмет на плюс (см соотв Event) создавай
реальных потомков (и с подветочками, коль нужно). И т.д.
»»»
starovoit Полностью согласен с Гоблином. Могу только добавить, опираясь
на собственный опыт многолетней работы с такими объектами: сделай два
компонента. Один для управления древовидным хранилищем, причем, неважно, в
какой БД ты его реализуешь - оракл, парадокс или еще как. Второй компонент
для отображения информации в TTreeView. Подобное разделение весьма
удобно.
-= Из конференции сайта MASTERS OF DELPHI
(http://delphi.mastak.com) =-
|
Copyright ©
"Мастера DELPHI" E-mail:
delphi@mastak.com
http://www.delphimaster.ru |
Источник получения информации: http://www.delphimaster.ru
|
|