1. Trang chủ
  2. » Giáo án - Bài giảng

Bài giảng slide cơ sở dữ liệu_BKA_C5:Mô hình dữ liệu quan hệ và thiết kế cơ sở dữ liệu luận lý.

72 1,2K 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Mô hình dữ liệu quan hệ và thiết kế cơ sở dữ liệu luận lý
Tác giả Nguyễn Trung Trực
Trường học Khoa CNTT
Thể loại bài giảng
Năm xuất bản 2006
Định dạng
Số trang 72
Dung lượng 1,59 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài giảng slide cơ sở dữ liệu_BKA_C5:Mô hình dữ liệu quan hệ và thiết kế cơ sở dữ liệu luận lý.

Trang 1

Chương 5

Mô hình dữ liệu quan hệ

và thiết kế CSDL luận lý

Trang 3

Các khái niệm và định nghĩa

™ Cơ sơ dữ liệu quan hệ

Trang 4

Các khái niệm và định nghĩa

Trang 5

f Tên thuộc tính (attribute name) phân biệt.

f Miền trị của thuộc tính.

f Giá trị rỗng (null value).

Trang 6

Thuộc tính

Nhà cung cấp có các thuộc tính:

- Mã nhà cung cấp có tên là Snum.

- Tên nhà cung cấp có tên là Name.

- Thành phố có tên là City.

Miền trị của thuộc tính city được ký hiệu là dom(City).

Trang 7

Quan hệ

™ Lược đồ quan hệ

f relation schema

f Lược đồ quan hệ R là một tập hữu hạn các

thuộc tính {A1, A2, , A n } và được ký hiệu là R (A1, A2, , A n ) với R là tên của lược đồ quan

Trang 8

Lược đồ quan hệ: Supplier (Snum, Name, City)

Vị từ: “Mỗi nhà cung cấp có một mã nhà cung cấp Snum phân

biệt, tên nhà cung cấp Name, thuộc thành phố City”.

Bậc: 3

Trang 11

Quan hệ

™ Các đặc tính của quan hệ

f Tên quan hệ phân biệt.

f Thuộc tính của quan hệ là thuộc tính đơn trị

(single-valued attribute).

f Tên thuộc tính phân biệt.

f Các giá trị của một thuộc tính phải thuộc cùng một miền.

f Thứ tự của các thuộc tính là không quan trọng.

f Mỗi bộ phải phân biệt.

f Thứ tự của các bộ là không quan trọng.

Trang 12

Quan hệ

f Mỗi hàng là duy nhất.

f Thứ tự của các hàng là không quan trọng.

f Thứ tự của các cột là không quan trọng.

f Không phải mọi bảng đều là quan hệ.

Trang 13

Quan hệ

Lược đồ quan hệ: Supplier (Snum, Name, City)

Khóa: Snum

Thuộc tính không khóa: Name, City

Siêu khóa: {Snum, Name}, …

Quan hệ: Supplier

S1 Nguyễn Trung Tiến SF

Bộ: u = (‘S1’, ‘Nguyễn Trung Tiến’, ‘SF’)

Trang 14

phân biệt và nằm trong khoảng từ 1 đến m,

phải thỏa mãn đồng thời hai điều kiện sau đây:

(1) ∀r(R), ∀t1, t2 ∈ r, nếu t1 ≠ t2 thì t1[K] ≠ t2[K] (2) Không tồn tại K’ ⊂ K sao cho K’ thỏa mãn

điều kiện (1).

Trang 15

Quan hệ

™ Khóa

f Khóa đơn (simple key).

f Khóa phức hợp (composite key).

f Siêu khóa (superkey) của R Một siêu khóa hiển nhiên của R là U.

f Một lược đồ quan hệ R phải có ít nhất một

khóa và có thể có nhiều khóa.

f Thuộc tính khóa (prime attribute).

f Thuộc tính không khóa (nonprime attribute):

được gạch dưới.

Trang 16

Quan hệ

™ Khóa

f Khóa dự tuyển (candidate key).

f Khóa chính (primary key).

f Khóa ngoại (foreign key).

f Một lược đồ quan hệ chỉ có một khóa chính

và có thể có nhiều khóa dự tuyển.

f Khóa xí nghiệp (enterprise key).

Trang 17

Quan hệ

Primary Key

Foreign Key (implements 1:N relationship between customer and order)

Combined, these are a composite

