MƠ TẢ BÀI TỐN1.1 Giới thiệu - Ra đời vào cuối thế kỉ 19, điện ảnh là một bước tiến lớn trong ngành côngnghiệp giải trí trên Thế giới nói chung và Việt Nam nói riêng.. Trải qua hơn 100 nă
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
KHOA CÔNG NGHỆ THÔNG TIN 1
BÁO CÁO BÀI TẬP LỚN
ĐỀ TÀI: THIẾT KẾ HỆ THỐNG QUẢN LÝ PHIM ĐIỆN ẢNH
Mã môn
Thành viên: Phạm Quốc Việt – B20DCCN732
Hoàng Đức Thắng – B20DCCN660 Cao Xuân Trung – B20DCCN696 Giảng viên: Trần Quốc Khánh
MỤC LỤC
Hà Nội - 2022
Trang 21 MÔ TẢ BÀI TOÁN 1
1.1 Giới thiệu 1
1.2 Phân tích bài toán 1
2 THIẾT KẾ HỆ THỐNG 2
2.1 Danh sách thực thể 2
2.2 Mối quan hệ giữa các thực thể 3
2.3 Sơ đồ thực thể liên kết (Lược đồ ER) 4
2.4 Sơ đồ dữ liệu quan hệ 5
3 CÀI ĐẶT CƠ SỞ DỮ LIỆU 6
3.1 Danh sách bảng 6
3.2 Sơ đồ database 8
Trang 31 MÔ TẢ BÀI TOÁN
1.1 Giới thiệu
- Ra đời vào cuối thế kỉ 19, điện ảnh là một bước tiến lớn trong ngành công
nghiệp giải trí trên Thế giới nói chung và Việt Nam nói riêng Trải qua hơn 100 năm, ngành điện ảnh cho ra mắt hàng triệu bộ phim cả trong và ngoài nước, nhanh chóng chiếm được cảm tình của người dân đại chúng
Đi kèm với sự phát triển của lĩnh vực điện ảnh, hàng nghìn bộ phim được sản xuất hàng ngày, biến khối lượng phim ảnh Thế giới ngày một đồ sộ Với càng nhiều bộ phim được ra mắt, việc người yêu điện ảnh chọn lựa được bộ phim ưng ý ngày càng khó khăn
- Dựa trên những yếu tố đó, hệ thống tra cứu phim ảnh ra đời, cho phép
người dùng tìm ra những bộ phim mà mình muốn; rà sét những thông tin liên quan đến phim như diễn viên, đạo diễn, …; ghi chú những bộ phim yêu thích
1.2 Phân tích bài toán
Với ý tưởng trên, một hệ thống quản lý phim ảnh được phát triển với các chức năng cơ bản như sau:
o Hệ thống quản lý, lưu trữ các thông tin liên quan đến phim ảnh như tên phim, nhà sản xuất, các diễn viên, đạo diễn,…
o Hệ thống đăng nhập, đăng ký tài khoản giúp người dùng quản lý nội dung và tương tác với hệ thống như:
Hệ thống lưu trữ thông tin người dùng, cho phép người dùng tra cứu thông tin phim và các thông tin liên quan
Ngoài ra, người dùng cũng có thể cho điểm đánh giá, viết nhận xét về bộ phim
Trang | 1
Trang 42 PHÂN TÍCH THIẾT KẾ CƠ SỞ DỮ LIỆU
1.1 Danh sách thực thể
1, Phim
(Phim)
- MaPhim (Mã phim)
- TenPhim (Tên phim)
- NgayRaMat (Ngày ra mắt)
- QuocGia (Quốc gia)
- DTB (Điểm trung bình)
- MoTa (Mô tả phim)
Dùng để lưu trữ các bộ phim và nhiều thông tin liên quan
2, TheLoai
(Thể loại)
- MaTheLoai (Mã thể loại)
- TenTheLoai (Tên thể loại)
- MoTa (Mô tả thể loại)
Dùng để lưu trữ thể loại phim (hành động, tình cảm, viễn tưởng,…)
3, Xuong
(Xưởng sản
xuất)
- MaXuong (Mã Xưởng)
- TenStudio (Tên Xưởng)
- NgayThanhLap (Ngày thành
lập)
- QuocGia (Quốc gia)
- MoTa (Mô tả xưởng)
Dùng để lưu trữ các xưởng sản xuất phim
4, ThanhVien
(Thành viên
tham gia)
- MaThanhVien (Mã thành viên)
- HoTen (Họ và tên)
- GioiTinh (Giới tính)
- NgaySinh (Ngày sinh)
- QueQuan (QueQuan)
- MoTa (Mô tả thành viên)
Dùng để lưu trữ những nhân vật / thành viên xuất hiện trong đoàn làm phim
5, VaiTro (Vai
trò)
- MaVaiTro (Mã vai trò)
- TenVaiTro (Tên vai trò)
Dùng để lưu trữ các vai trò mà thành viên đoàn làm phim có thể thàm gia vào bộ phim (diễn viên, đạo diễn, biên kịch, lồng tiếng…)
Trang 5NguoiDung
(Người dùng)
- MaNguoiDung (Mã người dùng)
- TaiKhoan (Tên tài khoản)
- MatKhau (Mật khẩu)
- Email (Địa chỉ email)
Dùng để lưu trữ người dùng, người dùng có thể thao tác với hệ thống phim
1.2 Mối quan hệ giữa các thực thể
2.1.1 DanhGia (NguoiDung, Phim)
2.1.2 BaoGom (Phim, TheLoai)
2.1.3 SanXuat(Xuong, Phim)
2.1.4 ThamGiaVao (ThanhVien, VaiTro, Phim)
Trang | 3
Trang 61.3 Sơ đồ thực thể liên kết (Lược đồ E-R)
Lược đồ E-R bao gồm 6 thực thể và 4 quan hệ.
Trang 7Discover more
from:
Document continues below
Cơ Sở Dữ Liệu
Học viện Công ng…
117 documents
Go to course
Trang 81.4 Sơ đồ dữ liệu quan hệ
Ngân-hàng - Ngân hàng cơ sở dữ liệu…
Cơ Sở Dữ Liệu 100% (2)
27
NHOM02 Thitracnghiem - Thi
Cơ Sở Dữ Liệu 100% (1)
27
CSDL Trắc nhiệm
350 câu - ngân hàng
Cơ Sở Dữ Liệu 100% (1)
44
Unit 1 My new school Lesson 1 Getting…
Cơ Sở Dữ
61
6 Đề cương Cơ sở
dữ liệu- sau nghiệm…
Cơ Sở Dữ
11
Chức năng đăng nhập - Chức năng…
Cơ Sở Dữ
2
Trang 93 CHUẨN HOÁ VÀ THIẾT KẾ LẠI CƠ SỞ DỮ LIỆU
3.1 Chuẩn hoá cơ sở dữ liệu
Từ 10 lược đồ quan hệ chúng ta chuẩn hoá về dạng BCNF:
Phim (MaPhim, TenPhim, NgayRaMat, QuocGia, DTB, MoTa)
o Khoá chính: MaPhim
o Phụ thuộc hàm:
MaPhim -> TenPhim
MaPhim -> NgayRaMat
MaPhim -> QuocGia
MaPhim -> DTB
MaPhim -> MoTa
o Các trường thuộc tính đều là nguyên tố, không có các thuộc tính gây lặp, các thuộc tính không thể được tính toán từ các thuộc tính
khác => Quan hệ đạt chuẩn 1NF.
o Các trường thuộc tính không phải khóa chính phụ thuộc hoàn toàn
vào khóa chính => Quan hệ đạt chuẩn 2NF.
o Quan hệ chứa các thuộc tính không phải khóa chính phụ thuộc trực
tiếp vào khóa chính => Quan hệ đạt chuẩn 3NF.
o Mọi phụ thuộc hàm của quan hệ này đều ở dạng Khóa chính ->
Không khóa => Quan hệ đạt chuẩn BCNF.
TheLoai (MaTheLoai, TenTheLoai, MoTa)
o Khoá chính: MaTheLoai
o Phụ thuộc hàm:
MaTheLoai -> TenTheLoai
MaTheLoai -> MoTa
o Các trường thuộc tính đều là nguyên tố, không có các thuộc tính gây lặp, các thuộc tính không thể được tính toán từ các thuộc tính
khác => Quan hệ đạt chuẩn 1NF.
o Các trường thuộc tính không phải khóa chính phụ thuộc hoàn toàn
vào khóa chính => Quan hệ đạt chuẩn 2NF.
o Quan hệ chứa các thuộc tính không phải khóa chính phụ thuộc trực
tiếp vào khóa chính => Quan hệ đạt chuẩn 3NF.
Trang | 6
Trang 10o Mọi phụ thuộc hàm của quan hệ này đều ở dạng Khóa chính ->
Không khóa => Quan hệ đạt chuẩn BCNF.
Xuong (MaXuong, TenXuong, NgayThanhLap, QuocGia, MoTa)
o Khoá chính: MaXuong
o Phụ thuộc hàm:
MaXuong -> TenXuong
MaXuong -> NgayThanhLap
MaXuong -> QuocGia
MaXuong -> MoTa
o Các trường thuộc tính đều là nguyên tố, không có các thuộc tính gây lặp, các thuộc tính không thể được tính toán từ các thuộc tính
khác => Quan hệ đạt chuẩn 1NF.
o Các trường thuộc tính không phải khóa chính phụ thuộc hoàn toàn
vào khóa chính => Quan hệ đạt chuẩn 2NF.
o Quan hệ chứa các thuộc tính không phải khóa chính phụ thuộc trực
tiếp vào khóa chính => Quan hệ đạt chuẩn 3NF.
o Mọi phụ thuộc hàm của quan hệ này đều ở dạng Khóa chính ->
Không khóa => Quan hệ đạt chuẩn BCNF.
ThanhVien (MaThanhVien, HoTen, GioiTinh, NgaySinh, QueQuan,
MoTa)
o Khoá chính: MaThanhVien
o Phụ thuộc hàm:
MaThanhVien -> HoTen
MaThanhVien -> GioiTinh
MaThanhVien -> NgaySinh
MaThanhVien -> QueQuan
MaThanhVien -> MoTa
o Các trường thuộc tính đều là nguyên tố, không có các thuộc tính gây lặp, các thuộc tính không thể được tính toán từ các thuộc tính
khác => Quan hệ đạt chuẩn 1NF.
o Các trường thuộc tính không phải khóa chính phụ thuộc hoàn toàn
vào khóa chính => Quan hệ đạt chuẩn 2NF.
o Quan hệ chứa các thuộc tính không phải khóa chính phụ thuộc trực
tiếp vào khóa chính => Quan hệ đạt chuẩn 3NF.
Trang 11o Mọi phụ thuộc hàm của quan hệ này đều ở dạng Khóa chính ->
Không khóa => Quan hệ đạt chuẩn BCNF.
VaiTro (MaVaiTro, TenVaiTro)
o Khoá chính: MaVaiTro
o Phụ thuộc hàm
MaVaiTro -> TenVaiTro
o Các trường thuộc tính đều là nguyên tố, không có các thuộc tính gây lặp, các thuộc tính không thể được tính toán từ các thuộc tính
khác => Quan hệ đạt chuẩn 1NF.
o Các trường thuộc tính không phải khóa chính phụ thuộc hoàn toàn
vào khóa chính => Quan hệ đạt chuẩn 2NF.
o Quan hệ chứa các thuộc tính không phải khóa chính phụ thuộc trực
tiếp vào khóa chính => Quan hệ đạt chuẩn 3NF.
o Mọi phụ thuộc hàm của quan hệ này đều ở dạng Khóa chính ->
Không khóa => Quan hệ đạt chuẩn BCNF.
NguoiDung (MaNguoiDung, TaiKhoan, MatKhau, Email)
o Khoá chính: MaNguoiDung
o Phụ thuộc hàm:
MaNguoiDung -> TaiKhoan
MaNguoiDung -> MatKhau
MaNguoiDung -> Email
o Các trường thuộc tính đều là nguyên tố, không có các thuộc tính gây lặp, các thuộc tính không thể được tính toán từ các thuộc tính
khác => Quan hệ đạt chuẩn 1NF.
o Các trường thuộc tính không phải khóa chính phụ thuộc hoàn toàn
vào khóa chính => Quan hệ đạt chuẩn 2NF.
o Quan hệ chứa các thuộc tính không phải khóa chính phụ thuộc trực
tiếp vào khóa chính => Quan hệ đạt chuẩn 3NF.
o Mọi phụ thuộc hàm của quan hệ này đều ở dạng Khóa chính ->
Không khóa => Quan hệ đạt chuẩn BCNF.
DanhGia (MaNguoiDung, MaPhim, Ngay, Diem, NhanXet)
Trang | 8
Trang 12o Khoá chính: MaNguoiDung, MaPhim (hai khoá này tham chiếu lần lượt đến bảng NguoiDung Phim, )
o Phụ thuộc hàm:
MaNguoiDung -> Ngay
MaNguoiDung -> Diem
MaNguoiDung -> NhanXet
MaPhim -> Ngay
MaPhim -> Diem
MaPhim -> NhanXet
o Các trường thuộc tính đều là nguyên tố, không có các thuộc tính gây lặp, các thuộc tính không thể được tính toán từ các thuộc tính
khác => Quan hệ đạt chuẩn 1NF.
o Có 2 khoá chính, Các thuộc tính còn lại đều phụ thuộc vào cả hai
khoá đó => Quan hệ đạt chuẩn 3NF.
o Mọi phụ thuộc hàm của quan hệ này đều ở dạng Khóa chính ->
Không khóa => Quan hệ đạt chuẩn BCNF.
ThamGiaVaoPhim (MaPhim, MaThanhVien, MaVaiTro, MoTa)
o Khoá chính: MaPhim, MaThanhVien, MaVaiTro
o Phụ thuộc hàm:
MaPhim -> MoTa
MaThanhVien -> MoTa
MaVaiTro -> MoTa
o Các trường thuộc tính đều là nguyên tố, không có các thuộc tính gây lặp, các thuộc tính không thể được tính toán từ các thuộc tính
khác => Quan hệ đạt chuẩn 1NF.
o Có 3 khoá chính, thuộc tính còn lại phụ thuộc vào cả ba khoá đó
=> Quan hệ đạt chuẩn 3NF.
o Mọi phụ thuộc hàm của quan hệ này đều ở dạng Khóa chính ->
Không khóa => Quan hệ đạt chuẩn BCNF.
TheLoaiPhim (MaPhim, MaTheLoai)
o Khoá chính: MaPhim, MaTheLoai
Trang 13o Thực thể chỉ chứa 2 thuộc tính đều là khoá chính, không phải là
thuộc tính đa trị hay phức hợp => Quan hệ đạt chuẩn 3NF.
o Mọi phụ thuộc hàm của quan hệ này đều ở dạng Khóa chính ->
Không khóa => Quan hệ đạt chuẩn BCNF.
SanXuat (MaPhim, MaXuong)
o Khoá chính: MaPhim, MaXuong
o Thực thể chỉ chứa 2 thuộc tính đều là khoá chính, không phải là
thuộc tính đa trị hay phức hợp => Quan hệ đạt chuẩn 3NF.
o Mọi phụ thuộc hàm của quan hệ này đều ở dạng Khóa chính ->
Không khóa => Quan hệ đạt chuẩn BCNF.
1.5 Lược đồ E-R sau khi chuẩn hoá
Trang | 10
Trang 144 CÀI ĐẶT CƠ SỞ DỮ LIỆU
Cơ sở dữ liệu được cài đặt trên hệ quản trị cơ sở dữ liệu SQL Server 2019
1.6 Danh sách bảng
Phim
TenPhim NVARCHAR(255)
QuocGia NVARCHAR(200)
MoTa NVARCHAR(MAX)
TheLoai
TenTheLoai NVARCHAR(100) MoTa NVARCHAR(MAX)
Xuong
TenXuong NVARCHAR(255) NgayThanhLap DATE QuocGia NVARCHAR(200) MoTa NVARCHAR(MAX)
ThanhVien
HoTen NVARCHAR(255) GioiTinh CHAR(1)
QueQuan NVARCHAR(200) MoTa NVARCHAR(MAX)
Trang 15VaiTro MaVaiTro INT PK
TenVaiTro NVARCHAR(100)
NguoiDung
TaiKhoan VARCHAR(50) MatKhau VARCHAR(MAX) Email VARCHAR(255)
DanhGia
NhanXet NVARCHAR(MAX)
ThamGiaVaoPhim
MoTa NVARCHAR(MAX)
* Chú ý:
- PK: Khoá chính
- FK: Khoá ngoại
Trang | 12
Trang 161.7 Sơ đồ database
Trang 175 BÀI TẬP TRUY VẤN CƠ SỞ DỮ LIỆU
1.8 Tên thành viên tham gia nhiều vai trò nhất
Truy vấn cơ sở dữ liệu:
Biểu thức đại số quan hệ:
R1 = ThanhVien⋈(ThanhVien.MaThanhVien = ThamGiaVaoPhim.MaThanhVien)ThamGiaVaoPhim R2=MaThanhVien ℑCOUNT(MaVaiTro) as SoVaiTro(R1)
R3 = σSoVaiTro = MAX(SoVaiTro)
Kết quả = πMaThanhVien, HoTen, SoVaiTro (R3)
Kết quả truy vấn:
1.9 Tìm phim có điểm đánh giá cao nhất trong 3 tháng gần nhất
Truy vấn cơ sở dữ liệu:
Trang | 14
Trang 18 Biểu thức đại số quan hệ
R1 = σNgay >= “01-09-2022” (DanhGia)
R2 = R1 ⋈(R1.MaPhim = Phim.MaPhim) Phim
R3 = MaPhim ℑAVERAGE(Diem) as Rate (R2)
R4 = σRate = MAX(Rate) (R3)
Kết quả = πMaPhim, TenPhim, Rate (R4)
Kết quả truy vấn:
1.10 Tìm ra tên xưởng sản xuất phim có đánh giá phim đứng thứ nhất trong tháng
Biểu thức đại số quan hệ
R1 = σNgay>=01-11-2022 (DanhGia)
R2 = R1 R1.MaPhim = Phim.MaPhim Phim⋈
R3 = MaPhim AVERAGE(Diem) as DiemTBPhim(R2)ℑ
R4 = R3 R3.MaPhim = SanXuat.MaPhim SanXuat⋈
R5 = R4 R4.MaXuong = Xuong.MaXuong Xuong⋈
R6 = MaXuong AVERAGE(DiemTBPhim) as DiemTBXuong(R5)ℑ R7 = σ DiemTBXuong = MAX(DiemTBXuong) (R6)
Kết quả = πMaXuong,TenXuong, DiemTBXuong(R7)
Trang 196 PHÂN CÔNG CÔNG VIỆC
Phạm Quốc Việt: Mô tả bài toán, xác định thực thể, mối quan hệ, vẽ
lược đồ E-R, lược đồ quan hệ, chuẩn hoá cơ sở dữ liệu, chuẩn bị tài liệu
Hoàng Đức Thắng: Phân tích biểu thức đại số quan hệ, dựng database
SQL Server, thực hiện truy vấn SQL Server
Cao Xuân Trung: Thiết kế cơ sở dữ liệu, phân tích biểu thức đại số
quan hệ, chuẩn hoá cơ sở dữ liệu
Trang | 16