Загрузка дерева из БД

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Аватара пользователя
Игорь Акопян
Сообщения: 1419
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

12 май 2006, 11:30

Лелик,
А енсли нода уже существует?
имеется ввиду, что дерево построено, а что-то добавили?
Как вариант, при вставке можно тупо перестроить дерево...
Изображение
Аватара пользователя
LAngel
Сообщения: 277
Зарегистрирован: 30 мар 2005, 08:19
Откуда: Ульяновск
Контактная информация:

12 май 2006, 13:38

зачем же перестраивать...
в каждой ноде есть Data - так и пихать туда всю необходимую инфу.
С уважением, Lost Angel...
Аватара пользователя
Naeel Maqsudov
Сообщения: 2551
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

18 май 2006, 09:20

Не знаю, верно ли делаю, но обычно, для хранения подчиненных данных (оно же, деревьев), использую просто ссылку на родителя.
при выборке - фильтруем по полю parent, сначала по пустому (ну или можно -1 задать на некоторых базах)
потом пробегаем по сету и для каждого элемента делаем выборку по parent=id родителя и т.д. пока
выборка не будет пустая
Если БД - Oracle to все дерево выбирается за 1 раз одним select-ом.
см. конструкции CONNECT и START WITH
YurikGL
Сообщения: 142
Зарегистрирован: 16 фев 2005, 21:54
Откуда: Уфа
Контактная информация:

20 май 2006, 17:37

1) http://www.ibase.ru/develop.htm#tree - дофига статей по деревьям...

2)
Республика Беларусь
- Минская область
- - г. Минск
- - - 5 магазинов
- - г. Заславль
- - - 15 магазинов
Не проще создать 4 таблицы. В первой хранятся республики, во второй - области, в третьей - города, в четвертой магазины?
vunder
Сообщения: 74
Зарегистрирован: 10 май 2006, 12:19
Откуда: Санкт-Петербург
Контактная информация:

21 май 2006, 10:14

YurikGL писал(а):Не проще создать 4 таблицы. В первой хранятся республики, во второй - области, в третьей - города, в четвертой магазины?
Для конкретного примера - проще, но если потребуется больший уровень вложености, то нет смыска клепать кучу таблиц
YurikGL
Сообщения: 142
Зарегистрирован: 16 фев 2005, 21:54
Откуда: Уфа
Контактная информация:

21 май 2006, 19:14

Для конкретного примера - проще, но если потребуется больший уровень вложености, то нет смыска клепать кучу таблиц
В данном конкретном примере уровень вложенности ограничен с точки зрения логики.
Лелик_1044
Сообщения: 339
Зарегистрирован: 22 ноя 2004, 19:15
Откуда: Минск
Контактная информация:

10 июн 2006, 16:31

Проблему решил построением динмаического дерева.
Объясню сейчас, есть таблица сожержащая 4000000 записей.
Уровень ноды колеблется.
Всякие проверки сказываются на времени. У меня мощная машина и то видно что думает, у заказчика 2-3 пны.
Просто набрать исходники может и любая обезьяна, а придумать и отладить не каждый человек.
GeorgeSoca
Сообщения: 0
Зарегистрирован: 12 окт 2015, 04:09
Откуда: Guam
Контактная информация:

13 окт 2015, 03:37

Pa vart webbhotell kan ni kanna er trygg! Forutom att vi anvander oss av speglade harddiskar pa alla vara servrar sa tar vi aven backup tva ganger per dygn pa separata servrar. Vi anvander oss av ISPmanager som kontrollpanel. ISPmanager ar en kontrollpanel som gor det enkelt att administrera sin hemsida. Hos oss kan ni lagga hur manga hemsidor och domaner ni onskar under ett webbhotellskonto.
virtual hosting
Ответить