Bài 5 CHUẨN HÓA CƠ SỞ DỮ LIỆU - Pdf 13

Bài 5:
CHUẨN HÓA CƠ SỞ DỮ LIỆU
Giới thiệu ngôn ngữ SQL
Giới thiệu Oracle SQL
Tìm hiểu các nhóm ngôn ngữ của SQL
Hệ thống bài cũ
Giới thiệu ngôn ngữ SQL
Giới thiệu Oracle SQL
Tìm hiểu các nhóm ngôn ngữ của SQL
Slide 5 -Chuẩn hóa cơ sở dữ liệu
2
Các bất thường khi cập nhật dữ liệu
Giải thích sự cần thiết phải chuẩn hóa dữ liệu
Tìm hiểu một số khái niệm:
Khóa của quan hệ
Phụ thuộc hàm
Tìm hiểu quy trình chuẩn hóa CSDL
Tìm hiểu 3 dạng chuẩn: 1NF, 2NF, 3NF
Trình tự chuẩn hóa theo 3 dạng chuẩn
Tìm hiểu khái niệm khử chuẩn
Mục tiêu bài học hôm nay
Các bất thường khi cập nhật dữ liệu
Giải thích sự cần thiết phải chuẩn hóa dữ liệu
Tìm hiểu một số khái niệm:
Khóa của quan hệ
Phụ thuộc hàm
Tìm hiểu quy trình chuẩn hóa CSDL
Tìm hiểu 3 dạng chuẩn: 1NF, 2NF, 3NF
Trình tự chuẩn hóa theo 3 dạng chuẩn
Tìm hiểu khái niệm khử chuẩn
Slide 5 -Chuẩn hóa cơ sở dữ liệu

Slide 5 -Chuẩn hóa cơ sở dữ liệu
6
Mục đích của chuẩn hóa CSDL là nhóm các thuộc tính
vào các quan hệ nhằm giảm thiểu dư thừa dữ liệu,
loại bỏ các bất thường khi cập nhật CSDL.
-> Cần có các bước chuẩn hoá dữ liệu từ một CSDL chưa
chuẩn hóa sang chuẩn hóa.
Dạng chưa chuẩn hóa (unnormalized form - UNF): quan
hệ chưa chuẩn hóa là quan hệ chứa các bộ dữ liệu bị lặp
lại giá trị.
Sự cần thiết phải chuẩn hóa CSDL
Mục đích của chuẩn hóa CSDL là nhóm các thuộc tính
vào các quan hệ nhằm giảm thiểu dư thừa dữ liệu,
loại bỏ các bất thường khi cập nhật CSDL.
-> Cần có các bước chuẩn hoá dữ liệu từ một CSDL chưa
chuẩn hóa sang chuẩn hóa.
Dạng chưa chuẩn hóa (unnormalized form - UNF): quan
hệ chưa chuẩn hóa là quan hệ chứa các bộ dữ liệu bị lặp
lại giá trị.
Slide 5 -Chuẩn hóa cơ sở dữ liệu
7
Bảng hóa đơn (INVOICE) ở trên biểu diễn dưới dạng bảng như sau.
Bảng này ở dạng không chuẩn
Ví dụ
Slide 3 - Truy vấn cơ sở dữ liệu trên form
8
Bảng này được chuẩn hóa bằng cách tách thành hai bảng như sau:
Ví dụ
Slide 3 - Truy vấn cơ sở dữ liệu trên form
9

nghĩa trên R nếu: ∀ t1, t2 ∈ r(R): t
1
(X) = t
2
(X) ⇒ t
1
(Y) = t
2
(Y)
Ví dụ:
Quan hệ SINHVIEN: MASV, HOTENSV, NAMSINH có phụ thuộc
MASV, HOTENSV  NAMSINH
Khái niệm phụ thuộc hàm
Định nghĩa cách khác:
Cho r là một quan hệ được định nghĩa trên lượt đồ quan hệ R.
X và Y là hai tập con (khác rỗng) các thuộc tính của R. Ta nói X
xác định hàm Y, ký hiệu: X  Y là một phụ thuộc hàm định
nghĩa trên R nếu: ∀ t1, t2 ∈ r(R): t
1
(X) = t
2
(X) ⇒ t
1
(Y) = t
2
(Y)
Ví dụ:
Quan hệ SINHVIEN: MASV, HOTENSV, NAMSINH có phụ thuộc
MASV, HOTENSV  NAMSINH
Slide 5 -Chuẩn hóa cơ sở dữ liệu

