Các đối tượng trong cơ sở dữ liệu Danh mục Film phim Dựa vào ngôn ngữ truy vấn đã tạo từ phần mềm SQL Structured Query Language, ta có được thông tin về kích thước và kiểu dữ liệu như s
Trang 1TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP HCM
KHOA KINH TẾ - -
MÔN HỌC: CƠ SỞ DỮ LIỆU
BÁO CÁO GIỮA KỲ
GVHD: TS Vũ Ngọc Thanh Sang Lớp thứ 6 – Tiết 3-5
Tp Hồ Chí Minh, tháng 5 năm 2021
Trang 2MỤC LỤC
MỞ ĐẦU 3
CHƯƠNG 1: GIỚI THIỆU, MÔ TẢ DỮ LIỆU 2
1.1 Các đối tượng trong cơ sở dữ liệu 2
1.2 Thông tin cơ sở dữ liệu ở mỗi danh mục 3
CHƯƠNG 2: CHUẨN HÓA DỮ LIỆU 4
2.1 Tổng quát về chuẩn hóa dữ liệu 4
2.2 Các bước thực hiện chuẩn hóa dữ liệu 5
CHƯƠNG 3: SƠ ĐỒ QUAN HỆ 14
3.1 Các thành phần của sơ đồ quan hệ 14
3.2 Xây dựng mô hình bộ phim 14
3.3 Xây dựng mô hình thể loại phim 15
3.4 Xây dựng mô hình nhà sản xuất phim 15
3.5 Xây dựng mô hình diễn viên 16
3.6 Xây dựng các mô hình quan hệ 16
3.7 Sơ đồ quan hệ thực thể 17
Trang 3DANH MỤC BẢNG BIỂU, HÌNH DANH MỤC HÌNH ẢNH
Hình 1 Các bước chuẩn hóa dữ liệu 4
Hình 2 Dữ liệu của 100 Film 5
Hình 3 Dữ liệu chưa chuẩn hóa của Categories và Director 5
Hình 4 Dữ liệu chưa chuẩn hóa của Actors 6
Hình 5: Bảng dữ liệu sau khi chuẩn hóa 1NF 8
Hình 6 Bảng dữ liệu Film mới 9
Hình 7 Bảng dữ liệu Categories sau khi tách 9
Hình 8 Bảng dữ liệu Director sau khi tách 10
Hình 9 Bảng dữ liệu Actors sau khi tách 10
Hình 10 Bảng dữ liệu Film-Categories 11
Hình 11 Bảng dữ liệu Film-Actors 12
Hình 12 Bảng dữ liệu Film-Director 12
Hình 13 Mô hình của Film 14
Hình 14 Mô hình Categories của Film 14
Hình 15 Mô hình Director 15
Hình 16 Mô hình Actors 15
Hình 17 Mối quan hệ của các thuộc tính 15
Hình 18 Diagram của các thuộc tính 16
Hình 19 Sơ đồ quan hệ thực thể 16
DANH MỤC BẢNG BIỂUY Bảng 1.1.1 Bảng thể hiện dữ liệu của danh mục Film 2
Bảng 1.1.2 Bảng thể hiện danh mục Categories 2
Bảng 1.1.3 Bảng thể hiện danh mục Director 2
Bảng 1.1.4 Bảng thể hiện danh mục Actors 3
Bảng 1.1.5 Bảng thể hiện danh mục Film-Director 3
Bảng 1.1.6 Bảng thể hiện danh mục Film-Actor 3
Bảng 1.1.7 Bảng thể diện danh mục Film-Categories 3
Bảng 2.2.1 Bảng Categories trước khi chuẩn hóa 1NF 7
Trang 4Bảng 2.2.2 Bảng Categories sau khi chuẩn hóa 1NF 7
Bảng 2.2.3 Bảng Director trước khi chuẩn hóa 1NF 8
Bảng 2.2.4 Bảng Director sau khi chuẩn hóa 1NF 8
Bảng 2.2.5 Bảng Actors trước khi chuẩn hóa 1NF 8
Bảng 2.2.6 Bảng Actors sau khi chuảng hóa 1NF 8
Bảng 3.1.1: Các thành phần của sơ đồ quan hệ 14
Bảng 3.2.1 Các thành phần của mô hình phim 14
Bảng 3.3.1 Các thành phần của mô hình thể loại bộ phim 15
Bảng 3.4.1 Các thành phần của mô hình Director 15
Bảng 3.5.1 Các thành phần của mô hình Actors 16
Trang 5MỞ ĐẦU
Ngày nay, với sự phát triển nhanh chóng của khoa học kỹ thuật, con người đãđạt được nhiều thành tựu trên mọi lĩnh vực góp phần không nhỏ cải thiện đời sống củanhân loại Tuy nhiên con người cũng đang phải đối mặt với một khó khăn mới về sốlượng thông tin quá lớn, sự bùng nổ về số lượng dữ liệu, dẫn đến việc chọn lọc thôngtin, tìm kiếm dữ liệu là một vấn đề hết sức khó khăn Để giải quyết vấn đề này, conngười đã sử dụng “cơ sở dữ liệu” hay còn gọi là tập hợp thông tin có cấu trúc, để quản
lý lưu trữ dữ liệu, giúp con người quản lý, chọn lọc và tìm kiếm thông tin nhanh nhất
có thể Hiện nay, trên thế giới đã có khá nhiều các hệ quản trị cơ sở dữ liệu hay cácphần mềm lưu trữ, quản lý phân tích dữ liệu khác nhau, và tập trung vào các dữ liệu
về đời sống xã hội, kinh tế, chính trị, văn hóa, và một số ngành khoa học Cơ sở dữliệu được ví như “xương sống” của “cơ thể” hệ thống thông tin quản lý trong doanhnghiệp, muốn có một “cơ thể” chắc chắn, bền vững thì chúng ta phải có một “xươngsống” vững chắc, đầy đủ
Vấn đề chuẩn hóa dữ liệu trong thiết kế cơ sở dữ liệu là rất rộng lớn, nghiêncứu quá trình chuẩn hóa trong một lược đồ quan hệ là một mặt của vấn đề này Từviệc chuẩn hóa dữ liệu chúng ta có thể đưa ra được một lược đồ quan hệ ngắn gọn,đây sẽ là cơ sở căn bản phục vụ cho việc thiết kế dữ liệu
Xuất phát từ tính cấp thiết của vấn đề, nhóm chúng em đã thực hiện báo cáosau
Trang 6CHƯƠNG 1: GIỚI THIỆU, MÔ TẢ DỮ LIỆU1.1 Các đối tượng trong cơ sở dữ liệu
Danh mục Film (phim)
Dựa vào ngôn ngữ truy vấn đã tạo từ phần mềm SQL (Structured Query Language), ta
có được thông tin về kích thước và kiểu dữ liệu như sau:
EnglishTitle Tên phim tiếng anh nvarchar 100
VietnameseTitle Tên phim tiếng việt nvarchar 100
Rating Độ quan tâm của khán giả varchar 10
Bảng 1.1 Bảng thể hiện dữ liệu của danh mục Film
Tương tự cho các danh mục categories; director; actors, ta có được các kết quả
Danh mục Categories (thể loại)
Bảng 1.1 Bảng thể hiện danh mục Categories
Danh mục Director (đạo diễn)
Bảng 1.1 Bảng thể hiện danh mục Director
Trang 7 Danh mục Actors (diễn viên)
Bảng 1.1 Bảng thể hiện danh mục Actors
Danh mục Film-Director
Bảng 1.1 Bảng thể hiện danh mục Film-Director
Danh mục Film-Actor
Bảng 1.1 Bảng thể hiện danh mục Film-Actor
Danh mục Film-Categories
Bảng 1.1 Bảng thể diện danh mục Film-Categories
1.2 Thông tin cơ sở dữ liệu ở mỗi danh mục
Thông tin về Film (phim)
Mỗi một bộ phim được định danh bởi một ID khác nhau Mỗi bộ phim gồm têntiếng anh và tiếng việt, năm xuất bản, chiều dài bộ phim, độ quan tâm của khán giả,đánh giá của khán giả và doanh thu của phim
Thông tin về Categories (thể loại)
Mỗi phim chỉ thuộc một thể loại duy nhất, nhưng một thể loại có thể có nhiều phim
Thông tin về Actors (diễn viên)
Trang 8Mỗi một diễn viên được xác định bởi ID duy nhất và tên diễn viên Một diễn viên cóthể tham gia đóng nhiều phim và ngược lại một phim cũng có thể có nhiều diễn viêntham gia.
Thông tin về Director (đạo diễn)
Mỗi một đạo diễn có một ID duy nhất, tên đạo diễn Một đạo diễn có thể sản xuấtnhiều phim
Trang 9CHƯƠNG 2: CHUẨN HÓA DỮ LIỆU 2.1. Tổng quát về chuẩn hóa dữ liệu
Chuẩn hóa cơ sở dữ là quá trình phân rã lược đồ quan hệ dựa trên một tập phụthuộc hàm nhằm đảm bảo các lược đồ thỏa mãn 2 tính chất:
Các dạng chuẩn được sắp xếp theo thự tự từ thấp đến cao Để chuẩn hóa 2NF thì cơ sở
dữ liệu của chúng ta phải đạt chuẩn 1NF, tương tự để đạt được chuẩn 3NF thì dữ liệuphải chuẩn 1NF và 2NF
Hình Các bước chuẩn hóa dữ liệu
Trang 102.2. Các bước thực hiện chuẩn hóa dữ liệu
Với dữ liệu ban đầu nhận được từ Giảng viên gồm có 100 phim với mỗi phim
sẽ có các đặc điểm như: EnglishTitle, VietnameseTitle, Year, Categories, Rating,Votes, Gross, Director, Actors
Hình Dữ liệu của 100 Film
Trong đó ta thấy ở cột: Categories, Director và Actors tồn tại tương ứng với lên đến 3Categories, 2 Director và 4 Actors Điều này được thấy rõ ở các hình dưới
Hình Dữ liệu chưa chuẩn hóa của Categories và Director
Trang 11Hình Dữ liệu chưa chuẩn hóa của Actors
Như vậy bảng dữ liệu này chưa được chuẩn hóa vì vậy ta sẽ tiến hành chuẩn hóa nó
Bước 1: Chuẩn dạng 1NF
Với Categories chứa đến 3 thuộc tính trong 1 hàng, Director chứa 2 thuộc tínhtrong 1 hàng và Actors có hàng chứa đến 4 thuộc tính như vậy đã vi phạm điều kiệnchuẩn 1NF do các giá trị trong từng hàng không phải là đơn trị (chỉ có 1 giá trị), 3điều kiện cần phải tuân theo đó là:
Các thuộc tính của bảng phải là nguyên tố
Giá trị của các thuộc tính trên các hàng phải là đơn trị, không chứa nhóm lặp
Không có một thuộc tính nào có giá trị có thể tính toán được từ một thuộc tínhkhác
Trước tiên, ta nhận ra rằng bảng dữ liệu chưa có khóa chính nên ta thêm thuộctính “ID” là mã của film để làm khóa chính Đồng thời ta thực ta có thể thiết kế lạibảng dữ liệu trên bằng việc tiến hành tách các thuộc tính này ra một cột khác
Với Categories ta sẽ chia làm 3 cột: Categories 1, Categories 2, và Categories 3
CategoriesDrama, RomaceAction, Drama, Romance
Bảng 2.2 Bảng Categories trước khi chuẩn hóa 1NF
Categories 1 Categories 2 Categories 3
Trang 12Action Drama Romance
Bảng 2 2 Bảng Categories sau khi chuẩn hóa 1NF
Với Director ta cũng sẽ chia làm 3 cột: Director 1, Director 2
DirectorJonathan Foo, Phan Quang Binh Nguyen
Le Binh Giang, Phan Gia Nhat Linh
Bảng 2.2 Bảng Director trước khi chuẩn hóa 1NF
Director 1 Director 2Jonathan Foo Phan Quang Binh Nguyen
Le Binh Giang Phan Gia Nhat Linh
Bảng 2.2 Bảng Director sau khi chuẩn hóa 1NF
Còn với Actors ta cũng tách làm 4 cột với: Actor 1, Actor 2, Actor 3, Actor 4
Actors
Nu Yên-Khê Tran, Man San Lu, Thi Loc Truong, Anh Hoa Nguyen
Hoang Yen Chibi, Thanh Hien, Le Huynh, Nsut Le Thien
Bảng 2.2 Bảng Actors trước khi chuẩn hóa 1NF
Nu Yên-Khê Tran Man San Lu Thi Loc Truong Anh Hoa NguyenHoang Yen Chibi Thanh Hien Le Huynh Nsut Le Thien
Bảng 2.2 Bảng Actors sau khi chuảng hóa 1NF
Như vậy sau khi thực hiện tách các giá trị xong ta sẽ được bảng dữ liệu đạt dạngchuẩn 1NF với dạng: Film (ID, EnglishTitle, VietnameseTitle, Year, Categories 1,
Trang 13Categories 2, Categories 3, Rating, Votes, Gross, Director 1, Director 2, Actors 1,Actors 2, Actors 3, Actors 4)
Hình : Bảng dữ liệu sau khi chuẩn hóa 1NF
Bước 2: Chuẩn dạng 2NF
Quy tắc chuẩn hóa từ chuẩn 1NF thành 2NF:
Loại bỏ các thuộc tính không khóa phụ thuộc vào một bộ phận khóa chính vàtách ra thành một bảng riêng, khóa chính của bảng là bộ phận của khóa mà chúng phụthuộc vào
Các thuộc tính còn lại lập thành một quan hệ, khóa chính của nó là khóa chínhban đầu
Bảng dữ liệu mới mà ta thiết kế vẫn chưa đạt chuẩn 2NF nên ta thực hiện như sau:
Tách các thuộc tính ID, EnglishTitle, VietnameseTitle, Year Rating, Votes,Gross ra khỏi lược đồ quan hệ ban đầu ta được lược đồ quan hệ mới: Film (ID,EnglishTitle, VietnameseTitle, Year Rating, Votes, Gross)
Trang 14Hình Bảng dữ liệu Film mới
Do thuộc tính Categories không phụ thuộc vào khóa chính “ID” nên tacần phải tách Categories ra và tạo khóa chính “CID” mã Categories từ đó ta cólược đồ quan hệ mới: Categories (CID, Categories)
Hình Bảng dữ liệu Categories sau khi tách
Trang 15 Tách thuộc tính Director và thêm khóa chính “DID” mã Director từ đó ta đượclược đồ mới: Director (DID, Director)
Hình Bảng dữ liệu Director sau khi tách
Tách thuộc tính Actors và thêm khóa chính “AID” mã Actor từ đó ta được lược
đồ quan hệ mới: Actor (AID, Actors)
Trang 16Kết quả ta được:
Film (ID, EnglishTitle, VietnameseTitle, Year Rating, Votes, Gross)
Categories (CID, Categories)
Director (DID, Director)
Actors (AID, Actors)
Bước 3: Dạng chuẩn 3NF
Điều kiện:
Phải đạt chuẩn 2NF
Mọi thuộc tính không khóa phụ thuộc bắc cầu vào thuộc tính khóa (nghĩa là tất
cả các thuộc tính không khóa phải được suy ra trực tiếp từ thuộc tính khóa)
Quy tắc chuẩn hóa từ 2NF thành 3NF:
Loại bỏ các thuộc tính phụ thuộc bắc cầu ra khỏi quan hệ và tách chúng thànhquan hệ riêng có khóa chính là thuộc tính bắc cầu
Các thuộc tính còn lại lập thành một quan hệ có khóa chính là khóa ban đầu
Do đó ta thấy dữ liệu chưa đạt chuẩn 2 nên ta tiến hành thực hiện các bước như sau:
Trang 17 Tạo lược đồ quan hệ mới Film-Categories (ID, CID) trong đó “ID” là
mã Film “CID” là mã Categories
Hình Bảng dữ liệu Film-Categories
Tạo lược đồ quan hệ mới Film-Actor (ID, AID) trong đó “ID” là mã Film
“AID” là mã Actors
Hình Bảng dữ liệu Film-Actors
Trang 18 Tạo lược đồ quan hệ mới Film-Director (ID, DID) trong đó “ID” là mã Film
“DID” là mã Director
Hình Bảng dữ liệu Film-Director
Kết quả đạt được:
Film-Categories (ID, CID)
Film-Actor (ID, AID)
Film-Director (ID, DID)
CHƯƠNG 3: SƠ ĐỒ QUAN HỆ3.1 Các thành phần của sơ đồ quan hệ
Thuộc tính Mã Film
Tên Film tiếng Anh Tên Film tiếng Việt Length
Rating
Mã categoriesTên categories
Mã DirectorsTên Directors
Mã ActorsTên Actors
Trang 19Votes GrossMối quan hệ Mỗi bộ Film có thể thuộc nhiều thể loại.
Mỗi bộ Film có thể được sản xuất bởi nhiều nhà sản xuất
Mỗi bộ Film có nhiều diễn viên tham gia diễn xuất
Bảng 3 1: Các thành phần của sơ đồ quan hệ
Trong đó, giá trị của các thuộc tính:
Các thuộc tính đơn trị gồm: Mã Film, Tên Film tiếng Anh, Tên Film tiếng Việt, Length, Rating, Votes, Gross, Mã Categories, Tên Categories, Mã Directors, Tên Directors, Mã Actors, Tên Actors
Các thuộc tính đa trị gồm: Categories, Directors, Actors
3.2 Xây dựng mô hình bộ phim.
Thực thể FilmThuộc tính Mã Film
Tên Film tiếng Anh Tên Film tiếng Việt Length
Rating Votes Gross
Bảng 3 1 Các thành phần của mô hình phim
Trang 20Hình Mô hình của Film
3.3 Xây dựng mô hình thể loại phim
Thuộc tính Mã Categories
Tên Categories
Bảng 3 1 Các thành phần của mô hình thể loại bộ phim
Hình Mô hình Categories của Film
3.4 Xây dựng mô hình nhà sản xuất phim.
Thuộc tính Mã Directors
Tên Directors
Trang 21Bảng 3 1 Các thành phần của mô hình Director
Hình Mô hình Director
3.5 Xây dựng mô hình diễn viên.
Tên Actors
Bảng 3 1 Các thành phần của mô hình Actors
Hình Mô hình Actors
3.6 Xây dựng các mô hình quan hệ.
Mỗi bộ phim có thể thuộc nhiều thể loại -> Liên kết N - N
Mỗi bộ Film có thể được sản xuất bởi nhiều nhà sản xuất -> Liên kết N - N
Mỗi bộ Film có nhiều diễn viên tham gia diễn xuất -> Liên kết N - N
Trang 22Hình Mối quan hệ của các thuộc tính
Hình Diagram của các thuộc tính
3.7 Sơ đồ quan hệ thực thể.
Hình Sơ đồ quan hệ thực thể