Tworzenie tabeli za pomocą hierarchyid, typ danych
Poniższy przykład tworzy tabela o nazwie EmployeeOrg, który zawiera dane pracowników wraz z ich hierarchii raportowania.Przykład tworzy tabela w AdventureWorks2008R2 bazy danych, ale jest opcjonalny.Aby zachować przykład prostego, tabela zawiera tylko pięć kolumn:
OrgNodejest hierarchyid kolumna, która przechowuje hierarchicznej relacji.
OrgLeveljest to kolumna obliczana na podstawie OrgNode kolumny, która przechowuje każdego poziom węzłów w hierarchii.Będzie używany dla indeksu pierwszego szerokość.
EmployeeID zawiera numer identyfikacyjny pracownika typowy używany dla aplikacji, takich jak listy płac.W rozwoju nowych aplikacji, można użyć aplikacji OrgNode kolumna i to osobne EmployeeID kolumna nie jest potrzebna.
EmpName zawiera nazwisko pracownika.
Title zawiera tytuł pracownika.
Aby utworzyć tabela EmployeeOrg
W oknie Edytora kwerend, uruchom następujący kod w celu utworzenia EmployeeOrg tabela.Określanie OrgNode kolumna jako klucz podstawowy z indeks klastrowany zostanie utworzony indeks pierwszego głębokość:
USE AdventureWorks2008R2 ; GO CREATE TABLE HumanResources.EmployeeOrg ( OrgNode hierarchyid PRIMARY KEY CLUSTERED, OrgLevel AS OrgNode.GetLevel(), EmployeeID int UNIQUE NOT NULL, EmpName varchar(20) NOT NULL, Title varchar(20) NULL ) ; GOUruchom poniższy kod, aby utworzyć indeks złożony na OrgLevel i OrgNode kolumny do obsługi wydajne wyszukiwanie pierwszego szerokość:
CREATE UNIQUE INDEX EmployeeOrgNc1 ON HumanResources.EmployeeOrg(OrgLevel, OrgNode) ; GO
Tabela jest teraz gotowy do danych.Kolejnym zadaniem będzie wypełnić tabela przy użyciu metod hierarchicznej.