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

Вниз

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

 
db_noob   (2006-07-19 21:16) [0]

Есть некое дерево (уровней порядка 3-4, но это не особо важно), которое желательно хранить в БД и при загрузке ПО подгружать в TreeView-компонент.

Прошу совета: Как лучше хранить дерево? Как лучше его грузить? Какой TreeView лучше при этом использовать?

Гланый критерий оценки: скорость работы сей конструкции.

з.ы. на данный момент решил хранить в след. виде (таблица)
| Имя ветки | ID | ParentID |

Самый простой вариант )


 
palva ©   (2006-07-19 21:47) [1]

Еще надо поле индекса добавить, чтобы сохранить порядок узлов. Конечно, это будет не тот индекс, который в TreeView, а тот по которому ORDER BY


 
PSPF2003 ©   (2006-07-20 07:59) [2]

Есть на Delphi World примерчик.
В книге Фленова D2005.

Ищи в поискавиках "Древовидные структуры в базах данных "


 
PSPF2003 ©   (2006-07-20 08:01) [3]

Есть на Delphi World примерчик.
В книге Фленова D2005.

Ищи в поискавиках "Древовидные структуры в базах данных "


 
Ega23 ©   (2006-07-20 10:05) [4]

ID, int, primary key
ParID, int, null,  foreign key on (ID)
aName varchar(сколько_надо)
........

Компонент... Я свой писал. TDBTreeView.


 
Desdechado ©   (2006-07-20 11:38) [5]

Замыкание дерева на одну таблицу - самый популярный путь. Но есть и другие пути. Встречал статьи по этому поводу. Думаю, стоит поискать в инете по словам.
Способ лучше выбирать, исходя из задач, а не из "что знаю" или "что чаще используют другие".


 
SergP.   (2006-07-20 11:48) [6]

> Какой TreeView лучше при этом использовать?


Можно обычный использовать.
Только не создавать там сразу все дерево, а досоздавать узлы по мере необходимости...

Т.е. создаешь узлы верхнего уровня, и у каждого такого узла создаешь по одному "левому" дочернему узлу, а в OnExpanding проверяешь наличие этих "левых" узлов. Удаляешь их и создаешь нужные узлы.


 
Reindeer Moss Eater ©   (2006-07-20 12:02) [7]

"Все уже украдено до нас"

TVirtualDBTree


 
ORMADA ©   (2006-07-20 12:05) [8]

а мне DbTreeFilter http://www.miross.ru/dbt/ нравиться
нормальная быстрая им простая вещь.. думаю аналогичная той что Ega23 написал или TVirtualDBTree



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

Форум: "Начинающим";
Текущий архив: 2006.08.06;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.011 c
2-1152862577
NaLom
2006-07-14 11:36
2006.08.06
listview глюк


2-1153201225
zorik
2006-07-18 09:40
2006.08.06
использование EhLib


15-1152129575
Petr V. Abramov
2006-07-05 23:59
2006.08.06
Птичку жалко :)


15-1152450316
анка
2006-07-09 17:05
2006.08.06
Стоит ли ехать в Питер во время Саммита?


15-1152394199
PATRIOT
2006-07-09 01:29
2006.08.06
как получить нормальное время ?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский