Tải bản đầy đủ (.pdf) (36 trang)

Bài giảng môn Cơ sở dữ liệu: Chương 3 - Mô hình quan hệ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (741.79 KB, 36 trang )

CHƯ Ơ NG 3
MƠ HÌNH QUAN HỆ

Phiên bả n 2013


Tài liệ u tham khả o
[ 1] Đỗ Phúc, Nguyễ n Đăng Tỵ .
Giáo trình cơ sở dữ liệ u.
Đạ i họ c Quố c gia Tp.HCM.
[ 2] Đồ ng Thị Bích Thủ y.
Giáo trình cơ sở dữ liệ u.
Đạ i họ c Quố c gia Tp.HCM.
[ 3] Trầ n Ngọ c Bả o.
Slide bài giả ng CSDL
Đạ i họ c Sư Phạ m TP.HCM
[ 4] Lê Minh Triế t.
Slide bài giả ng CSDL
Đạ i họ c Sư Phạ m TP.HCM
3/ 5/ 2013

2


Nộ i dung
1. Giớ i thiệ u về mơ hình quan hệ
2. Các khái niệ m củ a mơ hình quan hệ
3. Ràng buộ c toàn vẹ n
4. Các đặ c trư ng củ a quan hệ
5. Chuyể n lư ợ c đồ E/ R sang quan hệ


3/ 5/ 2013

3


1. Giớ i thiệ u về mơ hình quan hệ
Đư ợ c đề xuấ t bở i Dr. E F Codd năm 1970.
“A Relation Model for Large Shared Data Banks”,
Communications of ACM, 6/ 1970

Cung cấ p cấ u trúc dữ

liệ u đơ n giả n, đồ ng bộ

Khái niệ m “Quan hệ ”

Nề n tả ng lý thuyế t vữ ng chắ c:
Lý thuyế t tậ p hợ p

Là cơ sở củ a hầ u hế t DBMS thư ơ ng mạ i
Oracle, DB2, SQL Server, ...

3/ 5/ 2013

4


2. Các khái niệ m củ a mơ hình quan hệ
Quan hệ ( Relation)
Thuộ c tính ( Attribute)

Lư ợ c đồ ( Schema)
Bộ ( Tuple)
Miề n giá trị ( Domain)

3/ 5/ 2013

5


2. Các khái niệ m củ a mơ hình quan hệ
Các thông tin lư u trữ trong CSDL đư ợ c tổ
chứ c thành bả ng ( table) gọ i là quan hệ
Quan hệ

1 cộ t là 1 thuộ c tính củ a nhân viên

TENNV

HONV

NS

DI ACHI

GT

LUONG

PHG


Tung

Nguyen

12/ 08/ 1955

638 NVC Q5

Nam

40000

5

Hang

Bui

07/ 19/ 1968

332 NTH Q1

Nu

25000

4

Nhu


Le

06/ 20/ 1951

291 HVH QPN

Nu

43000

4

Hung

Nguyen

09/ 15/ 1962

Ba Ria VT

Nam

38000

5

1 dòng là 1 nhân viên

Tên quan hệ là NHANVI EN


3/ 5/ 2013

6


2. Các khái niệ m củ a mơ hình quan hệ
Quan hệ r gồ m:

Quan hệ

– Tên
– Tậ p hợ p các cộ t
• Cố đị nh
• Đư ợ c đặ t tên
• Có kiể u dữ

liệ u

– Tậ p hợ p các dịng
• Thay đổ i theo thờ i gian
• Sự thay đổ i phụ thuộ c vào ngư ờ i sử

Mỗ i dòng ~ Mộ t thự c thể ( đố

dụ ng

i tư ợ ng ở thế giớ i thự c)

Quan hệ ~ Tậ p các thự c thể
3/ 5/ 2013


7


2. Các khái niệ m củ a mơ hình quan hệ
Thuộ c tính
Tên các cộ t củ a quan hệ
Mơ tả ý nghĩa cho các giá trị tạ i cộ t đó
Thuộ c tính

TENNV

HONV

NS

DI ACHI

GT

LUONG

PHG

Tung

Nguyen

