การสร้างโมเดลข้อมูลแบบลำดับชั้น
ในแบบฝึกหัดนี้ คุณจะสร้างโมเดลข้อมูลแบบลำดับชั้นอย่างง่าย โดยจำลองโครงสร้างของสินทรัพย์ IT สินทรัพย์แต่ละรายการอาจเป็น Hardware หรือ Software ก็ได้ และ Software ยังสามารถแบ่งย่อยออกเป็น Application หรือ Tools เป็นต้น โครงสร้างลำดับชั้นแสดงไว้ในภาพด้านล่าง

ในการจำลองลำดับชั้นนี้ จำเป็นต้องใช้โครงสร้างข้อมูลที่เหมาะสม ซึ่งทำได้โดยใช้โมเดลข้อมูลที่ประกอบด้วย ID ของระเบียนลูก และ ParentID ของระเบียนแม่ โดย ID จะเป็นค่าต่อเนื่องตั้งแต่ 1 ถึง 10
งานของคุณคือสร้างตาราง Equipment และแทรกสินทรัพย์ Software, Monitor, และ Microsoft Office ลงในตาราง อย่าลืมกำหนด ID ที่ถูกต้องให้กับสินทรัพย์แต่ละรายการ เพื่อให้ได้ลำดับชั้นที่ต้องการ
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Hierarchical and Recursive Queries in SQL Server
คำแนะนำการฝึกหัด
- กำหนดฟิลด์
IDและParentIDให้มีชนิดข้อมูลเป็นINTโดยIDต้องไม่เป็นNULLส่วนParentIDสามารถเป็นNULLได้ - แทรกอุปกรณ์
Softwareลงในตารางพร้อมกำหนด ID ให้ถูกต้อง โดย Software เป็นส่วนหนึ่งของAsset - แทรกอุปกรณ์
Monitorลงในตารางพร้อมกำหนด ID ให้ถูกต้อง โดย Monitor เป็นส่วนหนึ่งของHardware - แทรกอุปกรณ์
Microsoft Officeลงในตารางพร้อมกำหนด ID ให้ถูกต้อง โดย Software นี้เป็นส่วนหนึ่งของ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;