Chương 5

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

Phần  1

Nội dung chính

ệ ề

Gi ớ T ng quan v Mô hình d li u quan h ổ i thi u v Mô hình d li u ữ ệ ữ ệ ề ệ

2

2/19

Tổng quan về Mô hình dữ liệu

3/19

Mô hình dữ liệu là gì?

ữ ệ

 Mô hình d li u (Data Model) là cách ký d li u hay thông tin. Nói ệ

ữ ệ

hi u đ mô t ả ữ ệ ể chung, nó g m có ba ph n: ồ  C u trúc c a d li u (Structure of the data) ủ  Các thao tác trên d li u (Operations on

ữ ệ

data)

 Các ràng bu c (Constraints) ộ

4/19

Tóm tắt lịch sử của các Mô hình dữ liệu

5/19

Tóm tắt lịch sử của các Mô hình dữ liệu

6/19

Tổng quan về Mô hình dữ liệu quan hệ

7/19

Quan hệ là gì?

Quan h (relation) là m t b ng hai chi u: ộ ả ề

ệ ộ ọ

 Các c t g i là các thu c tính (attribute) ộ  Các hàng g i là các b n ghi (record) hay b ộ ả

(tuple)

8/19

Quan hệ là gì?

Ví d : b ng Customers:

ụ ả ỗ ỗ ộ

ủ ộ thu c tính

CUSTOMER và đ

 M i hàng bi u di n cho m t CUSTOMER  M i c t bi u di n cho m t thu c tính c a ” ượ

ộ c g i là “ ọ

9/19

Lược đồ (Schema)

ộ ệ c đ c a m t quan h là thông tin v ề

L ượ c u trúc c a quan h đó ấ

ồ ủ ủ ồ ộ

ệ Nó bao g m tên và t p các thu c tính c a ủ ậ quan h đó, cùng m t s thông tin ràng ộ ố bu c c a các thu c tính.

c đ c a quan h ệ Customers ộ ồ ủ

ệ ủ ộ Ví d : L ụ ượ trên: ở  Customers(Customers ID, tax ID, name,

address)

10/19

Bộ và thành phần

ộ ủ ộ ệ ượ

c g i là ọ (record) M t hàng c a m t quan h đ m t ộ bộ (tuple) hay b n ghi ả

M t giá tr c a m t thu c tính trong m t ộ ộ

ộ ộ thành ph n ầ c g i là m t

11/19

ị ủ ộ b đ ọ ộ ượ (component)

Miền giá trị (Domains)

t c các

ậ ấ ả

ể ị ươ

Mi n giá tr c a m t thu c tính là t p t ộ giá tr mà thu c tính đó có th nh n ậ ng đ ề

ng v i khái ớ

ươ

ả ủ

ị ủ ộ Nên khái ni m mi n giá tr t ệ ni m ki u d li u (data type) ữ ệ ệ  m c cài đ t trong m t h qu n tr CSDL, thì ộ ệ ặ Ở ứ mi n giá tr c a các thu c tính c a m t quan h ệ ộ ị ủ ề c n ph i ch n sao cho n m trong s các ki u d ữ ằ ọ ầ li u mà h QT CSDL đó h tr ệ

ỗ ợ

12/19

Biểu diễn tương đương của quan hệ

ậ ệ ợ ộ

Quan h là t p h p c a các b (sets of ủ tuples), ch không ph i danh sách c a ả ứ các b (lists of tuples).

ộ Do v y, th t ậ ộ

ứ ự ủ ọ ộ ủ

ờ ế ọ ộ

13/19

c a các b trong quan h ệ KHÔNG quan tr ng, mà quan tr ng là n i ộ dung c a các b . Đ ng th i n u có 2 b ộ ồ có giá tr b ng nhau trên m i thu c tính thì ị ằ coi nh 1 b b th a. ộ ị ừ ư

Thể hiện của quan hệ

Th hi n c a quan h (instance of a relation) ệ

ủ ộ ủ

i m t th i ờ