primary key (uniquely identifies the

order line)…individually they are

foreign keys (implement M:N

relationship between order and product)

Trang 18

Quan hệ

Khóa xí nghiệp

Trang 19

Lược đồ cơ sở dữ liệu

™ Lược đồ cơ sở dữ liệu

Lược đồ cơ sở dữ liệu:

Emp (Empnum, Name, Sal, Tax, Mgrnum, Deptnum) Dept (Deptnum, Name, Area, Mgrnum)

Supplier (Snum, Name, City) Supply (Snum, Pnum, Deptnum, Quan)

Trang 20

f Toàn vẹn thực thể (entity integrity): thuộc tính khóa chính không có giá trị rỗng (null value).

f Các qui tắc nghiệp vụ.

Trang 21

Ràng buộc toàn vẹn

™ Ràng buộc toàn vẹn tham chiếu

f referential integrity constraint

f Ràng buộc toàn vẹn tham chiếu là một qui tắc mà tất cả các giá trị của khóa ngoại (nếu

khác null) trong quan hệ bên phía nhiều phải

có trong các giá trị của khóa chính trong

quan hệ bên phía một.

f Qui tắc xóa các hàng dữ liệu

y Hạn chế (restrict).

y Tầng (cascade).

y Gán null (set-to-null).

Trang 22

Ràng buộc toàn vẹn

Referential integrity constraints are drawn via arrows from

dependent to parent table

Ví dụ về ràng buộc toàn vẹn tham chiếu

Trang 23

Biến đổi ERD thành các quan hệ

một quan hệ.

f Kiểu thực thể thông thường (regular entity type)

f Kiểu thực thể yếu (weak entity type)

f Thuộc tính của quan hệ.

f Thuộc tính phức hợp.

f Thuộc tính đa trị.

Trang 24

Biến đổi ERD thành các quan hệ

CUSTOMER entity type with

composite attribute

CUSTOMER relation with address detail

Biến đổi thuộc tính phức hợp

Trang 25

Biến đổi ERD thành các quan hệ

NOTE: the domain constraint for the

foreign key should NOT allow null

value if DEPENDENT is a weak entity Foreign key

Trang 26

Biến đổi ERD thành các quan hệ

một quan hệ.

f Thuộc tính của quan hệ.

f Khóa của quan hệ.

Trang 27

Biến đổi ERD thành các quan hệ

Multivalued attribute

becomes a separate

relation with foreign key

1–to–many relationship between original entity and new relation

Trang 28

Biến đổi ERD thành các quan hệ

hoặc 2-ngôi có lượng số một-một.

Trang 29

Biến đổi ERD thành các quan hệ

Trang 30

Biến đổi ERD thành các quan hệ

hoặc 2-ngôi có lượng số một-nhiều.

Trang 31

Biến đổi ERD thành các quan hệ

Note the mandatory one

Again, no null value in the foreign key…this is

because of the mandatory minimum cardinality

Trang 32

Biến đổi ERD thành các quan hệ

2-ngôi có lượng số nhiều-nhiều thành một quan hệ.

f Khóa của quan hệ

f Thuộc tính của quan hệ.

Trang 33

Biến đổi ERD thành các quan hệ

Trang 34

Biến đổi ERD thành các quan hệ

thành một quan hệ.

f Khóa của quan hệ

f Thuộc tính của quan hệ.

Trang 35

Biến đổi ERD thành các quan hệ

Trang 36

Biến đổi ERD thành các quan hệ

Biến đổi mối liên kết ba ngôi

Trang 37

Biến đổi ERD thành các quan hệ

thành một quan hệ.

f Thuộc tính của quan hệ.

f Thực thể kết hợp không có khóa riêng.

f Thực thể kết hợp có khóa riêng.

Trang 38

Biến đổi ERD thành các quan hệ

Biến đổi kiểu thực thể kết hợp có khóa riêng

Trang 39

Biến đổi ERD thành các quan hệ

™ Qui tắc 8: Biến đổi kiểu thực thể cha / kiểu thực thể con.

f Cách 1 - Kiểu thực thể cha và các kiểu thực thể con được biến đổi thành một quan hệ.

f Cách 2 - Mỗi kiểu thực thể con được biến đổi thành một quan hệ.

f Cách 3 - Kiểu thực thể cha được biến đổi thành một quan hệ kiểu cha; mỗi kiểu thực thể con được biến đổi thành một quan hệ kiểu con.