12/ 08/ 1955


638 NVC Q5

Nam

40000

5

Hang

Bui

07/ 19/ 1968

332 NTH Q1

Nu

25000

4

Nhu

Le

06/ 20/ 1951

291 HVH QPN


Nu

43000

4

Hung

Nguyen

09/ 15/ 1962

Ba Ria VT

Nam

38000

5

Tấ t cả các dữ liệ u trong cùng 1 mộ t cộ t đề u
có dùng kiể u dữ liệ u
3/ 5/ 2013

8


2. Các khái niệ m củ a mơ hình quan hệ
Lư ợ c đồ quan hệ R
Tên củ a quan hệ

Tên củ a tậ p thuộ c tính
Lư ợ c đồ quan hệ

NHANVI EN( MANV, TENNV, HONV, NS, DI ACHI , GT, LUONG, PHG)

Là tậ p hợ p

3/ 5/ 2013

9


2. Các khái niệ m củ a mơ hình quan hệ
Lư ợ c đồ CSDL
Gồ m nhiề u lư ợ c đồ quan hệ
Lư ợ c đồ CSDL

NHANVI EN( MANV, TENNV, HONV, NS, DI ACHI , GT, LUONG, PHG)
PHONGBAN( MAPHG, TENPHG, TRPHG, NG_NHANCHUC)
DI ADI EM_PHG( MAPHG, DI ADI EM)
THANNHAN( MA_NVI EN, TENTN, GT, NS, QUANHE)
DEAN( TENDA, MADA, DDI EM_DA, PHONG)

3/ 5/ 2013

10


2. Các khái niệ m củ a mơ hình quan hệ
Bộ (Tuple)

Là các dòng củ a quan hệ ( trừ

dòng tiêu đề -

tên củ a các thuộ c tính)
Thể

hiệ n dữ

liệ u cụ

thể

củ a các thuộ c tính

trong quan hệ
< Tung, Nguyen, 12/ 08/ 1955, 638 NVC, Q5, Nam, 40000, 5>
Dữ liệ u cụ thể
củ a thuộ c tính

3/ 5/ 2013

11


2. Các khái niệ m củ a mơ hình quan hệ
Là tậ p các giá trị nguyên tố gắ n liề n vớ i mộ t
thuộ c tính
– Kiể u dữ


Miề n giá trị

liệ u cơ sở

• Chuỗ i ký tự ( string)
• Số ( integer)

– Các kiể u dữ





liệ u phứ c tạ p

Tậ p hợ p ( set)
Danh sách ( list)
Mả ng ( array)
Bả n ghi ( record)

Không đư ợ c chấ p nhậ n

Ví dụ
– TENNV: string
– LUONG: integer
3/ 5/ 2013

12



2. Các khái niệ m củ a mơ hình quan hệ
Đị nh nghĩa hình thứ c: Lư ợ c đồ quan hệ
Cho A1, A2, …, An là các thuộ c tính
Có các miề n giá trị D1, D2, …, Dn tư ơ ng ứ ng
Ký hiệ u R( A1:D1, A2:D2, …, An:Dn) là mộ t lư ợ c đồ quan hệ
Bậ c củ a lư ợ c đồ quan hệ là số lư ợ ng thuộ c tính trong lư ợ c đồ
NHANVI EN( MANV:integer, TENNV:string, HONV:string,
NGSI NH:date, DCHI :string, GT:string, LUONG:integer,
DONVI :integer)
– NHANVI EN là mộ t lư ợ c đồ bậ c 8 mô tả đố i tư ợ ng nhân viên
– MANV là mộ t thuộ c tính có miề n giá trị là số ngun
– TENNV là mộ t thuộ c tính có miề n giá trị là chuỗ i ký tự
3/ 5/ 2013

13


2. Các khái niệ m củ a mơ hình quan hệ
Đị nh nghĩa hình thứ c: quan hệ
Mộ t quan hệ r củ a lư ợ c đồ quan hệ R( A1, A2, …, An) ,
ký hiệ u r( R) , là mộ t tậ p các bộ r = { t1, t2, …, tk}
Trong đó mỗ i ti là 1 danh sách có thứ

