Kom igångKom igång gratis

Skapa en hierarkisk datamodell

I den här övningen skapar du en enkel hierarkisk datamodell för IT-tillgångar. En tillgång kan antingen vara Hardware eller Software. En Software-tillgång kan delas upp i Application eller Tools och så vidare. Hierarkin visas i bilden nedan.

För att modellera den här hierarkin behövs en lämplig datastruktur. Strukturen byggs upp med en datamodell som består av det underordnade postens ID och det överordnade postens ParentID. ID-värdena är på varandra följande heltal från 1 till 10.

Din uppgift är att skapa tabellen Equipment och infoga tillgångarna Software, Monitor och Microsoft Office i tabellen. Tänk på att du måste ange rätt ID:n för varje tillgång för att uppnå den önskade hierarkin.

Den här övningen är en del av kursen

Hierarkiska och rekursiva frågor i SQL Server

Visa kurs

Övningsinstruktioner

  • Definiera fälten ID och ParentID av typen INT. ID får inte vara NULL, medan ParentID kan vara NULL.
  • Infoga utrustningen Software i tabellen med rätt ID:n. Programvaran är en del av Asset.
  • Infoga utrustningen Monitor i tabellen med rätt ID:n. Bildskärmen är en del av Hardware.
  • Infoga utrustningen Microsoft Office i tabellen med rätt ID:n. Den här programvaran är en del av Application.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

CREATE TABLE Equipment (   
    -- Define ID and ParentID 
	___ ___ NOT NULL,
    Equipment VARCHAR(255) NOT NULL,
    ___ ___ 
);

INSERT INTO Equipment VALUES (1,'Asset',NULL);
INSERT INTO Equipment VALUES (2,'Hardware',1);
-- Insert the type Software
INSERT INTO Equipment VALUES (___,____,1);
INSERT INTO Equipment VALUES (4,'Application',3);
INSERT INTO Equipment VALUES (5,'Tool',3);
INSERT INTO Equipment VALUES (6,'PC',2);
-- Insert the type Monitor 
INSERT INTO Equipment VALUES (___,'Monitor',2);
INSERT INTO Equipment VALUES (8,'Phone',2);
INSERT INTO Equipment VALUES (9,'IPhone',8);
-- Insert the type Microsoft Office 
INSERT INTO Equipment VALUES (___,___,4);

SELECT * 
FROM Equipment;
Redigera och kör kod