Bắt đầu ngayBắt đầu miễn phí

Tạo mô hình dữ liệu phân cấp

Trong bài tập này, bạn sẽ xây dựng một mô hình dữ liệu phân cấp đơn giản bằng cách tạo cây phân cấp cho tài sản CNTT. Một tài sản có thể là Hardware hoặc Software. Một tài sản Software có thể được chia thành Application hoặc Tools, v.v. Cấu trúc phân cấp được minh họa trong hình sau.

Để mô hình hóa cấu trúc này, cần một cấu trúc dữ liệu phù hợp. Cấu trúc này có thể được xây dựng bằng cách dùng mô hình dữ liệu gồm ID của bản ghi con và ParentID của bản ghi cha. Các ID là các giá trị liên tiếp từ 1 đến 10.

Nhiệm vụ của bạn là tạo bảng Equipment tương ứng và chèn các tài sản Software, MonitorMicrosoft Office vào bảng. Lưu ý bạn phải đặt đúng ID cho từng tài sản để đạt được cây phân cấp như mong muốn.

Bài tập này là một phần của khóa học

Truy vấn phân cấp và đệ quy trong SQL Server

Xem khóa học

Hướng dẫn bài tập

  • Định nghĩa các trường IDParentID kiểu INT. ID không được NULL, ParentID có thể NULL.
  • Chèn thiết bị Software vào bảng với các ID chính xác. Phần mềm này là một phần của Asset.
  • Chèn thiết bị Monitor vào bảng với các ID chính xác. Màn hình này là một phần của Hardware.
  • Chèn thiết bị Microsoft Office vào bảng với các ID chính xác. Phần mềm này là một phần của Application.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

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;
Chỉnh sửa và Chạy Mã