Mỗi trạm điện được đặt tên dựa vào địa danh nơi đặt trạm.Tên trạm có thể trùng giữa các trạm trong các chi nhánh khác nhau, nhưng trong mộtchi nhánh không có trạm trùng tên.. Tất cả điện
Trang 1BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP HỒ CHÍ MINH
KHOA CÔNG NGHỆ THÔNG TIN
LIỆU
NHÓM 8 LỚP HP: DHTMDT17A –
420300391607 GVHD: ThS Nguyễn Đức Cương
Trang 2
Hồ Chí Minh, tháng 5 năm 2023
DANH SÁCH THÀNH VIÊN NHÓM 8
MSSV Họ và tên Công việc được phân công Mức độ hoàn
thành (%)
Phần A (Xây dựng mô hình ER, Vẽ lược đồ ER, 2 DELETE) Phần B (Câu 8, câu 9)
100%
Phần A (Xây dựng mô hình ER, chuyển đổi sang lược đồ quan hệ, 2 TRUY VẤN LỒNG) Phần B (Câu 1, câu 4)
100%
Phần A (Xây dựng mô hình ER, cài đặt CSDL – tạo database trên SSMS, 2 SELECT) Phần B (Câu 2, câu 3) Tổng hợp Word
100%
Phần A (Xây dựng mô hình ER, tìm kiếm dữ liệu cho các bảng, 2 UPDATE ) Phần B (Câu 5, câu 10)
100%
Trang 3Phần A (Xây dựng mô hình ER, cài
đặt CSDL – tạo database trên
SSMS, 2 SUB QUERY)
Phần B (Câu 6, câu 7)
100%
Trang 4Mục lục
Phần A: Xây dựng lược đồ ERD và tạo CSDL 1
Câu 1: Xây dựng mô hình ER 1
Câu 2: Lược đồ quan hệ 2
Câu 3: Cài đặt lược đồ quan hệ vào trong hệ quản trị CSDL SQL Server – nhập liệu mỗi bảng 2
Câu 4: Câu hỏi truy vấn 4
Phần B: Chuẩn hóa dữ liệu cá nhân 6
Câu 1 6
Câu 2 7
Câu 3 7
Câu 4 8
Câu 5 8
Câu 6 9
Câu 7 10
Câu 8 10
Câu 9 11
Câu 10 13
ẢNH MINH CHỨNG LÀM VIỆC NHÓM 15
Too long to read on your phone? Save
to read later on your computer
Save to a Studylist
Trang 5Phần A: Xây dựng lược đồ ERD và tạo CSDL
Bài 9: Hệ thống quản lý việc sử dụng điện trong một công ty điện lực tại một
thành phố Công ty có nhiều chi nhánh Mỗi chi nhánh có tên chi nhánh (khóa), địa điểm Mỗi chi nhánh quản lý việc phân phối điện từ nhiều trạm điện Một trạm điện chỉ thuộc một chi nhánh Mỗi trạm điện được đặt tên dựa vào địa danh nơi đặt trạm Tên trạm có thể trùng giữa các trạm trong các chi nhánh khác nhau, nhưng trong một chi nhánh không có trạm trùng tên
Mỗi khách hàng có thể thuê bao nhiều điện kế Một điện kế chỉ thuộc một khách hàng Thông tin về khách hàng cần có mã khách hàng (khóa), tên, địa chỉ, số điện thoại Một điện kế sử dụng điện từ một trạm điện Tất cả điện kế của một khách hàng chỉ sử dụng điện từ các trạm do một chi nhánh quản lý Số của điện kế được đặt không trùng nhau trong toàn thành phố
Mỗi định kỳ (hàng tháng), nhân viên ghi điện sẽ ghi chỉ số của điện kế Số kwh một điện kế sử dụng trong tháng mới nhất là hiệu giữa chỉ số mới nhất và chỉ số tháng trước Tất cả các chỉ số hàng tháng đều được lưu giữ Mỗi chỉ số được ghi cần kèm thêm thông tin là tên của nhân viên ghi điện
Câu 1: Xây dựng mô hình ER
Trang 6Câu 2: Lược đồ quan hệ
CHI NHÁNH (tên chi nhánh, địa điểm)
TRẠM ĐIỆN (tên trạm điện, tên chi nhánh)
KHÁCH HÀNG (mã khách hàng, tên khách hàng, địa chỉ, số điện thoại)
ĐIỆN (mã điện kế, mã khách hàng, tên trạm điện, chỉ số)KẾ
CHỈ SỐ ĐIỆN KẾ (mã chỉ số điện kế, mã điện kế, chỉ số KWH, ngày tháng năm, tên nhân viên)
Câu 3: Cài đặt lược đồ quan hệ vào trong hệ quản trị CSDL SQL Server – nhập liệu mỗi bảng
CREATE DATABASE QLSDD
GO
USE QLSDD
GO
CREATE TABLE CHINHANH
(
TENCHINHANH NVARCHAR(50) PRIMARY KEY,
DIADIEM NVARCHAR(50)
)
INSERT INTO CHINHANH (TENCHINHANH DIADIEM, )
VALUES
(N'Chi nhánh A',N'Địa điểm A'),
(N'Chi nhánh B',N'Địa điểm B'),
(N'Chi nhánh C',N'Địa điểm C'),
(N'Chi nhánh D',N'Địa điểm D'),
(N'Chi nhánh E',N'Địa điểm E')
CREATE TABLE TRAMDIEN
(
TENTRAMDIEN NVARCHAR(50)PRIMARY KEY,
TENCHINHANH NVARCHAR(50),
FOREIGNKEY (TENCHINHANH)REFERENCES
CHINHANH TENCHINHANH( )
)
INSERT INTO TRAMDIEN (TENTRAMDIEN TENCHINHANH, ) VALUES
(N'Trạm điện A1',N'Chi nhánh A'),
(N'Trạm điện A2',N'Chi nhánh A'),
Trang 7(N'Trạm điện B1',N'Chi nhánh B'),
(N'Trạm điện B2',N'Chi nhánh B'),
(N'Trạm điện C1',N'Chi nhánh C'),
(N'Trạm điện C2',N'Chi nhánh C'),
(N'Trạm điện D1',N'Chi nhánh D'),
(N'Trạm điện D2',N'Chi nhánh D'),
(N'Trạm điện D3',N'Chi nhánh D'),
(N'Trạm điện E1',N'Chi nhánh E'),
(N'Trạm điện E2',N'Chi nhánh E'),
(N'Trạm điện E3',N'Chi nhánh E')
CREATE TABLE KHACHHANG
(
MAKHACHHANG INT PRIMARY KEY,
TENKHACHHANG NVARCHAR( ),50
DIACHI NVARCHAR( ),50
SODIENTHOAI VARCHAR( )10
)
INSERT INTO KHACHHANG
(MAKHACHHANG,TENKHACHHANG DIACHI, ,SODIENTHOAI) VALUES
(1,N'Nguyễn Thanh Tùng',N'Địa chỉ A1',210205134), (2,N'Trần Thịnh Đức' N'Địa chỉ A2', ,692987958),
(3,N'Lê Thanh Huyền' N'Địa chỉ B1', ,751725992),
(4,N'Phạm Thịnh Minh',N'Địa chỉ B2',852557473),
(5,N'Phạm Nhật Vượng' N'Địa chỉ C1', ,833923519),
(6,N'Trần Đình Long' N'Địa chỉ C1', ,123750242),
(7,N'Đoàn Nguyên Đức',N'Địa chỉ C2',974497222),
(8,N'Mai Kiều Liên',N'Địa chỉ D1',619060063),
(9,N'Hồ Hùng Anh' N'Địa chỉ D2', ,695619995),
(10,N'Nguyễn Đăng Quang' N'Địa chỉ D2', ,0367590752), (11,N'Phạm Thanh Hưng' N'Địa chỉ D3', ,485582802), (12,N'Lê Hoàng Quân',N'Địa chỉ E1',711711292),
(13,N'Nguyễn Thanh Phương',N'Địa chỉ E2',508516181), (14,N'Trần Kim Thành' N'Địa chỉ E3', ,0152954429)
CREATE TABLE DIENKE
(
MADIENKE INT PRIMARY KEY,
MAKHACHHANG INT,
TENTRAMDIEN NVARCHAR( ),50
CHISO FLOAT,
FOREIGNKEY (MAKHACHHANG)REFERENCES KHACHHANG MAKHACHHANG( ),
FOREIGN KEY (TENTRAMDIEN) REFERENCES TRAMDIEN TENTRAMDIEN( )
)
Trang 8INSERT INTO DIENKE
(MADIENKE,MAKHACHHANG TENTRAMDIEN CHISO, , )
VALUES
(1 5, ,N'Trạm điện C1',2500),
(2 2, ,N'Trạm điện A2',5000),
(3 8, ,N'Trạm điện D1',1800),
(4 14, ,N'Trạm điện E3',3800),
(5 11, ,N'Trạm điện D3',7600),
(6 9, ,N'Trạm điện D2',1000)
CREATE TABLE CHISODIENKE
(
MACHISODIENKE INT PRIMARY KEY,
MADIENKE INT,
CHISOKWH FLOAT,
NGAYTHANGNAM DATE,
TENNHANVIEN NVARCHAR( ),50
FOREIGNKEY (MADIENKE)REFERENCES DIENKE(MADIENKE) )
INSERT INTO CHISODIENKE
(MACHISODIENKE,MADIENKE CHISOKWH NGAYTHANGNAM TENNHANV, , , IEN)
VALUES
(1 6, ,1000,'2023-05-01' N'Lê Thu Thủy', ),
(2 2, ,5000,'2023-04-01' N'Lê Anh Tuấn', ),
(3 5, ,7600,'2023-04-02' N'Lê Anh Tuấn', ),
(4 4, ,3800,'2023-02-01' N'Lê Thu Thủy', ),
(5 1, ,2500,'2023-01-09' N'Lê Thu Thủy', ),
(6 3, ,1800,'2023-04-06' N'Lê Anh Tuấn', )
Câu 4: Câu hỏi truy vấn
2 SELECT
2 UPDATE
Trang 9/*Cập nhật thông tin mới của khách hàng 14*/
2 DELETE
2 TRUY VẤN LỒNG
2 SUB QUERY
Trang 10Phần B: Chuẩn hóa dữ liệu cá nhân
Câu 1: Cho lược đồ CSDL
Q(TENTAU, LOAITAU, MACHUYEN, LUONGHANG, BENCANG, NGAY )
F = { TENTAU→ LOAITAU
MACHUYEN→ TENTAU,LUONGHANG
TENTAU,NGAY→BENCANG,MACHUYEN}
a) Hãy tìm các tập phủ tối thiểu của F
b) Tìm tất cả các khóa của Q
Giải câu a:
F = { TENTAU→LOAITAU
MACHUYEN→TENTAU
MACHUYEN→ LUONGHANG
TENTAU,NGAY→ BENCANG
TENTAU,NGAY→MACHUYEN }
Ta có:
MACHUYEN→TENTAU,TENTAU→LOAITAU
MACHUYEN→LOAITAU
TENTAU,NGAY→BENCANG
(TENTAU) + = TENTAU,LOAITAU, không chứa BENGANG
(NGÀY) + = NGAY, không chứa BENCANG
TENTAU,NGAY→BENCANG
TENTAU,NGAY→MACHUYEN
(TENTAU) + = TENTAU, LOAITAU, không chứa MACHUYEN
(NGAY) + = NGAY, không chứa MACHUYEN
TENTAU,NGAY→MACHUYEN
Tập phủ tối thiểu F:
F = { TENTAU -> LOAITAU
MACHUYEN→TENTAU
MACHUYEN→ LUONGHANG
TENTAU,NGAY→ BENCANG
Trang 11TENTAU,NGAY→MACHUYEN }
Giải câu b: khoá của Q
{ TENTAU, NGAY, MACHUYEN }
{ TENTAU, NGAY, BENCANG }
{ TENTAU, NGAY, LUONGHANG }
{ TENTAU, NGAY, LOAITAU }
Câu 2: Q(A,B,C,D,E,G)
Cho F={AB C; C A; BC D; ACD B; D EG; BE C; CG BD; CE AG} X={B,D}, X+=?
Y={C,G}, Y+=?
Giải X+
X0 = {B,D}
Xét D EG vì D X0, suy ra X1 = {B,D,E,G}, loại D EG
Xét BE C vì BE X1, suy ra X2 = {B,C,D,E,G}, loại BE C
Xét C A vì C X2, suy ra X3 = {A,B,C,D,E,G}, loại C A
Xét các vế còn lại đều nằm trong X3
Vậy: X+ = X3 = {A,B,C,D,E,G}
Giải Y+
Y0 = {C,G}
Xét C A vì C Y0, suy ra Y1 = {A,C,G}, loại C A
Xét CG BD vì CG Y1, suy ra Y2 = {A,B,C,D,G}, loại CG BD
Xét D EG vì D Y2, suy ra Y3 = {A,B,C,D,E,G}, loại D EG
Xét các vế còn lại đều nằm trong Y3
Vậy: Y+ = Y3 = {A,B,C,D,E,G}
Câu 3: Cho lược đồ quan hệ Q và tập phụ thuộc hàm F
a) F={AB E; AG I; BE I; E G; GI H} Chứng minh rằng AB GH b) F={AB C; B D; CD E ; CE GH; G A} Chứng minh rằng AB E; AB G
Giải câu a:
Ta tìm bao đóng của AB
AB+ = {ABEGHI}
Trang 12AB GH là thành viên của F+ vì GH {ABEGHI}
Vậy nên ta chứng minh được AB GH
Giải câu b:
Ta tìm bao đóng của AB
AB+ = {ABCDEGH}
AB E là thành viên của F+ vì E {ABCDEGH}
AB G là thành viên của F+ vì G {ABCDEGH}
Vậy nên ta chứng minh được AB E và AB G
Câu 4: Cho quan hệ r
Trong các phụ thuộc hàm sau đây, PTH nào không thoả:
A → B; A → C; B → A; C → D ; D → C; D → A
Giải:
Các phụ thuộc không thỏa là
A→B Vì t2[A]= t4[A] nhưng t2[B] khác t4[B]
A→C Vì t2[A]= t4[A] nhưng t2[C] khác t4[C]
Câu 5: Hãy tìm tất cả các khóa cho lược đồ sau:
Q(BROKER,OFFICE,STOCK,QUANTITY, INVESTOR,DIVIDENT)
F = {STOCK→DIVIDENT; INVESTOR→BROKER; INVESTOR,STOCK
→QUANTITY; BROKER→OFFICE}
Giải:
TN = {STOCK, INVESTOR}
TG = {BROKEN}
TN+ = {STOCK, INVESTOR}+ = {STOCK, INVESTOR, DIVIDENT, BROKEN, OFFICE, QUANTITY}
Vậy: {STOCK, INVESTOR} là khóa của quan hệ
Trang 13Câu 6: Xét lược đồ quan hệ và tập phụ thuộc dữ liệu:
Q(C,T,H,R,S,G)
F = { f1: C→ T; f2: HR→ C; f3: HT→ R; f4: CS→ G; f5: HS→R}
Tìm phủ tối thiểu của F
Giải:
Bước 1: Tách các quan hệ có vế phải chứa 2 thuộc tính
Bước 2: Xét các quan hệ có vế trái chứa 2 phần tử trở lên xem có dư thừa thuộc tính nào không Nếu dư thì bỏ thuộc tính dư
Xét HR→ C, có:
H+ = {H}
R+ = {R}
Không chứa C => Không dư
Xét HT→ R, có:
H+ = {H}
T+ = {T}
Không chứa R => Không dư
Xét CS→ G, có:
C+ = {CT}
S+ = {S}
Không chứa G => Không dư
Xét HS→ R, có:
H+ = {H}
S+ = {S}
Không chứa R => Không dư
Bước 3: Loại bỏ thử từng quan hệ xem quan hệ nào dư
Loại C→T, có:
C+ = {C} Không chứa T nên không loại được
Loại HR→C, có:
HR+ = {HR} Không chứa C nên không loại được
Loại HT→R, có:
HT+ = {HT} Không chứa R nên không loại được
Trang 14Loại CS→G, có:
CS+ = {CST} Không chứa G nên không loại được
Loại HS→R, có:
HS+ = {S} Không chứa R nên không loại được
Vậy giữ nguyên F
Câu 7: Q(A,B,C,D,E,H)
F={A → E; C → D; E → DH}
Chứng minh K={A,B,C} là khóa duy nhất của Q
Giải:
Cách 1:
TN = {A,B,C}
TG = {E}
Xi Xi TN (Xi TN)+ Siêu khóa Khóa
Cách 2: Áp dụng hệ quả giải thuật tìm khóa của lược đồ quan hệ
TD = { D, H} K= Ø
TN = {A,B,C} K
K={A,B,C} là khóa duy nhất của Q
Câu 8: Q(A,B,C,D)
F={AB→C; D→B; C→ABD}
Hãy tìm tất cả các khóa của Q
Giải:
VT :ABCD
VP:ABCD
TN:{ }
TG:{ABCD}
Trang 15Vậy K1 = {AB}; K2 = {AD}; K3={C} là các khóa
Câu 9: Q(A,B,C,D,E,G)
F={AB→C;C →A;BC→D;ACD→B;D→EG;BE→C;CG→BD;CE→G} Hãy tìm tất cả các khóa của Q
Giải:
VT : ABCDEG
VP:ABCDEG
TN: { }
TG:{ABCDEG}
Xi (TN U Xi) (TN U Xi)+ Siêu
khóa Khóa
Trang 16E E E
Trang 17CDG CDG ABCDEG CDG
ABCD ABCD ABCDEG ABCD ABCE ABCE ABCDEG ABCE ABCG ABCG ABCDEG ABCG ABDE ABDE ABCDEG ABDE ABDG ABDG ABCDEG ABDG ABEG ABEG ABCDEG ABEG ACDE ACDE ABCDEG ACDE BCDE BCDE ABCDEG BCDE BCDG BCDG ABCDEG BCDG BCEG BCEG ABCDEG BCEG BDEG BDEG ABCDEG BDEG CDEG CDEG ABCDEG CDEG ABCDE ABCDE ABCDEG ABCDE ABCDG ABCDG ABCDEG ABCDG ABCEG ABCEG ABCDEG ABCEG ABDEG ABDEG ABCDEG ABDEG ACDEG ACDEG ABCDEG ACDEG BCDEG BCDEG ABCDEG BCDEG
Trang 18G
ABCDEG ABCDEG ABCDE
G
Câu 10: Xác định phủ tối thiểu của tập phụ thuộc hàm sau:
a) Q(A,B,C,D,E,G),
F={AB→C; C→A; BC→D; ACD→B; D→EG; BE→C; CG→BD; CE→AG} b) Q(A,B,C)
F={A→B, A→C, B→A, C→A, B→C}
Giải câu a:
Bước 1: Loại bỏ phụ thuộc hàm không cần thiết dựa trên quy tắc loại bỏ phụ thuộc hàm trùng lặp:
D→EG (loại bỏ)
Bước 2: Áp dụng quy tắc loại bỏ phụ thuộc hàm đúng phụ thuộc hàm:
AB→C
C→A
BC→D
ACD→B
BE→C
CE→AG
CG→BD
Bước 3: Loại bỏ phụ thuộc hàm không cần thiết dựa trên quy tắc loại bỏ thuộc tính không cần thiết:
AB→C (loại bỏ C, vì C đã xuất hiện trong phụ thuộc hàm khác)
C→A (loại bỏ A, vì A đã xuất hiện trong phụ thuộc hàm khác)
BC→D (không cần loại bỏ)
ACD→B (không cần loại bỏ)
BE→C (không cần loại bỏ)
CE→AG (không cần loại bỏ)
CG→BD (không cần loại bỏ)
Bước 4: Tổng hợp tất cả các phụ thuộc hàm sau quá trình loại bỏ:
F' = {BC→D; ACD→B; BE→C; CE→AG; CG→BD}
Trang 19Phủ tối thiểu của tập phụ thuộc hàm F là F'={BC→D; ACD→B; BE→C; CE→AG; CG→BD}
Giải câu b:
Bước 1: Áp dụng quy tắc loại bỏ phụ thuộc hàm trùng lặp:
A→B (loại bỏ)
Bước 2: Áp dụng quy tắc loại bỏ phụ thuộc hàm đúng phụ thuộc hàm:
A→C
B→A
C→A
B C
Bước 3: Loại bỏ phụ thuộc hàm không cần thiết dựa trên quy tắc loại bỏ thuộc tính không cần thiết:
A→C (loại bỏ C, vì C đã xuất hiện trong phụ thuộc hàm khác)
B→A (loại bỏ A, vì A đã xuất hiện trong phụ thuộc hàm khác)
C→A (loại bỏ A, vì A đã xuất hiện trong phụ thuộc hàm khác)
B C (loại bỏ C, vì C đã xuất hiện trong phụ thuộc hàm khác)
Bước 4: Tổng hợp tất cả các phụ thuộc hàm sau quá trình loại bỏ:
F' = {}
Phủ tối thiểu của tập phụ thuộc hàm F là F' = {}
ẢNH MINH CHỨNG LÀM VIỆC NHÓM