Иерархические справочники с линейным временем доступа
Категория реферата: Рефераты по информатике, программированию
Теги реферата: реферат книга, контрольные по геометрии
Добавил(а) на сайт: Эдит.
Предыдущая страница реферата | 1 2 3 4 5 6 | Следующая страница реферата
UPDATE DEPARTMENT SET Path = (SELECT '1.2.' + ISNULL(CAST(MAX(D.Position) + 1 AS VARCHAR), '1') FROM DEPARTMENT D WHERE D.Path LIKE '1.2.%' AND D.Path NOT LIKE '1.2.%.%'), Position = (SELECT ISNULL(MAX(D.Position) + 1, '1') FROM DEPARTMENT D WHERE D.Path LIKE '1.2.%' AND D.Path NOT LIKE '1.2.%.%') WHERE Path = '1.1' |
Второй командой мы обновим все идентификаторы Path для дочерних элементов:
UPDATE DEPARTMENT SET Path=STUFF(Path, 1, 3, '1.2.4') WHERE Path LIKE '1.1.%' |
Так же, как и в случае с удалением, мы можем построить триггер, который будет гарантированно адаптировать дочерние ссылки, а также следить за правильностью поля Position:
CREATE TRIGGER UPDATE_NODES_TR ON DEPARTMENT AFTER UPDATE AS DECLARE @OldParentPath VARCHAR(180), @NewParentPath VARCHAR(180), @ParentPosition INT, @RealParentPosition INT BEGIN IF UPDATE(Path) Рекомендуем скачать другие рефераты по теме: сочинение рассуждение на тему, уголовное право шпаргалки. Предыдущая страница реферата | 1 2 3 4 5 6 | Следующая страница реферата Поделитесь этой записью или добавьте в закладкиКатегории: |