階層型データモデルを作成する
この演習では、IT 資産の階層を作成して、シンプルな階層型データモデルを構築します。資産は Hardware または Software のいずれかです。Software 資産はさらに Application や Tools などに分解できます。階層は次の図に示されています。

この階層をモデル化するには、適切なデータ構造が必要です。子レコードの ID と親レコードの ParentID で構成されるデータモデルを使うことで、この構造を実現できます。ID は 1 から 10 までの連番です。
あなたのタスクは、対応する Equipment テーブルを作成し、資産 Software、Monitor、Microsoft Office を正しい階層となるようにテーブルへ挿入することです。目的の資産階層を実現するために、各資産に正しい ID を設定する必要がある点に注意してください。
この演習はコースの一部です
SQL Server における階層型クエリと再帰クエリ
演習の手順
- フィールド
IDとParentIDを型INTで定義します。IDはNULL不可、ParentIDはNULL可とします。 Softwareを正しい ID でテーブルに挿入します。Software はAssetの一部です。Monitorを正しい ID でテーブルに挿入します。Monitor はHardwareの一部です。Microsoft Officeを正しい ID でテーブルに挿入します。このソフトウェアはApplicationの一部です。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
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;