tự

củ a n

giá trị ti= < v1, v2, …, vn>
Mỗ i vj là mộ t phầ n tử


củ a miề n giá trị DOM( Aj) hoặ c giá trị rỗ ng

TENNV

HONV

NGSI NH

DCHI

PHAI

LUONG

PHG

t1

Tung

Nguyen

12/ 08/ 1955

638 NVC Q5

Nam

40000


5

t2

Hang

Bui

07/ 19/ 1968

332 NTH Q1

Nu

25000

4

t3

Nhu

Le

06/ 20/ 1951

291 HVH QPN

Nu


43000

4

t4

Hung

Nguyen

09/ 15/ 1962

null

Nam

38000

5

vi
3/ 5/ 2013

14


2. Các khái niệ m củ a mơ hình quan hệ
Lư ợ c đồ quan hệ R bậ c n
– R( A1, A2, …, An)


Tậ p thuộ c tính củ a R
– R+ = { A1, A2 ,… , An}

Quan hệ ( thể hiệ n quan hệ )
– R, S, P, Q

Bộ
– t, u, v

Miề n giá trị củ a thuộ c tính A
– DOM( A) hay MGT( A)

Giá trị tạ i thuộ c tính A củ a bộ thứ

t

– t.A hay t[ A]
3/ 5/ 2013

15


3. Ràng buộ c tồn vẹ n
Siêu khóa ( Super key)
Khóa
Khóa chính ( Primary key)
Tham chiế u
Khóa ngoạ i ( Foreign key)
3/ 5/ 2013


16


3. Ràng buộ c toàn vẹ n
RBTV ( I ntegrity Constraint)
– Là nhữ ng qui tắ c, điề u kiệ n, ràng buộ c
cầ n đư ợ c thỏ a mãn trong mộ t thể

hiệ n

củ a CSDL quan hệ

RBTV đư ợ c mô tả khi đị nh nghĩa lư ợ c đồ
quan hệ
RBTV đư ợ c kiể m tra khi các quan hệ



thay đổ i
3/ 5/ 2013

17


3. Ràng buộ c toàn vẹ n
Các bộ

trong quan hệ

Siêu Khóa

phả i khác nhau từ ng

đơi mộ t
Siêu khóa ( Super Key)
– Gọ i SK là mộ t tậ p con khác rỗ ng các thuộ c tính
củ a R
– SK là siêu khóa khi

∀r, ∀ t1,t2∈r,

t1 ≠ t2



t1[ SK]

≠ t2[ SK]

– Siêu khóa là tậ p các thuộ c tính dùng để

xác đị nh

tính duy nhấ t củ a mỗ i bộ trong quan hệ
– Mọ i lư ợ c đồ quan hệ có tố i thiể u mộ t siêu khóa
3/ 5/ 2013

18


3. Ràng buộ c tồn vẹ n

Đị nh nghĩa

Khóa

– Gọ i K là mộ t tậ p con khác rỗ ng các thuộ c tính củ a R
– K là khóa nế u thỏ a đồ ng thờ i 2 điề u kiệ n
• K là mộ t siêu khóa củ a R
• ∀ K’ ⊂ K , K’ ≠ K , K’ khơng phả i là siêu khóa củ a R

Nhậ n xét
– Giá trị củ a khóa dùng để nhậ n biế t mộ t bộ trong
quan hệ
– Khóa là mộ t đặ c trư ng củ a lư ợ c đồ quan hệ , không
phụ thuộ c vào thể hiệ n quan hệ
– Khóa đư ợ c xây dự ng dự a vào ý nghĩa củ a mộ t số
thuộ c tính trong quan hệ
– Lư ợ c đồ quan hệ có thể có nhiề u khóa
3/ 5/ 2013

19


3. Ràng buộ c tồn vẹ n
Xét quan hệ

Khóa chính – Primary Key

NHANVI EN( MANV, TENNV, HONV, NS, DCHI , GT, LUONG, PHG)

– Có 2 khóa

• MANV
• HONV, TENNV, NS

