Вы должны создать таблицу, как вы говорите, чтобы сохранить структуру
create table graph (
ID int not null,
COMPONENT char(2) not null,
ParentComponent int)
Создать первичный ключ для столбца ID.И внешний ключ для parentComponent, ссылающийся на ту же таблицу со столбцом ID.
Затем можно создать набор UDF и хранимую процедуру для получения значений или для печати древовидной структуры.Например, UDF для
- Извлечение корневого узла
- Количество узлов в дереве
- Количество сыновей данного узла
- Родительский идентификатор данного узла.
И Хранимые процедуры для
- Возвращает таблицу со строками, упорядоченными по определенному обходу дерева (сначала в ширину, в глубину)
Вы можете даже создать проверочные ограничения, чтобы предоставить правила для создания графика.Например, корневым узлом является 0, никто другой не может иметь этот идентификатор, а это самое низкое значение.
Какие операции необходимо выполнить на графике?