Я ищу способ заполнения существующей таблицы parent-children:
Tabelle: Categories
-------------------
Columns: CategoryID
ParentID
Я обновляю свой sql-сервер до 2008 R2.А теперь я добавил новый тип имя-иерархии для оптимизации производительности.
Так что я думаю написать sql-триггер, чтобы реорганизовать столбец иерархии, когда будет вызывать вставка / обновление ... но яЯ не специалист по SQL, поэтому я надеюсь, что кто-то может мне помочь.
Тестовый запрос: (мне нужно добавить строку при каждом рекурсивном вызове)
;WITH CTE (CategoryID, ParentID, HierarchyString) AS (
SELECT CategoryID, ParentID, HierarchyString = CAST(ParentID AS VARCHAR(8000)) + '/' + CAST(CategoryID AS VARCHAR(8000))
FROM Categories
UNION ALL
SELECT r.CategoryID, r.ParentID, HierarchyString = CAST(p.CategoryID AS VARCHAR(8000)) + '/' + CAST(r.ParentID AS VARCHAR(8000))
FROM Categories r
INNER JOIN CTE p ON r.CategoryID = p.ParentID
)
SELECT * FROM CTE;