– Khi cài đặ t quan hệ thành bả ng ( table)
• Chọ n 1 khóa làm cơ sở để nhậ n biế t các bộ
– Khóa có ít thuộ c tính hơ n

• Khóa đư ợ c chọ n gọ i là khóa chính
( PK - primary key)
– Các thuộ c tính khóa chính phả i có giá trị khác null
– Các thuộ c tính khóa chính thư ờ ng đư ợ c gạ ch dư ớ i
NHANVI EN( MANV, TENNV, HONV, NS, DCHI , GT, LUONG, PHG)
3/ 5/ 2013

20


3. Ràng buộ c toàn vẹ n
Mộ t bộ trong quan hệ R, tạ i thuộ c tính A
nế u nhậ n mộ t giá trị từ mộ t thuộ c tính B
củ a quan hệ S, ta gọ i R tham chiế u S
Bộ đư ợ c tham chiế u phả i tồ n tạ i trư ớ c
Tham chiế u
S

R

TENPHG

MAPHG


Nghien cuu

5

Dieu hanh

4

Quan ly

1

TENNV

HONV

NS

DCHI

GT

LUONG

PHG

Tung

Nguyen


12/ 08/ 1955

638 NVC Q5

Nam

40000

5

Hang

Bui

07/ 19/ 1968

332 NTH Q1

Nu

25000

4

Nhu

Le

06/ 20/ 1951


291 HVH QPN

Nu

43000

4

Hung

Nguyen

09/ 15/ 1962

Ba Ria VT

Nam

38000

5

3/ 5/ 2013

21


3. Ràng buộ c toàn vẹ n
Xét 2 lư ợ c đồ R và S


Khóa ngoạ i

– Gọ i FK là tậ p thuộ c tính khác rỗ ng củ a R
– FK là khóa ngoạ i ( Foreign Key) củ a R khi
• Các thuộ c tính trong FK phả i có cùng miề n giá trị vớ i
các thuộ c tính khóa chính củ a S
• Giá trị tạ i FK củ a mộ t bộ t1∈R
– Hoặ c bằ ng giá trị tạ i khóa chính củ a mộ t bộ t2 ∈S
– Hoặ c bằ ng giá trị rỗ ng

Ví dụ

Quan hệ tham chiế u

Khóa ngoạ i

NHANVI EN( MANV, TENNV, HONV, NS, DCHI , GT, LUONG, PHG)
PHONGBAN( TENPHG, MAPHG)
Quan hệ bị
tham chiế u
3/ 5/ 2013

Khóa chính
22


3. Ràng buộ c tồn vẹ n
Khóa ngoạ i – Nhậ n xét
Trong mộ t lư ợ c đồ quan hệ , mộ t thuộ c tính

vừ a có thể tham gia vào khóa chính, vừ a
tham gia vào khóa ngoạ i
Khóa ngoạ i có thể tham chiế u đế n khóa
chính trên cùng 1 lư ợ c đồ quan hệ VD: ?
Có thể có nhiề u khóa ngoạ i tham chiế u đế n
cùng mộ t khóa chính. VD: ??
Ràng buộ c tham chiế u = Ràng buộ c khóa
ngoạ i
3/ 5/ 2013

23


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

3/ 5/ 2013

24


4. Các đặ t trư ng củ a quan hệ
Thứ

tự

HONV

các bộ trong quan hệ là không quan trọ ng
TENNV


Nguyen

Tung

NGSI NH
12/ 08/ 1955

DCHI

PHAI

LUONG

PHG

638 NVC Q5

Nam

40000

5

Bui

Hang

07/ 19/ 1968

332 NTH Q1


Nu

25000

4

Le

Nhu

06/ 20/ 1951

291 HVH QPN

Nu

43000

4

Nam

38000

5

Nguyen

Thứ


Hung

tự

09/ 15/ 1962

null

giữ a các giá trị trong mộ t bộ là quan trọ ng

Bộ < Nguyen, Tung, 12/ 08/ 1955, 638 NVC Q5, Nam, 40000, 5>

khác
Bộ < Nguyen, Tung, 12/ 08/ 1955, 638 NVC Q5, 40000, Nam, 5>

3/ 5/ 2013

25


×