Dạng chuẩn 3 (3NF)
Chuẩn hóa CSDL
Chuẩn hóa 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 các lược đồ
quan hệ thoả mãn 2 tính chất:
Trùng lắp dữ liệu ít nhất
Khả năng gây ra bất thường khi cập nhật được giảm thiểu.
Các dạng chuẩn:
Dạng chuẩn 1 (1NF)
Dạng chuẩn 2 (2NF)
Dạng chuẩn 3 (3NF)
Slide 5 -Chuẩn hóa cơ sở dữ liệu
14
Xét bảng dữ liệu đơnvị sau:
Ta thấy trường ĐịaĐiểm của đơn vị 5 chứa các thuộc tính đa trị
(nhiều hơn 1 giá trị) có 3 nơi là: Nam Định, Hà Nội, Bắc Ninh vì
vậy bảng dữ liệu này chưa đạt dạng chuẩn hóa.
Ví dụ 1 dạng chưa chuẩn
Xét bảng dữ liệu đơnvị sau:
Ta thấy trường ĐịaĐiểm của đơn vị 5 chứa các thuộc tính đa trị
(nhiều hơn 1 giá trị) có 3 nơi là: Nam Định, Hà Nội, Bắc Ninh vì
vậy bảng dữ liệu này chưa đạt dạng chuẩn hóa.
Slide 5 -Chuẩn hóa cơ sở dữ liệu
15
Xét bảng dữ liệu NHÂN VIÊN_DỰÁN:
Ta thấy nhóm thuộc tính {Tênnhânviên, sốgiờ} bị lặp lại nhiều lần
trong các dự án khác nhau. Vì vậy cơ sở dữ liệu này chưa đạt
chuẩn hóa.
Ví dụ 2 dạng chưa chuẩn
Xét bảng dữ liệu NHÂN VIÊN_DỰÁN:

nhóm lặp.
Không có một thuộc tính nào có giá trị mà có thể tính toán được
từ một số thuộc tính khác.
Slide 5 -Chuẩn hóa cơ sở dữ liệu
18
Ví dụ 1: Một lược đồ quan hệ đạt chuẩn 1NF
Dạng chuẩn 1 (1NF)
MSKH TÊNKH TP PVC MSMH TÊNMH ĐG SL
S1
S1
S1
S2
S2
S3
S4
An
An
An
Hòa
Hoà
Thanh
Trang
HCM
HCM
HCM
HN
HN
NT
NT
01

100
300
200
210
Slide 5 -Chuẩn hóa cơ sở dữ liệu
19
S1
S1
S1
S2
S2
S3
S4
An
An
An
Hòa
Hoà
Thanh
Trang
HCM
HCM
HCM
HN
HN
NT
NT
01
01
01

200
210
Ví dụ 2: Quan hệ sau được chuẩn hóa về dạng chuẩn 1
Dạng chuẩn 1 (1NF)
Họ Tên
Nguyễn Văn
Trần Duy
Hưng
An
Họ và tên
Họ Tên
Không nguyên tố
nguyên tố
Slide 5 -Chuẩn hóa cơ sở dữ liệu
20
Nguyễn Văn
Trần Duy
Hưng
An
Họ và tên
Nguyễn Văn Hưng
Trần Duy An
Họ Tên
Nguyễn Văn
Trần Duy
Hưng
An
nguyên tố
Nguyên tắc chung: Loại bỏ thuộc tính lặp hoặc đa trị
Các bước thực hiện:

Cho bảng NHÂNVIÊN_DỰÁN
Quan hệ này là R(MãsốDA, TênDA, {Tênnhânviên, Số giờ} )
Thuộc tính lặp là {Tênnhânviên, Số giờ} quan hệ được tách thành:
R1(MãsốĐV, Tênnhânviên, Số giờ)
R2(MãsốĐV, TênDA)
Ví dụ 2 đưa bảng dữ liệu về dạng chuẩn 1NF
Cho bảng NHÂNVIÊN_DỰÁN
Quan hệ này là R(MãsốDA, TênDA, {Tênnhânviên, Số giờ} )
Thuộc tính lặp là {Tênnhânviên, Số giờ} quan hệ được tách thành:
R1(MãsốĐV, Tênnhânviên, Số giờ)
R2(MãsốĐV, TênDA)
Slide 5 -Chuẩn hóa cơ sở dữ liệu
23
Xét bảng INVOICE được viết thành quan hệ sau (thêm Invoice Number làm
thuộc tính khóa cho bảng Invoice vì mỗi hóa đơn có Số hóa đơn là Khóa)
R(Invoice Number (PK), Customer Number, Customer Name, Customer
Address, Customer City, Customer State, Customer Zip Code, Customer
Phone, Terms, Ship Via, Order Date, {Product Number, Product Description,
Quantity, Unit Price, Extended Amount, Total Order Amount })
Thuộc tính lặp được bôi đỏ và đặt trong dấu { } quan hệ được tách
R1-INVOICE (Invoice Number (PK), Product Number,
Product Description, Quantity, Unit Price, Extended Amount,
Total Order Amount)
R2-INVOICE LINE ITEM (Invoice Number (PK), Customer
Number, Customer Name, Customer Address, Customer City,
Customer State, Customer Zip Code, Customer Phone, Terms,
Ship Via, Order Date)
Ví dụ 3 đưa bảng dữ liệu về dạng chuẩn 1NF
Xét bảng INVOICE được viết thành quan hệ sau (thêm Invoice Number làm
thuộc tính khóa cho bảng Invoice vì mỗi hóa đơn có Số hóa đơn là Khóa)


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status