始める無料で始める

階層型データモデルを作成する

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

この階層をモデル化するには、適切なデータ構造が必要です。子レコードの ID と親レコードの ParentID で構成されるデータモデルを使うことで、この構造を実現できます。ID は 1 から 10 までの連番です。

あなたのタスクは、対応する Equipment テーブルを作成し、資産 SoftwareMonitorMicrosoft Office を正しい階層となるようにテーブルへ挿入することです。目的の資産階層を実現するために、各資産に正しい ID を設定する必要がある点に注意してください。

この演習はコースの一部です

SQL Server における階層型クエリと再帰クエリ

コースを見る

演習の手順

  • フィールド IDParentID を型 INT で定義します。IDNULL 不可、ParentIDNULL 可とします。
  • 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;
コードを編集して実行