y Qui tắc tách biệt.

Trang 40

Chuẩn hóa dữ liệu

™ Chuẩn hóa dữ liệu

y Có sự dư thừa dữ liệu là tối thiểu.

y Thêm vào, cập nhật và xóa bỏ dữ liệu mà không gây ra sự mâu thuẫn dữ liệu.

y Loại bỏ các bất thường (anomaly) của một quan

hệ để có được các quan hệ có cấu trúc tốt hơn, nhỏ hơn.

Trang 41

Chuẩn hóa dữ liệu

một lược đồ quan hệ:

f Bất thường do sự lặp lại (repetition anomaly)

f Bất thường khi cập nhật (update anomaly)

f Bất thường khi thêm vào (insertion anomaly)

f Bất thường khi xóa bỏ (deletion anomaly)

Trang 42

Chuẩn hóa dữ liệu

Supply

Bất thường do sự lặp lại

Trang 43

Các bước của

Trang 44

thuộc hàm vào X”, ký hiệu là X → Y và được

∀u, v ∈ r: u[X] = v[X] ⇒ u[Y] = v[Y]

tức là, với mỗi giá trị của X trong r chỉ tương ứng với một giá trị của Y.

f Khóa của một quan hệ xác định hàm các thuộc tính không khóa của quan hệ này.

Trang 45

f partial functional dependency

f X → A được gọi là phụ thuộc hàm riêng phần

nếu tồn tại Y ⊂ X để cho Y → A.

™ Phụ thuộc hàm đầy đủ

f full functional dependency

Trang 46

Phụ thuộc hàm

™ Phụ thuộc bắc cầu

f transitive dependency

f X → A được gọi là phụ thuộc bắc cầu nếu tồn

tại Y để cho X → Y, Y → A, Y −/→ X và A ∉ XY.

Trang 47

Hệ luật suy diễn Armstrong

™ Hệ luật suy diễn Armstrong

Trang 48

Bao đóng

™ Bao đóng của tập phụ thuộc hàm

f Cho F là một tập phụ thuộc hàm trong r(R).

f Bao đóng (closure) của tập phụ thuộc hàm F,

diễn Armstrong để tạo ra một phụ thuộc hàm

không thuộc tập hợp này.

vào lược đồ quan hệ R.

Trang 49

Bao đóng

™ Bao đóng của tập thuộc tính

f Bao đóng của tập thuộc tính X dựa trên tập phụ thuộc hàm F (closure of X under F), ký hiệu là X+

F , là một tập thuộc tính Y sao cho:

Trang 50

™ Giải thuật tìm X+

F

Bao đóng

Nhập: Tập thuộc tính X và tập phụ thuộc hàm F.

Xuất: Bao đóng của X dựa trên tập F.

procedure Closure (X, F, Closure_X);

Trang 51

Bài toán thành viên

™ Bao hàm

f implies

f Một tập phụ thuộc hàm F bao hàm phụ thuộc

hàm X → Y, ký hiệu là F |= X → Y, nếu mọi

quan hệ thỏa mãn tất cả các phụ thuộc hàm trong F thì cũng thỏa mãn X → Y.

Trang 52

™ Giải thuật kiểm tra F bao hàm phụ thuộc hàm X → Y

Bài toán thành viên

Nhập: Phụ thuộc hàm X → Y và tập phụ thuộc hàm F

Xuất: true nếu F |= X → Y, ngược lại là false

function Member (X, Y, F );

begin

if Y ⊆ Closure (X, F ) then Member := true

else Member := false;

end;

Trang 53

Khóa của quan hệ

Nhập: Tập thuộc tính U của lược đồ quan hệ R

và tập phụ thuộc hàm F.

Xuất: Tập các khóa K của R.

Trang 54

Khóa của quan hệ

Gọi left(f) là vế trái, right(f) là vế phải của phụ thuộc hàm f.

K := K − {K j}

R có tập khóa là K.

Trang 55

Khóa của quan hệ

procedure set_of_keys (U, F, K);

Trang 56

Dạng chuẩn 1

™ Định nghĩa

Lược đồ quan hệ R ở dạng chuẩn 1 (1NF

-First Normal Form) nếu mọi thuộc tính của R

đều chứa các giá trị nguyên tố (atomic value), giá trị này không là một danh sách các giá trị hoặc các giá trị phức hợp (composite value).

