Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ссылка таблицы самц на себя [D7, IB6.x]


Страницы:   1 2

foriegn keys ©   (2008-12-19 08:22:00) 

Всем доброго времени суток!

есть таблица c иерархией (id integer, parent integer)
как мне добавить внешний ключ:
ALTER TABLE DETAIL ADD CONSTRAINT FK_DETAIL FOREIGN KEY (PARENT)
             REFERENCES DETAIL (ID) ON DELETE CASCADE ON UPDATE CASCADE;

так, чтобы я мог вставить потом корневой узел?
...
Т.е. вопрос в том, как мне вставить корневой узел?


Сергей М.   (2008-12-19 10:07:00) [21]

Добавь в таблицу поле LEVEL, формируй его в триггерах - для корней оно пусть будет = 0

Тогда

select *
from MyTree
where PARENT = SomeRootNodeID and LEVEL > 0


foriegn keys   (2008-12-19 09:02:00) [22]


> Сергей М. ©   (19.12.08 08:35) [1]

а как тогда оформить процедурку получения детей?


Сергей М.   (2008-12-19 08:35:00) [23]

Например, со ссылкой в PARENT на свой же ID


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо