Tải bản đầy đủ (.pdf) (12 trang)

BÀI TẬP LỚN CƠ SỞ DỮ LIỆU

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (450.49 KB, 12 trang )

lOMoARcPSD|11346942

Trường Đại học Sư phạm Kỹ thuật Hưng Yên
Khoa CÔNG NGHỆ THÔNG TIN
---------------- -----------------

BÀI TẬP LỚN
CƠ SỞ DỮ LIỆU

Giảng viên

: Phạm Minh Chuẩn

Sinh viên thực hiện
MaSV
Lớp

: Nguyễn Thân Thương
:10120168
:125207

Hưng Yên, tháng 12năm 2021

NHẬN XÉT

Nhận xét của giảng viên 1 đánh giá:

1


lOMoARcPSD|11346942



.................................................................................................................................................. ..
................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
Ký và ghi họ tên

Nhận xét của giảng viên 2 đánh giá:
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
Ký và ghi họ tên

2


lOMoARcPSD|11346942

LỜI CAM ĐOAN

Em xin cam đoan bài tập lớp môn Cơ sở dũ liệu đề 15 là sản phẩm của bản thân.
Những phần sử dụng tài liệu tham khảo trong bài tập lớn đã được nêu rõ trong phần tài
liệu tham khảo. Các số liệu, kết quả trình bày trong bài tập lớn là hoàn toàn trung thực,
nếu sai em xin chịu hoàn toàn trách nhiệm và chịu mọi kỷ luật của bộ môn và nhà
trường đề ra.

Hưng yên, ngày … tháng … năm 2021
Sinh viên

Nguyễn Thân Thương

MỤC LỤ

3


lOMoARcPSD|11346942

Giảng viên..................................................................................................................... 1
: Phạm Minh Chuẩn....................................................................................................1
Sinh viên thực hiện.......................................................................................................1
: Nguyễn Thân Thương...............................................................................................1
MaSV............................................................................................................................. 1
:10120168………………………………………………………………………………1
Lớp................................................................................................................................ 1
:125207.......................................................................................................................... 1
NHẬN XÉT................................................................................................................... 2
LỜI CAM ĐOAN..........................................................................................................3
MỤC LỤC..................................................................................................................... 4
DANH MỤC HÌNH.......................................................................................................5
CHƯƠNG I : Đề bài Bài tập lớn số 15..........................................................................6
CHƯƠNG II : Bài làm...................................................................................................7
2.1 : Mô tả về dữ liệu của cơ sở dữ liệu (CSDL) trong hệ thống quản lý bán hàng:......7
2.1.1 (a) Hãy xây dựng mô hình thực thể - liên kết cho hệ thống trên...........................7
2.1.2 (b) Hãy chuyển mơ hình thực thể - liên kết đã xây dựng ở ý a sang mơ hình quan
hệ (Xác định các ràng buộc khóa chính, khóa ngoại).....................................................7

2.2 Cho lược đồ cơ sở dữ liệu quản lý bán hàng với 4 lược đồ quan hệ , sau đó Sử
dụng ngơn ngữ truy vấn có cấu trúc (SQL) để thực hiện các yêu cầu............................8
2.2.1 (a) Hãy tạo cấu trúc bảng, các ràng buộc khóa chính, khóa ngoại đối với 4 bảng
đã mô tả ở trên; lựa chọn các kiểu dữ liệu phù hợp cho các cột trong mỗi bảng;...........8
2.2.2 (b) Hãy chèn dữ liệu phù hợp vào 4 bảng (mỗi bảng ít nhất 3 dịng (bản ghi)).....8
GO................................................................................................................................... 9
2.2.3 (c) Hãy hiển thị thơng tin về các hãng sản xuất có tên là ‘Hải Long’;..................9
2.2.4 (d) Hãy hiển thị tổng tiền lương cơ bản của từng nhân viên: MaNV, HotenNV,
[Tổng tiền lương cơ bản.................................................................................................9
2.2.5 (e) Hãy hiển thị tổng tiền lương cơ bản của từng nhân viên: MaNV, HotenNV,
[Tổng tiền lương cơ bản].............................................................................................10

4


lOMoARcPSD|11346942

DANH MỤC HÌ
Hình 1. 1 mơ hình thực thể - liên c ủa kêết hệ thôếng qu ản lý bán hàng c ủa các khoa .......................7Y

No table of figures entries found.

5


lOMoARcPSD|11346942

CHƯƠNG I : Đề bài Bài tập lớn số 15
1.1. Cho một hệ thống quản lý bán hàng với các dữ liệu được mô tả như sau:
Thông tin về hãng sản xuất bao gồm: Mã hãng, tên hãng, địa chỉ, số điện thoại

Mỗi hãng sản xuất có thể sản xuất nhiều mặt hàng, thông tin về các mặt hàng bao gồm:
Mã mặt hàng, tên mặt hàng, loại mặt hàng, Đơn vị tính;
Thơng tin về hóa đơn bán hàng bao gồm: Mã hóa đơn, tên khách hàng, địa chỉ khách
hàng, ngày bán, Người bán;
Mỗi hóa đơn bán hàng bao gồm nhiều chi tiết đơn hàng ứng với các mặt hàng khác
nhau;
Thông tin về chi tiết hóa đơn bao gồm: số lượng bán, đơn giá bán;
a. Hãy xây dựng mơ hình thực thể - liên kết cho hệ thống trên;
b. Hãy chuyển mơ hình thực thể - liên kết đã xây dựng ở ý a sang mơ hình quan hệ
(Xác định các ràng buộc khóa chính, khóa ngoại)
Bài 1.2 Cho CSDL quản lý hàng hóa bao gồm các bảng sau:
HangHoa(MaHH, TenHH, LoaiHH, DonVi, MaHSX);
HangSX(MaHSX, TenHSX, DChi);
HoaDon(MaHD, NgayHD, TenKH);
CTHoaDon(MaHD, MaHH, SLBan, GiaBan);
Chú ý: Những thuộc tính bơi đậm và gạch chân là khóa của bảng;
Sử dụng ngơn ngữ truy vấn có cấu trúc (SQL) để thực hiện các yêu cầu sau:
a. Hãy tạo cấu trúc bảng, các ràng buộc khóa chính, khóa ngoại đối với 4 bảng đã mô
tả ở trên; lựa chọn các kiểu dữ liệu phù hợp cho các cột trong mỗi bảng;
b. Hãy chèn dữ liệu phù hợp vào 4 bảng (mỗi bảng ít nhất 3 dịng (bản ghi));
c. Hãy hiển thị thơng tin về các hãng sản xuất có tên là ‘Hải Long’;
d. Hãy hiển thị các thông tin bao gồm: MaHH, TenHH, MaHD, LoaiHH, SLBan,
GiaBan của tất cả các hàng hóa đã được bán.
e. Hãy hiển thị tổng số mặt hàng với từng hãng sản xuất: MaHSX, [Số mặt hàng]
Bài 1.3. Cho một lược đồ quan hệ R = (U, F), U = ABCDEGHM, F = {BDE -> AG,
CE -> AH, D -> CG, GE -> M }
a. Hãy xác định 1 khóa của lược đồ (liệt kê chi tiết các bước thực hiện)
b. Lược đồ R thỏa mãn dạng chuẩn cao nhất nào? Vì sao?
6



lOMoARcPSD|11346942

c. Kiểm tra phép tách  = {ABHM, ACEG, CDEGH} có kết nối mất thơng tin khơng?
Vì sao?
Bài làm
CHƯƠNG II : Bài làm

2.1 : Mô tả về dữ liệu của cơ sở dữ liệu (CSDL) trong hệ thống quản lý bán hàng:
2.1.1 (a) Hãy xây dựng mơ hình thực thể - liên kết cho hệ thống trên

Hình 1. 1 mơ hình thực thể - liên của kết hệ thống quản lý bán hàng
2.1.2 (b) Hãy chuyển mơ hình thực thể - liên kết đã xây dựng ở ý a sang mơ hình
quan hệ (Xác định các ràng buộc khóa chính, khóa ngoại)
DONHANG(MAHD, TENKH, DCKH, NBAN, NGBAN)
HANGSX(MAH, TENH, SDT, DC,MAMH)
CTDH( MAMH, MAHD,SL,DONGIA)
MATHANG(MAMH, TENMH, LOAIMH, DVT)

7


lOMoARcPSD|11346942

2.2 Cho lược đồ cơ sở dữ liệu quản lý bán hàng với 4 lược đồ quan hệ , sau đó Sử
dụng ngơn ngữ truy vấn có cấu trúc (SQL) để thực hiện các yêu cầu.

2.2.1 (a) Hãy tạo cấu trúc bảng, các ràng buộc khóa chính, khóa ngoại đối với 4
bảng đã mô tả ở trên; lựa chọn các kiểu dữ liệu phù hợp cho các cột trong mỗi
bảng;

CREATE DATABASE QuanLyHangHoa
GO
USE QuanLyHangHoa
Go
--Tạo bảng và liên kết các bảng
CREATE TABLE HangSX0 (
MaHSX varchar(10) PRIMARY KEY not null,
TenHSX NVARCHAR(50) not null,
DCHi NVARCHAR(50) not null,)
Go
CREATE TABLE HangHoa0 (
MaHH varchar(10) PRIMARY KEY not null,
TenHH NVARCHAR(50) not null,
LoaiHH NVARCHAR(50) not null,
DonVi int not null,
MaHSX varchar(10) CONSTRAINT F_HangHoa0_HangSX0
FOREIGN KEY REFERENCES dbo.HangSX0(MaHSX) not null,)
GO
CREATE TABLE CTHoaDon0 (
MaHD varchar(10) PRIMARY KEY not null,
MaHH varchar(10) CONSTRAINT F_CTHoaDon0_HangHoa0
FOREIGN KEY REFERENCES dbo.HangHoa0(MaHH) not null,
SLBan CHAR (4) not null,
GiaBan CHAR (4) not null,)
GO
CREATE TABLE HoaDon0 (
MaHD varchar(10) PRIMARY KEY CONSTRAINT F_HoaDon0_CTHoaDon0
FOREIGN KEY REFERENCES dbo.CTHoaDon0(MaHD) not null,
NgayHD datetime not null,
TenKH NVARCHAR(50) not null,)

GO

2.2.2 (b) Hãy chèn dữ liệu phù hợp vào 4 bảng (mỗi bảng ít nhất 3 dịng (bản ghi))
insert dbo.HangSX0
(MaHSX, TenHSX, DCHi)
VALUES
('101', N'Hải Long', 'HungYen'),
('102', N'Bình Minh', 'VinhPhuc'),
('103', N'Kinh Đơ', 'BacNinh')
GO
INSERT dbo.HangHoa0
(MaHH, TenHH, LoaiHH, DonVi, MaHSX)
VALUES
('1001', N'Kẹo ngọt', N'Đồ ăn', '10', '101'),
('1002', N'Nước cam', N'Nước', '20', '102'),
('1003', N'Táo', N'Hoa quả', '30', '103')
GO
INSERT dbo.CTHoaDon0
(MaHD, MaHH, SLBan, GiaBan)
VALUES
('10001', '1001', '10', '100'),
('10002', '1002', '5', '500'),

8


lOMoARcPSD|11346942

('10003', '1003', '20', '500')
GO

INSERT dbo.HoaDon0
(MaHD, NgayHD, TenKH)
VALUES
('10001', '2/5/2012', 'ChuVanA'),
('10002', '3/8/2020', 'ChuVanB'),
('10003', '5/9/2020', 'ChuVanC')
GO
INSERT dbo.HangHoa0
(MaHH, TenHH, LoaiHH, DonVi, MaHSX)
VALUES
('1004', N'Keo Cay', N'Đồ ăn', '20', '101'),
('1005', N'Nước dừa', N'Nước', '50', '102'),
ở i', N'Hoa quả', '60', '103')
('1006', N'Bưở
GO
INSERT dbo.CTHoaDon0
(MaHD, MaHH, SLBan, GiaBan)
VALUES
('10004', '1003', '10', '150'),
('10005', '1004', '10', '3000'),
('10006', '1002', '10', '1000')
GO
INSERT dbo.HoaDon0
(MaHD, NgayHD, TenKH)
VALUES
('10004', '6/9/2020', 'NguyenVanB'),
('10005', '7/9/2020', 'NguyenLeS'),
('10006', '8/9/2020', 'DaoBaD')
GO


2.2.3 (c) Hãy hiển thị thơng tin về các hãng sản xuất có tên là ‘Hải Long’;
SELECT * from dbo.HangSX0 HH Where TenHSX = N'Hải Long'
GO

- kết quả

2.2.4 (d) Hãy hiển thị tổng tiền lương cơ bản của từng nhân viên: MaNV,
HotenNV, [Tổng tiền lương cơ bản]
- SELECT

HH.MaHH, HH.TenHH, HH.LoaiHH, HD.SLBan, HD.GiaBan from dbo.HangHoa0 as HH
inner join dbo.CTHoaDon0 AS HD on HH.MaHH = HD.MaHH Where SLBan > '0'
go

- kết quả

9


lOMoARcPSD|11346942

2.2.5 (e) Hãy hiển thị tổng tiền lương cơ bản của từng nhân viên: MaNV, HotenNV,
[Tổng tiền lương cơ bản]
Select HangSX0.MaHSX, count(MaHH) from HangHoa0 inner join HangSX0 on HangSX0.MaHSX =
HangHoa0.MaHSX group by HangSX0.MaHSX

- kết quả

2.3. Cho một lược đồ quan hệ R = (U, F), U = ABCDEGHM, F = {BDE -> AG, CE
-> AH, D -> CG, GE -> M }

2.3.1 (a) Hãy xác định 1 khóa của lược đồ (liệt kê chi tiết các bước thực hiện)

Bước 0: Đặt K0=U=ABCDEGHM
Bước 1:Loại bỏ A ra khỏi K0,xét xem có tồn tại phụ thuộc hàm
(K0 \ {A})→U⟺(BCDEGHM)+→U = ABCDEGHM hay khơng.
Ta có: (BCDEGHM)+=ABCDEGHM=U è K1\ {A}=K0 =BCDEGHM
Bước 2: Tương tự, thử loại bỏ B ra khỏi K1
Ta có :(CDEGHM)+=ACDEGHM≠U => K2=K1=BCDEGHM
10


lOMoARcPSD|11346942

Bước 3: Thử loại bỏ C ra khỏi K2
Ta có :(BDEGHM)+=ABCDEHI=U => K3=K2 \ {C}=BDEGHM
Bước 4: Thử loại bỏ D ra khỏi K3
Ta có :(BEGHM)+=BEGHM≠U => K4=K3 =BDEGHM
Bước 5: Thử loại bỏ E ra khỏi K4
Ta có :(BDGHM)+=BCDGHM≠U => K5=K4 =BDEGHM
Bước 6: Thử loại bỏ G ra khỏi K5
Ta có: (BDEHM)+=ABCDEGHM=U => K6=K5\{G}=BDEHM
Bước 7: Thử loại bỏ H ra khỏi K6
Ta có: (BDEM)+=ABCDEGHM =U => K7=K6\{H}=BDEM
Bước 8: Thử loại bỏ M ra khỏi K7
Ta có: (BDE)+=ABCDEGHM=U => K8=K7\{M}=BDE
=>Vậy BDE là một khóa của R.
b) Lược đồ R thỏa mãn dạng chuẩn cao nhất nào? Vì sao?
Dạng chuẩn cáo nhất của lược đồ là 1NF
Vì BDE -> AG vi phạm dạng chuẩn 2( Vì có thuộc tính vế trái tham gia vào khóa)
C) Kiểm tra phép tách  = {ABHM, ACEG, CDEGH} có kết nối mất thơng