ể ệ là t p các b c a quan h đó t ậ đi mể

ể ệ

ủ ệ

ả ổ

ậ ộ

ư

Th hi n c a m t quan h ph n ánh n i dung c a quan h đó, và nó thay đ i khi có các ủ thao tác c p nh t n i dung quan h nh thêm, s a hay xóa b . ử

14/19

Khóa của quan hệ

ệ ủ

ợ ặ Khóa (key) c a m t quan h r là m t ộ ộ ủ

ộ ậ ớ ộ ộ ủ ị ủ

ho c m t t p h p các thu c tính c a r, sao cho v i m t th hi n c a r, thì không ể ệ t n t i 2 b nào mà giá tr c a các thành ồ ạ ph n b ng nhau trên khóa. ầ ị ủ ỗ ộ ộ

15/19

Hay nói cách khác, giá tr c a các thành ph n trên Khóa c a m i b trong m t th ể hi n c a quan h r là duy nh t. ủ ệ ầ ệ ủ ấ

Khóa của quan hệ

c đ c a quan h : là khóa c a m i th hi n c a

 Có hai lo i Khóa c a quan h ạ ủ ộ ủ ượ

ủ ể ệ ồ ủ

ể ệ

 Khóa c a m t th hi n c a quan h  Khóa c a l QH đó  VD: v i th hi n ớ

ể ệ s1 c a quan h ủ

ệ Student sau:

ID_SV

Name

Address

Class

Nguy n Văn A

ĐT1

Hà n iộ

2009111 1

Nguy n H ng B

Qu ng ninh

ĐT2

2009111 2

Có các Khóa là: K1 = ID_SV K2 = Name K3 = Address

Tr n Lê C

Hà tây

ĐT1

2009111 3

B c giang

ĐT2

Võ Th Dị

2009111 4

16/19

Khóa của quan hệ

 VD: nh ng v i th hi n

ể ệ s2 c a quan h ủ

ư

ệ Student sau:

ID_SV

Name

Address

Class

20091111 Nguy n Văn A

ĐT1

Hà n iộ

20091112 Nguy n H ng B

Qu ng ninh

ĐT2

20091113 Nguy n Văn A

Hà tây

ĐT1

ĐT2

20091114 Võ Th Dị

Hà n iộ

thì ch còn m t Khóa là: ộ  K1 = ID_SV

 K1 = ID_SV là Khóa c a l

Còn K2 và K3 ch là Khóa c a th hi n s1

c đ Sinh viên, ủ ượ ể ệ ủ

17/19

Khóa của quan hệ

 Khóa c a th hi n thì ch a ch c đã là Khóa c a l

c

Tính ch t:ấ ủ

ể ệ

ủ ượ

ư

đồ

c đ thì cũng là Khóa c a m i th ể

Khóa c a l

ủ ượ ệ ồ

c đ không ph thu c vào n i dung c a ộ

 Còn Khóa c a l hi n c a quan h ủ ủ ượ ệ

quan h , còn khóa c a th hi n thì ph thu c ộ

ụ ể ệ

18/19

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

ế

19/19

CSDL quan h (Relational Database): Là t p h p các quan h và các ràng bu c ệ ậ ộ gi a chúng, mà có liên quan đ n m t h ộ ệ th ng thông tin (ph n m m) nào đó ầ ữ ố ề

Tóm tắt

thu c tính c a quan h

ệ.

ộ ủ

ượ

ủ ộ

i m t th i đi m ờ ủ

 C s d li u quan h = t p các quan h

 Quan h = ệ b ngả .  C t c a b ng = ộ  B = ộ hàng = b n ghi ả  L c đ QH = tên + t p các thu c tính ậ ồ  Th hi n c a QH = n i dung c a QH t ể ệ ộ  Khóa c a QH = t p con các thu c tính c a QH ậ ủ  Khóa c a th hi n ể ệ ủ  Khóa c a l c đ ồ ủ ượ ơ ở ữ ệ

20/19