™ Các bất thường của quan hệ ở 1NF

f Thêm vào

f Cập nhật

f Xóa bỏ

f Nguyên nhân

Trang 58

Lược đồ quan hệ R ở 1NF vì các thuộc tính của R không là thuộc

tính đa trị, không là thuộc tính phức hợp.

Trang 59

Dạng chuẩn 2

™ Định nghĩa

Lược đồ quan hệ R ở dạng chuẩn 2 (2NF

-Second Normal Form) đối với tập phụ thuộc

hàm F nếu R ở dạng chuẩn 1 và mọi thuộc

tính không khóa đều phụ thuộc hàm đầy đủ

vào mọi khóa của R.

™ Các bất thường của quan hệ ở 2NF

f Thêm vào

f Cập nhật

f Xóa bỏ

f Nguyên nhân

Trang 61

Khóa của R 2 : {Mãsv, Mônhọc}

R (Mãsv, Mônhọc, Họtên, Mãlớp, Tênlớp, Điểm)

R 1 (Mãsv, Họtên, Mãlớp, Tênlớp)

R 2 (Mãsv, Mônhọc, Điểm)

Trang 62

Dạng chuẩn 3

™ Định nghĩa 1

Lược đồ quan hệ R ở dạng chuẩn 3

(3NF-Third Normal Form) đối với tập phụ thuộc

hàm F nếu R ở dạng chuẩn 1 và mọi thuộc

tính không khóa đều không phụ thuộc bắc

cầu vào một khóa của R.

™ Định nghĩa 2

Lược đồ quan hệ R ở dạng chuẩn 3 đối với tập phụ thuộc hàm F nếu R ở dạng chuẩn 1

và mọi phụ thuộc hàm X → A với A ∉ X thì X

là một siêu khóa của R hoặc A là một thuộc

tính khóa.

Trang 63

Lược đồ quan hệ R1 không ở 3NF vì thuộc tính không khóa

Tênlớp phụ thuộc bắc cầu vào khóa Mãsv.

Mãsv → Mãlớp Mãlớp → Tênlớp

Trang 65

Các phụ thuộc hàm: Khóa của R: {Sinhviên, Mônhọc}

{Sinhviên, Mônhọc} → Giảngviên

Lược đồ quan hệ R ở 3NF nhưng không ở BCNF vì định thuộc

Giảngviên không là siêu khóa của R.

Trang 67

Dạng chuẩn Boyce-Codd

™ Định nghĩa

Lược đồ quan hệ R ở dạng chuẩn BoyceCodd (BCNF - Boyce Codd Normal Form) đối với tập phụ thuộc hàm F nếu R ở dạng chuẩn 1 và mọi phụ thuộc hàm X → A

với A ∉ X thì X là một siêu khóa của R.

Boyce-Codd thì R cũng ở dạng chuẩn 3.

Trang 68

Khóa của R 1 : Giảngviên

Khóa của R 2 : {Sinhviên, Giảngviên}

R (Sinhviên, Mônhọc, Giảngviên)

R 1 (Giảngviên, Mônhọc)

R 2 (Sinhviên, Giảngviên)

Lược đồ quan hệ R1 và R2 đều ở BCNF vì mọi định thuộc đều là siêu khóa.

Trang 71

Phương pháp Phân rã

™ Phương pháp Phân rã (decomposition)

cho kết quả là một phân rã bảo toàn thông

tin ở dạng chuẩn Boyce-Codd.

™ Giải thuật Phân rã

Nhập: Tập thuộc tính U của lược đồ quan hệ R

và tập phụ thuộc hàm F (là phủ tối thiểu).

Xuất: Phân rã ρ của R là bảo toàn thông tin và ở

dạng chuẩn Boyce-Codd.

Ngày đăng: 08/11/2013, 21:38

HÌNH ẢNH LIÊN QUAN

Mô hình dữ liệu quan hệ - Bài giảng slide cơ sở dữ liệu_BKA_C5:Mô hình dữ liệu quan hệ và thiết kế cơ sở dữ liệu luận lý.
h ình dữ liệu quan hệ (Trang 1)
được lưu trữ trong các bảng. - Bài giảng slide cơ sở dữ liệu_BKA_C5:Mô hình dữ liệu quan hệ và thiết kế cơ sở dữ liệu luận lý.
c lưu trữ trong các bảng (Trang 3)

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w