tin khơng? Vì sao?
A
a1
a1
b31

B
a2
b22
b32

C
b13
a3
a3

D
b14
B24
a4

E
b15
a5
a5

G
b16
a6

a6

H
a7
b27
a7

M
a8
b28
b38

A
ABHM
a1
ACEG
a1
CDEGH b31
CE -> AH

B
a2
b22
b32

C
b13
a3
a3


D
b14
b24
a4

E
b15
a5
a5

G
b16
a6
a6

H
a7
b27
a7

M
a8
b28
b38

B
a2

C
b13


D
b14

E
b15

G
b16

H
a7

M
a8

ABHM
ACEG
CDEG
H
BDE -> AG

ABHM

A
a1

11



lOMoARcPSD|11346942

ACEG
a1
CDEGH a1
D -> CG

b22
b32

a3
a3

b24
a4

a5
a5

a6
a6

a7
a7

b28
b38

A
ABHM

a1
ACEG
a1
CDEGH b31
GE ->M

B
a2
b22
b23

C
b13
a3
a3

D
b14
b24
a4

E
b15
a5
a5

G
b16
a6
a6


H
a7
a7
a7

M
a8
b28
b38

A
B
C
D
E
G
H
ABHM
a1
a2
b13
b14
b15
b16
a7
ACEG
a1
b22
a3

b24
a5
a6
b27
CDEGH b31
b32
a3
a4
a5
a6
a7
Vậy phép tách  = {ABHM, ACEG, CDEGH} có kết nối mất thơng tin.

M
a8
a8
a8

12

Downloaded by Quang Tr?n ()



×