3. Mô hình th c th m i k t h p ể ố ế ợ

ự ạ ự

ạ ộ ạ

Khoa HTTT-Đ i h c CNTT

1

ạ ọ

i thi u 3.1 Gi ệ ớ 3.2 Lo i th c th , th c th ể ạ ự ể 3.3 Thu c tính c a lo i th c th ủ ộ ự 3.4 Khoá c a lo i th c th ạ ủ ể 3.5 Lo i m i k t h p, m i k t h p ố ế ợ ố ế ợ 3.6 Thu c tính c a lo i m i k t h p ố ế ợ ủ 3.7 B n sả ố 3.8 Mô hình ER m r ng ở ộ

3.1 Gi

i thi u ệ

ể ố ế ợ Entity-

t t c ER) ế ắ

đ

c CHEN

 Mô hình th c th m i k t h p ( ượ

Relationship Model vi gi

i thi u năm 1976.

c s d ng nhi u trong thi

t

ế

 Mô hình ER đ k d li u

ượ ử ụ m c quan ni m.

ế ữ ệ ở ứ

Khoa HTTT-Đ i h c CNTT

2

ạ ọ

3.2 Lo i th c th ạ

 Đ nh nghĩa

ạ ố ượ

ự ậ ủ

i c th c n đ

ị ạ nh ng lo i đ i t ữ i th c t n t gi ớ

: lo i th c th (Entity Type) là ự ng hay s v t c a th ế c qu n lý. ả

ự ồ ạ ụ ể ầ ượ  Ví dụ : HOCVIEN, LOP, MONHOC, …  Ký hi uệ :

HOCVIEN

LOP

Khoa HTTT-Đ i h c CNTT

3

ạ ọ

3.2 Th c th (Entity)

ể ệ ủ

ị ộ

m t lo i th c th . ể

 Đ nh nghĩa : th c th là m t th hi n c a ộ ự ạ

 Ví dụ: Lo i th c th là HOCVIEN có các ể

th c th : ự  (‘HV001’, ‘Nguyen Minh’, ‘1/2/1987’,’Nam’)  (‘HV002’, ‘Tran Nam’, ‘13/2/1987’, ‘Nam’)

Khoa HTTT-Đ i h c CNTT

4

ạ ọ

3.3 Thu c tính c a lo i th c th ể ủ ộ (Entity Attribute)

 Đ nh nghĩa

ị ặ

: thu c tính là nh ng tính ch t đ c tr ng c a lo i th c th . ể ủ

ư

ộ ạ  Ví dụ: Lo i th c th HOCVIEN có các

i tính,

thu c tính: Mã h c viên, h tên, gi ọ ngày sinh, n i sinh

ơ

 Ký hi uệ :

HOCVIEN

Mahv Hoten Gioitinh Ngaysinh Noisinh

Khoa HTTT-Đ i h c CNTT

5

ạ ọ

3.3 Các lo i thu c tính (1)

: m i th c th ch có m t giá tr ng v i

ể ỉ

ị ứ

ơ ỗ

Ví d : Mahv,Hoten

: thu c tính có th đ

c t o thành t

ể ượ ạ

Ví d : DCHI(SONHA,DUONG,PHUONG,QUAN)

hay

 Đ n tr (Simple) ị m i thu c tính. ộ ụ  Đa h p (Composite) nhi u thành ph n. ụ

thu c tính HOTEN(HO,TENLOT,TEN).

: thu c tính có th có nhi u giá tr đ i

ị ố

ị ộ

Ví d : BANGCAP ký hi u {BANGCAP}

 Đa tr (Multi-valued) v i m t th c th . ể ớ ụ

Khoa HTTT-Đ i h c CNTT

6

ạ ọ

3.3 Các lo i thu c tính (2)

i, các thu c tính đa h p và đa tr có

ộ m t thu c tính đa h p đ

 Tóm l ạ th l ng nhau tùy ý. ể ồ  Ví dụ: thu c tính BANGCAP c a HOCVIEN là ợ ượ

c ký hi u b ng ệ ằ ộ ộ

{BANGCAP(TRUONGCAP,NAM,KETQUA,

Khoa HTTT-Đ i h c CNTT

7

ạ ọ

CHUYENNGANH)}

3.4. Khoá c a lo i th c th ể ự (entity type key)

 Khóa c a lo i th c th là thu c tính nh n

 Căn c vào giá tr c a khóa có th xác đ nh

ạ ủ di n th c th . ể ự ứ

duy nh tấ m t th c th . ể ộ

ị ủ ự

 Ví dụ:

 M i h c viên có m t mã s duy nh t => Khoá ể HOCVIEN là Mã h c viên

ấ ộ ố

Khoa HTTT-Đ i h c CNTT

8

ạ ọ

ỗ ọ c a lo i th c th ạ ủ ọ ự

3.5 Lo i m i k t h p (1) ố ế ợ (relationship type)

 Đ nh nghĩa

: lo i m i k t h p là s liên k t

ố ế ợ

ế

ị ữ

ạ gi a hai hay nhi u lo i th c th ề

ạ  Ví dụ: gi a hai lo i th c th HOCVIEN và

ữ ạ

ự ạ ố ế ợ  Ký hi uệ : b ng m t hình oval ho c hình ộ

LOP có lo i m i k t h p THUOC ặ

thoi

LOP

HOCVIEN

Thuoc

Khoa HTTT-Đ i h c CNTT

9

ạ ọ

3.5 Lo i m i k t h p (2)

ố ế ợ

i nhi u

ể ồ ạ

h n m t lo i m i k t h p.

 Gi a hai lo i th c th có th t n t ể ự ố ế ợ

ạ ạ

ữ ơ  Ví dụ

Thuộc

HOCVIEN

LOP

Là trưởng lớp

Khoa HTTT-Đ i h c CNTT

10

ạ ọ

ố ế ợ

3.5 S ngôi c a lo i m i k t h p (relationship degree)

 S ngôi c a lo i m i k t h p

ố ế ợ là s lo i th c ố ạ th tham gia vào lo i m i k t h p đó. ạ

ố ế ợ

ố ể

ố ế ợ Thu cộ k t h p 2

 Ví d 1ụ : Lo i m i k t h p ạ ể

ế ợ lo i th c th HOCVIEN và LOP nên có s ố ự ngôi là 2.

ố ế ợ Thi k t h p 3

ế ợ

 Ví d 2ụ : Lo i m i k t h p ạ ể

lo i th c th LANTHI,HOCVIEN, MONHOC nên có s ngôi là 3.

Khoa HTTT-Đ i h c CNTT

11

ạ ọ

ố ế

3.5 S ngôi c a lo i m i k t ủ h pợ

HOCVIEN HOCVIEN

MONHOC LOP

Thi Thuoc

LANTHI

Khoa HTTT-Đ i h c CNTT

12

ạ ọ

ố ế

3.6 Thu c tính c a lo i m i k t ủ h pợ (relationship type attribute)

ồ ủ

ể ạ ủ ộ ộ ố ế ợ ự ạ

ạ ể

 Thu c tính c a lo i m i k t h p bao g m các thu c tính khoá c a các lo i th c th tham gia vào lo i m i k t h p đó. Ngoài ra còn có th có thêm nh ng thu c tính b sung khác. ổ  Ví dụ: Lo i m i k t h p ạ ữ ạ

Khoa HTTT-Đ i h c CNTT

13

ạ ọ

ố ế ợ ộ ố ế ợ Thi gi a ba lo i th c ự th HOCVIEN, MONHOC và LANTHI có các thu c tính là Mahv,Mamh,Lanthi, ngoài ra còn có thu c tính riêng là Diem, Ngaythi ể ộ ộ

GIAOVIEN HOCVIEN

MONHOC LOP

Day Thuoc

Nam

Hocky

LOP

Khoa HTTT-Đ i h c CNTT

14

ạ ọ

3.7 B n s ả ố (relationship cardinality)

 Lo i m i k t h p th hi n liên k t gi a các

ữ ế c g i là m t

ể ệ ế ượ ọ

ng

ố ế ợ ạ th c th , m i liên k t đ ỗ ể ự nhánh.  Đ nh nghĩa : b n s c a nhánh là s l ị ố ượ ả ố ủ i đa các th c th t i thi u và s l ng t ể ự ố ố ượ ố thu c nhánh đó tham gia vào lo i m i k t ố ế ạ ộ h p.ợ

ng t

ng t

i

 Ký hi uệ : (s l

ố ượ

i thi u, s l ể

ố ượ

đa)

 Ví dụ: Lo i th c th HOCVIEN và LOP có ể

Khoa HTTT-Đ i h c CNTT

15

ạ ọ

lo i m i k t h p Thuoc.

ự ạ ố ế ợ

Thuộc

(1,1)

(1,n)

HOCVIEN

LOP

Khoa HTTT-Đ i h c CNTT

16

ạ ọ

(1,n)

(1,1)

Một học viên chỉ học 1 lớp Thuộc Một lớp thì có ít nhất là 1 học viên

HOCVIEN

LOP

(1,1)

(0,1)

1 học viên thì có thể là trưởng lớp hoặc không

Là trưởng lớp ! Lớp thì bao h cũng có 1 trưởng lớp

Khoa HTTT-Đ i h c CNTT

17

ạ ọ

3.7 Mô hình ER m r ng

ở ộ

T ng quát hóa

3.7.1 Chuyên bi t hoá / ổ ệ 3.7.2 M i k t h p đ quy ố ế ợ ệ 3.7.3 Lo i th c th y u ể ế ự ạ 3.7.4 M i k t h p m r ng ở ộ ố ế ợ

Khoa HTTT-Đ i h c CNTT

18

ạ ọ

3.7.1 Chuyên bi

t hóa

(t ng ổ

quát hóa)

ConNguoi

SoCMND HoTen ...

GiaoVien

HocVien

NgayNH

HocVi NgayVL

Khóa

Khoa HTTT-Đ i h c CNTT

19

ạ ọ

3.7.2 M i k t h p đ quy ố ế ợ

ạ ố ế ợ ượ ạ

ạ ự

: là lo i m i k t h p đ c t o thành ị t cùng m t lo i th c th (hay m t lo i th c th ể ự ạ ộ ể ừ có lo i m i k t h p v i chính nó) ạ ớ

ả ộ

(0,1)

NHANVIEN

QuanLy

(0,n)

Khoa HTTT-Đ i h c CNTT

20

ạ ọ

ự i qu n lý đó cũng là m t nhân viên  Đ nh nghĩa ộ ố ế ợ  Ví dụ: M i nhân viên có m t ng ỗ ti p và ng ườ i qu n lý tr c ườ ộ ế ả

3.7.3 Lo i th c th y u ể ế

 Đ nh nghĩa: ự

ố ế ợ xác đ nh trong

đó có m t lo i th c th ch ạ

ộ ạ ể ủ.

ộ  Ký hi uệ :

Th c thự

ị  Là lo i th c th không có thu c tính khóa  Ph i tham gia trong m t lo i m i k t h p

ự ạ

ể  Ví dụ: lo i th c th ạ ể ế có thu c tính ạ

ự ộ

ể THANNHAN là lo i th c Stt, Hoten, Ngsinh,Quanhe ố ế ợ Có v i lo i ạ ớ

Khoa HTTT-Đ i h c CNTT

21

ạ ọ

th y u và tham gia trong lo i m i k t h p th c th ể NHANVIEN. ự

3.7.3 Lo i th c th y u ể ế

(1,n)

(1,1)

NHANVIEN

THANNHAN

Khoa HTTT-Đ i h c CNTT

22

ạ ọ

3.7.4 M i k t h p m r ng

ố ế ợ

ở ộ

LOP HOCVIEN

MONHOC LOP

(1,n)

(1,n)

Hoc Thuoc

(1,1)

Giangday

(1,n)

GIAOVIEN

Khoa HTTT-Đ i h c CNTT

23

ạ ọ

Bài t pậ Xây d ng mô hình ER

 Xây d ng mô hình ER cho CSDL qu n lý

ự ụ ồ ữ ư ế ớ

ọ ớ

giáo v g m có các ch c năng sau: ứ  L u tr thông tin: H c viên, giáo viên, môn h c ọ  X p l p cho h c viên, ch n l p tr ng cho l p ớ ọ  Phân công gi ng d y: giáo viên d y l p nào v i ớ

ưở ạ ớ ạ

 L u tr k t qu thi: h c viên thi môn h c nào, ọ

môn h c gì, ọ ữ ế ả h c kỳ, năm h c nào. ở ọ ả ọ

Khoa HTTT-Đ i h c CNTT

24

ạ ọ

ư l n thi th m y, đi m thi bao nhiêu. ầ ứ ấ ể

ữ ệ

̀

Bài 3: Mô hinh d li u quan h (Relational Data Model)

Khoa HTTT-Đ i h c CNTT

25

ạ ọ

N i dung

i thi u

1. Gi 2. Các khái ni mệ

c đ quan h và l

2.1 Thu c tính 2.2 Quan hệ 2.3 B giá tr ộ ị 2.4 Th hi n c a quan h ể ệ ủ 2.5 Tân từ 2.6 Phép chi uế 2.7 Khóa c đ CSDL 2.8 L ượ ồ 2.9 Hi n th c mô hình ER b ng mô hình d li u quan h . ệ ằ

ượ ồ ự ệ

ữ ệ

Khoa HTTT-Đ i h c CNTT

26

ạ ọ

1. Gi

i thi u ệ

 Mô hình D li u Quan h ( ữ ệ

 Quan hệ là khái ni m toán h c d a trên n n

ệ t ng hình th c v lý thuy t t p h p. ả

ứ ề

ế ậ

 Mô hình này do TS. E. F. Codd đ a ra năm

ệ Relational Data Model) d a trên khái ni m quan h . ệ ọ ự ợ ư

1970.

Khoa HTTT-Đ i h c CNTT

27

ạ ọ

2.1 Thu c tính (attribute)

 Thu c tính: ộ

ị: t p giá tr mà thu c tính có th nh n. Ký

ể ậ

 Tên g iọ : dãy ký t (g i nh ) ự ợ ớ  Ki u d li u ể ữ ệ : S , Chu i, Th i gian, Lu n lý, OLE. ố ỗ  Mi n giá tr ị ề ệ

hi u mi n giá tr c a thu c tính A là ị ủ

ộ  Ví dụ:GIOITINH ki u d li u là Chu i,mi n giá ể ữ ệ

Dom(A). ỗ

tr ị

 T i m t th i đi m, m t thu c tính không có giá tr ị ộ

Dom(GIOITINH)=(‘Nam’,’Nu’) ộ ộ ượ

Khoa HTTT-Đ i h c CNTT

28

ạ ọ

ờ ho c ch a xác đ nh đ c giá tr => giá tr Null ạ ặ ể ị ư ị ị

2.2 Quan h (relation) ệ

 Đ nh nghĩa

: quan h là m t t p h u h n

ộ ậ ữ ạ

,...,

(

)

AAQ 1 2

nA

}

