


















Preview text:
Translated from English to Vietnamese - www.onlinedoctranslator.com
Hệ thống cơ sở dữ liệu
Chương 3 :Chuẩn hóa mô hình quan hệ Buổi 2: Dạng thông thường 1 Đề cương
1 Giới thiệu về dạng chuẩn
2 Quá trình chuẩn hóa 3 1NF, 2NF, 3NF 4 BCNF 1 2 Dạng thông thường
qQuá trình chuẩn hóa diễn ra thông qua một loạt các giai đoạn
được gọi là dạng chuẩn.
qDạng chuẩn thứ nhất (1NF), dạng chuẩn thứ hai
(2NF) và dạng chuẩn thứ ba (3NF).
qXét về mặt cấu trúc, 2NF tốt hơn 1NF, và 3NF tốt hơn 2NF.
qTrong hầu hết các mục đích thiết kế cơ sở dữ liệu doanh nghiệp, dạng chuẩn 3NF được sử dụng.
Đây là mức cao nhất bạn cần đạt được trong quá trình chuẩn hóa.
qMức độ chuẩn hóa cao nhất không phải lúc nào cũng là điều mong muốn nhất. 3
Quá trình chuẩn hóa 4
Dạng chuẩn thứ nhất (1NF)
qMột quan hệ ở dạng chuẩn thứ nhất (1NF) nếu:
§Không có thuộc tính đa giá trị hoặc nhóm lặp lại
trong bảng. Nói cách khác, mỗi giao điểm của hàng/
cột chỉ chứa một giá trị duy nhất, chứ không phải một
tập hợp các giá trị (Mỗi giá trị thuộc tính là nguyên tử)
§Một khóa chính đã được định nghĩa, khóa này duy nhất
xác định từng hàng trong mối quan hệ
qMọi mối quan hệđang ở trong 1stDạng chuẩn 5
Dạng chuẩn thứ nhất (1NF) qVí dụ: Bảng hóa đơn
Bảng có các thuộc tính đa giá trị, không nằm trong 1stdạng thông thường
Lưu ý: đây KHÔNG phải là một mối quan hệ 6
Dạng chuẩn thứ nhất (1NF)
qLoại bỏ các nhóm lặp lại
=>Hóa đơnbảng không có thuộc tính đa giá trị và các hàng duy nhất 7
Dạng chuẩn thứ nhất (1NF) qChọn khóa chính
Trong hàm INVOICE có bốn yếu tố quyết định, và mối quan
hệ phụ thuộc chức năng của chúng như sau:
§Khóa ứng cử viên duy nhất cho INVOICE là khóa tổng
hợp bao gồm các thuộc tính OrderID và ProductID.
=>Hóa đơn này ở dạng chuẩn 1NF, nhưng cấu trúc không được tốt. 8
Dạng chuẩn thứ nhất (1NF)
qNhững điểm bất thường trong bảng:
§Chèn– nếu sản phẩm mới được đặt hàng cho đơn hàng 1007 của
Khách hàng hiện tại, dữ liệu khách hàng phải được nhập lại, dẫn đến trùng lặp.
§Xóa–Nếu chúng ta xóa Bàn ăn khỏi Đơn hàng 1006,
Chúng tôi bị mất thông tin liên quan đến chất liệu hoàn thiện (gỗ tần bì tự nhiên) và
giá ($800.00) của mặt hàng này.
§Cập nhật– Việc thay đổi giá của sản phẩm có ID 4 yêu cầu cập nhật trong một số bản ghi
Tại sao những hiện tượng bất thường này lại tồn tại?
Vì có nhiều loại thực thể trong cùng một mối quan
hệ. Điều này dẫn đến sự trùng lặp và sự phụ thuộc
không cần thiết giữa các thực thể. 9
Dạng chuẩn thứ nhất (1NF)
qVí dụ: Bảng nhà cung cấp có ở dạng chuẩn 1NF không? 10
Dạng chuẩn thứ hai (2NF)
qMột quan hệ ở dạng chuẩn thứ hai (2NF) nếu: §Nó ở dạng chuẩn 1NF
§Không có sự phụ thuộc một phần nào.
qMỘTsự phụ thuộc chức năng một phầnTồn tại khi một thuộc
tính không phải khóa phụ thuộc vào một phần (nhưng không
phải toàn bộ) của khóa chính.
qNếu một bảng ở dạng chuẩn 1NF có khóa chính với một thuộc tính
duy nhất, thì nó tự động ở dạng chuẩn 2NF. 11
Dạng chuẩn thứ hai (2NF)
qSơ đồ phụ thuộc chức năng cho HÓA ĐƠN
§Khóa chính cho mối quan hệ là (Mã đơn hàng, Mã sản phẩm)
§Cócác phụ thuộc một phần sau
Do đó, nó KHÔNG nằm trong mục 2.vàDạng chuẩn 12
Dạng chuẩn thứ hai (2NF)
qĐể chuyển đổi một quan hệ có phụ thuộc một phần
sang dạng chuẩn 2NF, cần thực hiện các bước sau:
1. Tạo một quan hệ mới cho mỗi thuộc tính khóa chính (hoặc
tổ hợp các thuộc tính) là yếu tố quyết định trong một phụ
thuộc từng phần. Thuộc tính đó là khóa chính trong quan hệ mới.
2. Di chuyển các thuộc tính không phải khóa nhưng phụ
thuộc vào thuộc tính (hoặc các thuộc tính) khóa chính
này từ bảng cũ sang bảng mới. 13
Dạng chuẩn thứ hai (2NF)
qLoại bỏ các phụ thuộc một phần
Các phụ thuộc một phần được loại bỏ, nhưng
vẫn còn các phụ thuộc bắc cầu. 14 Bài tập
qVí dụ 1: Xét một quan hệ R(A,B,C,D) với
F = { AB -> C, A -> D}. Kiểm tra xem R có ở dạng chuẩn 2NF hay không.
=> AB là khóa ứng cử viên duy nhất. Tại sao?
A và B được gọi là các thuộc tính chính, còn C và D là các thuộc tính không chính.
AB -> C thỏa mãn dạng chuẩn 2NF. Nhưng A -> D là sự phụ thuộc một phần.
Vì vậy, R không ở dạng chuẩn 2NF. Do đó, phân rã quan hệ thành 2 quan
hệ R1(MỘT ,B ,C) và R2(MỘT , D). R1,R2 ở dạng chuẩn 2NF. 15 Bài tập
Hãy xem xét các quan hệ sau, kiểm tra xem chúng có ở dạng chuẩn 2NF hay
không. Nếu không, hãy phân rã chúng thành dạng chuẩn 2NF.
qVí dụ 2: Quan hệ R(A,B,C,D) và F = { AB -> C, B -> D}.
qVí dụ 3: Quan hệ R(A,B,C,D,E) và
F = { AB -> C, A -> D, B -> E}. 16
Dạng chuẩn thứ ba (3NF)
qMột quan hệ ở dạng chuẩn thứ ba (3NF) nếu: §Nó ở dạng chuẩn 2NF
§Không cósự phụ thuộc bắc cầu.
qMỘTsự phụ thuộc bắc cầuTrong một mối quan hệ, tồn tại một
sự phụ thuộc chức năng giữa khóa chính và một hoặc nhiều
biến khác.Các thuộc tính không phải khóa phụ thuộc vào khóa
chính thông qua một thuộc tính không phải khóa khác.
qNói cách khác, tồn tại một sự phụ thuộc bắc cầu khi một
không phải phímthuộc tính có thể xác định một thuộc tính không phải khóa khác. 17
Dạng chuẩn thứ ba (3NF)
qCó 2 mối quan hệ phụ thuộc bắc cầu trong quan hệ CustomerOrder:
§Cả CustomerName và CustomerAddress đều là các thông tin duy nhất.
Được xác định bằng CustomerID nhưng CustomerID không phải là một phần của khóa chính. 18
Dạng chuẩn thứ ba (3NF)
qLoại bỏ các phụ thuộc bắc cầu bằng các bước sau:
1. Đối với mỗi thuộc tính không phải là khóa nhưng là yếu tố quyết định
trong một quan hệ,tạo ra một mối quan hệ mới.Thuộc tính đó trở
thành khóa chính của quan hệ mới.
2. Chuyển tất cả các thuộc tính phụ thuộc chức năng
vào khóa chính của bảng mới từ bảng cũ sang bảng mới.
3. Khóa chính trong quan hệ mớiđóng vai trò như một khóa ngoạitrong mối quan hệ cũ. 19
Dạng chuẩn thứ ba (3NF)
qKết quả của việc áp dụng các bước vào mối quan hệ Khách hàngĐơn hàng
Quan hệ CustomerOrder được chia thành 2 quan hệ:
Customer và Order => Các quan hệ này ở dạng chuẩn 3NF 20