{

=+

,...,

, AA 1 2

nA

các thu c tính. ộ ,  Ký hi uệ :  Trong đó Q là tên quan h , là t p

Q ệ ệ

các thu c tính c a quan h Q ủ

HOCVIEN (Mahv, Hoten, Ngsinh, Gioitinh, Noisinh, Malop) LOP (Malop, Tenlop, Siso, Trglop, Khoa)

Khoa HTTT-Đ i h c CNTT

29

ạ ọ

ộ  Ví dụ:

2.3 B (tuple) ộ

: B là các thông tin c a m t đ i ộ

ng thu c quan h , đ ộ ố ủ c g i là m u tin ệ ượ ọ ẫ  Đ nh nghĩa ộ

(

)

aa , 1

2

ị t ượ (record), dòng. ệ

i

" ộ ả ỗ A ( i )  Quan h là m t b ng (table) v i các c t là các ớ ộ c g i là b . thu c tính và m i dòng đ ượ ọ ộ q = na ,..., AAQ nA ( , ,..., ) 2 1  M t b c a quan h là ệ Dom

ộ a ˛ ộ ộ ủ v i ớ

Khoa HTTT-Đ i h c CNTT

30

ạ ọ

Dong Nai  Ví dụ: HOCVIEN(Mahv, Hoten, Ngsinh, Noisinh) có q=(1003,Nguyen Van Lam, 1/1/1987,Dong Nai) nghĩa là h c viên có mã s là 1003, h tên là ọ ố Nguyen Van Lam, sinh ngày 1/1/1987 ở

ể ệ ủ

2.4 Th hi n c a quan h ệ (instance)

ị ệ ể ệ ủ ợ

 Đ nh nghĩa ộ ệ ạ ể ộ

: th hi n c a m t quan h là t p h p ộ ậ i m t th i đi m. các b giá tr c a quan h t ờ ị ủ  Ký hi u:ệ th hi n c a quan h Q là TQ ể ệ ủ  Ví dụ: THOCVIEN là th hi n c a quan h HOCVIEN ệ ể ệ ủ i g m có các b nh sau: ộ ư i th i đi m hi n t ể ệ ạ ồ t ạ ờ

HOCVIEN

Mahv

HoTen

Gioitinh

Noisinh

Malop

K1103 Ha Duy Lap

Nam

Nghe An

K11

K1102 Tran Ngoc Han

Nu

Kien Giang K11

K1104 Tran Ngoc Linh Nu

Tay Ninh

K11

Khoa HTTT-Đ i h c CNTT

31

ạ ọ

2.5 Tân từ

: tân t

 Đ nh nghĩa

ị mô t

là m t quy t c dùng đ ể ắ ừ m t quan h . ệ

ả ộ  Ký hi uệ : ||Q||  Ví dụ: THI (Mahv, Mamh, Lanthi, Diem) ||

ư ứ ấ

THI||: m i h c viên đ c phép thi m t môn ộ ượ ỗ ọ h c nhi u l n, m i l n thi l u tr h c viên ỗ ầ ữ ọ ề ầ nào thi môn gì? l n thi th m y? và đi m là ầ bao nhiêu?

Khoa HTTT-Đ i h c CNTT

32

ạ ọ

2.6 Phép chi u (1)

ế

ộ ố ể ộ

ị ủ ủ ộ

 Phép chi uế : Dùng đ trích giá tr c a m t s thu c tính trong danh sách các thu c tính c a quan h . ệ ộ  Ký hi uệ : phép chi u c a quan h R lên t p thu c tính ế ủ ệ ậ

X là R[X] ho cặ R.X.

 Ví dụ:

HOCVIEN

Mahv

HoTen

Gioitinh Noisinh Malop

K1103 Ha Duy Lap

Nam

Nghe An

K11

K1102 Tran Ngoc Han Nu

Kien Giang K11

K1104 Tran Ngoc Linh Nu

Tay Ninh

K11

 hv1=  hv2 =  hv3 =

Khoa HTTT-Đ i h c CNTT

33

ạ ọ

2.6 Phép chi u (2)

ế

 Phép chi u c a quan h HOCVIEN lên

ế ủ

thu c tính NoiSinh c a quan h HOCVIEN: ủ HOCVIEN[Noisinh] = {‘Nghe An’,’Kien Giang’,’Tay Ninh’}

HOCVIEN

Mahv

HoTen

Gioitinh Noisinh Malop

K1103 Ha Duy Lap

Nam

Nghe An

K11

K1102 Tran Ngoc Han Nu

Kien Giang K11

K1104 Tran Ngoc Linh Nu

Tay Ninh

K11

Khoa HTTT-Đ i h c CNTT

34

ạ ọ

2.6 Phép chi u (3)

ế

ế

 Phép chi u lên 1 t p thu c tính ệ

X={Hoten,Noisinh} c a quan h HOCVIEN ủ HOCVIEN[Hoten, Noisinh] = {(‘Ha Duy Lap’, ‘Nghe An’), (‘Tran Ngoc Han’, ‘Kien Giang’),(‘Tran Ngoc Linh’,’Tay Ninh’)}

HOCVIEN

Mahv

HoTen

Gioitinh Noisinh Malop

K1103 Ha Duy Lap

Nam

Nghe An

K11

K1102 Tran Ngoc Han Nu

Kien Giang K11

K1104 Tran Ngoc Linh Nu

Tay Ninh

K11

Khoa HTTT-Đ i h c CNTT

35

ạ ọ

2.6 Phép chi u (4)

ế

ộ ộ

ộ ậ ị ụ ể ủ ộ c ch ra trong danh sách thu c tính ộ ỉ

 Ký hi uệ : chi u c a m t b giá tr t lên t p thu c ộ ộ ậ ộ ị

 Chi u c a m t b lên t p thu c tính: dùng đ ể ế ủ trích ch n các giá tr c th c a b giá tr đó theo ị ọ các thu c tính đ ượ ộ c a m t quan h . ệ ộ ủ ế ủ ệ ế ủ tR[X] ho cặ t[X]. N u X có 1

ộ tính X c a quan h R là tR.X thu c tính

 Ví dụ: cho quan h HOCVIEN v i t p thu c tính ớ ậ ệ ộ

1,hv2 và hv3

Khoa HTTT-Đ i h c CNTT

36

ạ ọ

HOCVIEN+={Mahv,Hoten,Gioitinh,Noisinh,Malop}, ch a 3 b giá tr hv ộ ứ ị

2.6 Phép chi u (5)

ế

ế ộ

 Phép chi u 1 b lên 1 thu c tính ộ  hv1[Hoten] = (‘Ha Duy Lap’)

HOCVIEN

Mahv

HoTen

Gioitinh Noisinh Malop

K1103 Ha Duy Lap

Nam

Nghe An

K11

K1102 Tran Ngoc Han Nu

Kien Giang K11

K1104 Tran Ngoc Linh Nu

Tay Ninh

K11

hv1= hv2= hv3=

Khoa HTTT-Đ i h c CNTT

37

ạ ọ

2.6 Phép chi u (6)

ế

ế ộ

 Phép chi u 1 b lên 1 t p thu c tính  t p thu c tính X={Hoten, Gioitinh}  hv2[X] = (‘Tran Ngoc Han’,’Nu’) HOCVIEN

Mahv

HoTen

Gioitinh Noisinh Malop

K1103 Ha Duy Lap

Nam

Nghe An

K11

K1102 Tran Ngoc Han Nu

Kien Giang K11

K1104 Tran Ngoc Linh Nu

Tay Ninh

K11

 hv1 =  hv2 =  hv3 =

Khoa HTTT-Đ i h c CNTT

38

ạ ọ

2.7 Khóa

ng

ươ

ươ

2.7.1 Siêu khóa (super key) 2.7.2 Khóa (key) 2.7.3 Khóa chính (primary key) 2.7.4 Khóa t ng đ 2.7.5 Khóa ngo i (foreign key) ạ

Khoa HTTT-Đ i h c CNTT

39

ạ ọ

2.7.1 Siêu khóa (super key) (1)

ộ ậ ủ

ị ủ  Siêu khóa : là m t t p con các thu c tính c a Q + t 2 b khác ộ ể

ể ệ TQ b t kỳ.

Nghĩa là: " K là siêu ộ mà giá tr c a chúng có th phân bi ệ nhau trong cùng m t th hi n ấ t2[K] (cid:219) t1, t2 ˛ ộ TQ, t1[K] „

+) và có

 M t quan h có ít nh t m t siêu khóa (Q ộ

Khoa HTTT-Đ i h c CNTT

40

ạ ọ

khóa c a Q. ủ ấ ệ th có nhi u siêu khóa. ề ộ ể

2.7.1 Siêu khóa (super key) (2)

ụ ệ

 Ví d : các siêu khóa c a quan h HOCVIEN là: ủ {Mahv};{Mahv,Hoten};{Hoten};{Noisinh,Hoten} …

HOCVIEN

Mahv

HoTen

Gioitinh Noisinh Malop

K1103 Ha Duy Lap

Nam

Nghe An

K11

K1102 Tran Ngoc Han Nu

Kien Giang K11

K1104 Tran Ngoc Linh Nu

Tay Ninh

K11

K1105 Tran Minh Long Nam

TpHCM

K11

K1106 Le Nhat Minh

Nam

TpHCM

K11

Khoa HTTT-Đ i h c CNTT

41

ạ ọ

2.7.2 Khóa (key) (1)

ệ ủ ề ệ ỏ

ấ ” (ch a ít thu c tính nh t và ộ ứ ấ

Khóa : K là khóa c a quan h R, th a mãn 2 đi u ki n:  K là m t siêu khóa. ộ  K là siêu khóa “nh nh t ỏ khác r ng) nghĩa là ỗ

„ (cid:204) ˘ K, K1

sao cho K1 là siêu khóa. ọ ộ ộ

Khoa HTTT-Đ i h c CNTT

42

ạ ọ

¬$ K1  Thu c tính tham gia vào m t khóa g i là thu c tính ộ . thu c tính không khóa khóa, ng i là c l ượ ạ ộ

2.7.2 Khóa (key) (2)

 Ví dụ: các siêu khóa c a quan h HOCVIEN là: ủ ệ

{Mahv};{Mahv,Hoten};{Hoten};{Hoten,Gioitinh}; {Noisinh,Hoten};{Mahv,Hoten,Gioitinh,Noisinh}… => thì khóa c a quan h HOCVIEN có th là

{Mahv}; {Hoten}

 Ví dụ: khóa c a quan h GIANGDAY (Malop, ủ ệ

ộ ộ

Khoa HTTT-Đ i h c CNTT

43

ạ ọ

Mamh, Magv, HocKy, Nam) là K={Malop,Mamh}. Thu c tính khóa s là: Mamh,Malop. Thu c tính ẽ không khóa s là Magv, HocKy, Nam. ẽ

2.7.3 Khóa chính (primary key)

 Khi cài đ t trên m t DBMS c th , n u quan h ệ c ch n m t và ộ khóa, ta ch đ ụ ể ế ỉ ượ ộ ọ

khi ộ ặ có nhi u h n m t ơ ề khóa chính g i là ọ ộ  Ký hi uệ : các thu c tính n m trong khóa chính

ằ t kê trong quan h ph i đ li ệ ả ượ g ch d c ạ ướ . i

 HOCVIEN (Mahv,Hoten,Gioitinh,Noisinh,Malop)  GIANGDAY(Mamh,Malop,Magv,Hocky,Nam)

Khoa HTTT-Đ i h c CNTT

44

ạ ọ

ệ  Ví dụ:

2.7.4 Khóa t

ng đ

ng

ươ

ươ

i (không đ

ượ

khóa chính) g i là khóa t

ng.

ng đ

 Các khóa còn l ạ ọ

c ch n làm ọ ươ

ươ

 Ví d :ụ trong hai khóa {Mahv},{Hoten} thì

ng đ

ng là

ươ

ươ

khóa chính là {Mahv}, khóa t {Hoten}

Khoa HTTT-Đ i h c CNTT

45

ạ ọ

2.7.5 Khóa ngo i (1)

2

˝ U là khóa chính c a R,K ˝ V ủ  Cho R(U), S(V). K1

 Ta nói K2 là khóa ngo iạ c a S ủ

 K1 và K2 có cùng s l

ủ ế ệ ề ỏ tham chi uế đ nế khóa chính K1 c a R n u th a các đi u ki n sau:

ố ượ ộ ủ ng thu c tính và ng ữ 1 và K2 cũng

 Gi a R và S t n t

ộ nghĩa c a các thu c tính trong K gi ng nhau.

1 và

Khoa HTTT-Đ i h c CNTT

46

ạ ọ

ồ ạ i m i quan h 1-n trên K ệ ố

S, !$ r ˛ ố ữ K2,  " s ˛ R sao cho r.K1=s.K2

2.7.5 Khóa ngo i (2)

LOP (Malop,Tenlop,Siso,Khoahoc)

HOCVIEN (Mahv,Hoten,Gioitinh,Noisinh,Malop)

 Ví d , cho 2 quan h ụ ệ

 Thu c tính Malop trong quan h LOP là khóa ệ ộ

ủ ệ Malop trong ế ế ạ

Khoa HTTT-Đ i h c CNTT

47

ạ ọ

chính c a quan h LOP. Thu c tính ệ quan h HOCVIEN là khóa ngo i, tham chi u đ n Malop trong quan h LOP ệ

2.7.5 Khóa ngo i (3)

HOCVIEN

Mahv

HoTen

Gioitinh

Noisinh Malop

K1103 Ha Duy Lap

Nam

Nghe An

K11

K1102 Tran Ngoc Han

Nu

Kien Giang K11

K1104 Tran Ngoc Linh Nu

Tay Ninh

K11

K1105 Tran Minh Long Nam

TpHCM

K11

K1106 Le Nhat Minh

Nam

TpHCM

K11

LOP

Malop

Tenlop

Trglop Siso Magvcn

K11

Lop 1 khoa 1 K1106

11

GV07

K12

Lop 2 khoa 1 K1205

12

GV09

K13

Lop 3 khoa 1 K1305

12

GV14

48

Khoa HTTT-Đ i h c CNTT

ạ ọ

2.8 L

c đ quan h (1)

ượ ồ

ệ nh m m c đích ệ

 L ụ ượ ồ c u trúc c a m t quan h và ấ hệ gi a các thu c tính trong quan h đó. ộ

ả mô t các m i liên ố ệ ệ là t p thu c tính

c đ quan h ộ ủ ộ ộ

 C u trúc c a m t quan h ủ hình thành nên quan h đó.

 M t l

c đ quan h g m m t t p thu c

ộ ượ ồ

ệ ệ ồ

ộ ậ ộ ệ ữ

ộ đ xác ả ể ộ

tính c a quan h kèm theo m t mô t đ nh ý nghĩa và m i liên h gi a các thu c ố ị tính

Khoa HTTT-Đ i h c CNTT

49

ạ ọ

2.8 L

c đ quan h (2)

ượ ồ

 L

c đ c tr ng b i: ư

c đ quan h đ ượ ồ  M t tên phân bi ộ  M t t p h p h u h n các thu c tính (A ộ ậ

ệ ượ ặ t ệ ợ ữ ạ

1, …,

An)

c đ quan h

ệ ủ ượ ồ

ệ Q g m ồ n

 Ký hi u c a l thu c tính (A

1, A2, ... An) là :

 Q(A1, A2, ..., An)

Khoa HTTT-Đ i h c CNTT

50

ạ ọ

2.8 L

c đ quan h (3)

ượ ồ

t

: m i h c viên có m t mã h c viên đ phân bi i tính,

ỗ ọ ọ

ộ ầ ư

ọ ữ ọ

 HOCVIEN(Mahv,Hoten,Gioitinh,Noisinh,Malop)  Tân t ể v i các h c viên khác. C n l u tr h tên, gi ớ n i sinh và thu c l p nào. ơ

ộ ớ

HOCVIEN

Mahv

HoTen

Gioitinh

Noisinh

Malop

K1103 Ha Duy Lap

Nam

Nghe An

K11

K1102 Tran Ngoc Han

Nu

Kien Giang K11

K1104 Tran Ngoc Linh Nu

Tay Ninh

K11

K1105 Tran Minh Long Nam

TpHCM

K11

K1106 Le Nhat Minh

Nam

TpHCM

K11

Khoa HTTT-Đ i h c CNTT

51

ạ ọ

2.8 L

c đ CSDL (1)

ượ ồ

c đ quan h và các

 Là t p h p g m các l ợ

ệ ộ ệ ố

ồ ệ ữ

ượ ồ m i liên h gi a chúng trong cùng m t h th ng ố qu n lý. ả

Các CSDL

H Qu n Tr ị ả CSDL

Các quan hệ

Khoa HTTT-Đ i h c CNTT

52

ạ ọ

L

c đ CSDL qu n lý bán

ượ ồ

hàng

t v i nhau b ng mã h c viên, l u tr h tên, ngày sinh,

ỗ ọ

ữ ọ

ư

gi

i tính, n i sinh, thu c l p nào.

ằ ộ ớ

ng c a l p, s s l p

ủ ớ

ỗ ớ

ưở

ỉ ố ớ

ớ ệ

ng khoa

ầ ư

ưở

(cũng là m t giáo viên thu c khoa).

HOCVIEN (MAHV, HO, TEN, NGSINH, GIOITINH, NOISINH, MALOP) Tân từ: m i h c viên phân bi ệ ớ ơ LOP (MALOP, TENLOP, TRGLOP, SISO, MAGVCN) Tân từ: m i l p g m có mã l p, tên l p, h c viên làm l p tr ồ ớ và giáo viên ch nhi m. KHOA (MAKHOA, TENKHOA, NGTLAP, TRGKHOA) Tân từ: m i khoa c n l u tr mã khoa, tên khoa, ngày thành l p khoa và tr ữ ộ

MONHOC (MAMH, TENMH, TCLT, TCTH, MAKHOA) Tân t :ừ m i môn h c c n l u tr tên môn h c, s tín ch lý thuy t, s tín ch th c ỉ

ầ ư

ỉ ự

ế

hành và khoa nào ph trách.

m t s môn h c tr

c.

DIEUKIEN (MAMH, MAMH_TRUOC) Tân từ: có nh ng môn h c h c viên ph i có ki n th c t ọ ọ

ế

ứ ừ ộ ố

ướ

Khoa HTTT-Đ i h c CNTT

53

ạ ọ

GIAOVIEN(MAGV,HOTEN,HOCVI,HOCHAM,GIOITINH,NGSINH,NGVL, HESO, MUCLUONG, MAKHOA) Tân từ: mã giáo viên đ phân bi ệ ớ

t gi a các giáo viên, c n l u tr h tên, h c v , ị ữ ọ ầ ư ng và thu c m t i tính, ngày sinh, ngày vào làm, h s , m c l ộ

ứ ươ

ệ ố

h c hàm, gi ọ khoa.

GIANGDAY(MALOP,MAMH,MAGV,HOCKY, NAM,TUNGAY,DENNGAY) Tân từ: m i h c kỳ c a năm h c s phân công gi ng d y: l p nào h c môn gì do

ọ ẽ

ỗ ọ

giáo viên nào ph trách.

ữ ế

ư

KETQUATHI (MAHV, MAMH, LANTHI, NGTHI, DIEM, KQUA) Tân từ: l u tr k t qu thi c a h c viên: h c viên nào thi môn h c gì, l n thi th ứ m y, ngày thi là ngày nào, đi m thi bao nhiêu và k t qu là đ t hay không đ t. ạ

ủ ọ ể

ọ ạ

ế

Khoa HTTT-Đ i h c CNTT

54

ạ ọ