Các khái ni m trong mô hình E-R... Các khái ni m trong mô hình E-R... Phai TenTN QuanHe THANNHAN... Ten Luong Phai NgSinh Phân Công DDIEM_DA... Ten Luong Phai NgSinh Có TN 0,n 1,1 Phai T
Trang 1CƠ SỞ DỮ LIỆU
ThS.Lê V n H nh
Trang 3N i dung môn h c
1. M c đích
2. Thi t k mô hình x lý bên ngoài – giao
di n
3. Thi t k mô hình x lý bên trong
4. Các s u li u cho mô x lý m c logic
Trang 4Ch ng 1
D N NH P
Trang 6̈ Vi c tin h c hóa trong các đ n v th ng th c
hi n đ c l p v i nhau v th i gian, công c và
n i dung
̈ Do yêu c u qu n lý, m i b ph n đ u t ch c
l u tr h s riêng cho mình d a trên h s
g c ban đ u có b sung thêm 1 s thông tin
c n thi t riêng
Trang 8Tên thợ
Phá i
Số con
Trang Nữ 2
Trang Nữ 3 Quoc Na
m
0
m Chau Nữ
Trang 9B t c p trong qu n lý
̈ Khó m r ng ho c k t n i các h th ng
̈ Thông tin đã l u tr không th chia s
gi a các h th ng Vì v y không có qu n lý giao d ch và x lý đ ng th i gi a nhi u
.
Trang 10An QYKD 1/2007 35000
Trang 11nh ngh a CSDL
̈ Là m t t p h p d li u đ c t ch c và
l u tr theo m t c u trúc ch t ch
nh m ph c v cho nhi u đ i t ng v i các m c đích khác nhau
Nhanvien.doc Nhanvien.xls Nhanvien.dat CSDL
Trang 13Ba c p đ th hi n d li u
Qu n tr viên
Chuyên viên
Ng i dùng
Trang 14Nh th nào là 1 CSDL kém?
̈ D th a (redundancy)
̈ Mâu thu n ti m n (potential inconsistancy)
̈ B t th ng khi chèn (insertion anomaly)
̈ B t th ng khi xóa (deletetion anomaly)
Hàng VT SL n giá Ngày nh p NCC Khu v c
Nokia N82 b 50 xxx 20/12/2007 Công ty FPT TpHCM Nokia N73 b 10 yyy 20/12/2007 Thành Cong Mobile Tp HCM Nokia N82 b 20 xx 03/05/2008 Cong ty FPT Tp.HCM
Trang 16$1.2 H Qu n Tr CSDL
̈ Kh n ng qu n lý nh ng d li u c đ nh
̈ Kh n ng truy xu t có hi u qu m t s l ng l n d
li u
̈ H tr ít nh t m t mô hình d li u (data model):
giúp ng i s d ng có th xem đ c d li u nhanh
Trang 17$1.2 H Qu n Tr CSDL
̈ i u khi n các quá trình truy xu t: là kh n ng
gi i h n các quá trình truy xu t d li u c a
nh ng ng i không đ c phép và kh n ng ki m tra đ tin c y c a d li u.
̈ Có đ c tính t thích ng: là kh n ng t ph c h i
l i d li u c a h th ng khi g p s c mà không làm m t d li u.
̈ Các h qu n tr CSDL ph bi n:
̈ Access
̈ SQL Server
̈ Oracle
Trang 20$1.3 Các mô hình d li u
̈ Mô hình logic trên c s đ i t ng (Object-based logical models)
̈ Mô hình Th c th – K t h p (Entity-Relation)
̈ Mô hình h ng đ i t ng (Object-Oriented Model)
̈ Mô hình logic trên c s m u tin (Record-based
Trang 21Mô hình th c th - k t h p
̈ M c đích:
̈ Mô t l c đ khái ni m c a 1 t ch c màkhông c n chú ý đ n tính hi u qu ho c thi t k v t lý nh nh ng mô hình khác
Trang 22Ngày Sinh (1,n) (1,1)
Trang 23Mô hình h ng đ i t ng
̈ M c đích: ti p c n h ng đ i t ng (trong các ph ng pháp l p trình h ng đ i t ng)
Trang 24-Mô hình quan h
̈ M c đích: mô t đ c d li u d ng v t lý.
Trang 26Mô hình d li u m ng
̈ M c đích: dùng đ th có h ng cho các d
li u
̈ u đi m: đ a ra m t cách ng n g n mô tcác m i liên h
̈ Khuy t đi m: khi CSDL quá l n, vi c cài đ t các m i liên h nhi u nhi u làm cho hi u
Trang 27Mô hình d li u m ng
1 ÷1
LÝ L CH
PHÒNG BAN
có
G m
Có thân nhân
1÷n
1÷1
1÷n
PHÒNG BAN Thu c
NHÂN VIÊN
n÷1
Trang 29Mô hình d li u phân c p
Trang 30Mô hình d li u t t nh t?
̈ Không có mô hình nào đ c xem là t t nh t cho các h th ng CSDL
̈ Nên xem xét theo ki u: Chúng đ c s d ng
t t nh t đâu và vào lúc nào?
̈ Ph n l n các mô hình:
̈ M c đích dùng nh h th ng ký hi u cho d li u, và
̈ Làm h th ng ký hi u n n t ng cho ngôn ng thao tác d li u
̈ E-R dùng thi t k l c đ khái ni m
̈ Mô hình h ng đ i t ng gi i quy t d th a
t t
Trang 32$1.4 Qu n lý d li u phân tán
̈ CSDL phân tán bao g m m t t p các nút
(node) liên k t (link) v i nhau, m i nút bi u
di n cho 1 máy tính và 1 thi t b l u tr th
c p kèm theo Các nút có th ch là thi t b
l u tr nh ho c không có thi t b l u tr
(ch thu n có ch c n ng tính toán)
̈ Trong m t m ng LAN (Local Area Network),
m i máy tr m (workstation) đóng vai trò m t node M i node s l u tr d li u c a riêng mình
Trang 33Node 1
Trang 35G H
Trang 36$1.4 Qu n lý d li u phân tán
̈ t ng c ng s thích ng, ng i ta c n t o
ra nhi u b n sao và ph i đ m b o r ng các
b n sao này đ u ph i gi ng nhau
̈ Khi có thao tác thay đ i trên m t m c t i nút A thì
Trang 38̈ Các giai đo n thi t k CSDL
Trang 39Các giai đo n thi t k CSDL
Thi t k logic
Trang 40Tin h c hóa Qu n lý phân công
l ng , gi i tính và ngày sinh M i nhân viên thu c
án M i đ án do m t phòng ban ph trách.
Trang 41Tin h c hóa Qu n lý phân công
đ án t i m t công ty
̈ C n l u l i gi làm vi c c a m t nhân viên làm cho
m t đ án Ngoài ra c ng c n bi t đ c ng i ph trách tr c ti p c a m t nhân viên
̈ qu n lý các thông tin có liên quan đ n b o hi m,
ng i s d ng c ng có nhu c u v thông tin c a m i quan h thân nhân (v , ch ng, con) c a nhân viên Các thông tin mà ng i s d ng quan tâm bao g m
tên thân nhân, gi i tính và m i quan h v i nhân viên.
Trang 42Các khái ni m trong mô hình E-R
Trang 43Các khái ni m trong mô hình E-R
̈ Phân lo i thu c tính:
̈ Thu c tính đ n (Single attribute)
̈ Thu c tính h p (Composite attribute)
Trang 44Các khái ni m trong mô hình E-R
Trang 45Các khái ni m trong mô hình E-R
̈ M i k t h p: M t m i k t h p (relationship) là
m i quan h gi a hai hay nhi u th c th mang
m t ý ngh a nào đó Ví d :
̈ Nguy n V n A tr c thu c phòng Nghiên c u.
̈ Tr n Th B tr c thu c phòng Kinh doanh.
Trang 46Các khái ni m trong mô hình E-R
̈ B c c a lo i m i k t h p: Là s l ng
lo i th c th tham gia vào m i k t h p
̈ Lo i m i k t h p b c 2 còn g i là m i k t
h p nh phân H u h t các lo i m i k t h p trong CSDL là nh phân
̈ Thu c tính c a lo i m i k t h p
̈ Gi làm vi c c a nhân viên khi nhân viên tham gia làm đ án
Trang 47Các khái ni m trong mô hình E-R
̈ Các ràng bu c trên lo i m i k t h p:
g m 2 lo i:
̈ Ràng bu c t l l c l ng (Cardinality ratio constraint ): ký hi u (min, max)
̈ Ràng bu c tham gia (Participation constraint): g m 2 lo i:
̈ Toàn ph n
̈ Bán ph n
Nhân Viên Qu n Lý Phòng Ban
Trang 48Các khái ni m trong mô hình E-R
̈ Lo i th c th y u: Lo i th c th không
có t p thu c tính khóa g i là lo i th c
th y u (weak entity type).
̈ Lo i th c th y u ph i tham gia trong m t
lo i m i k t h p xác đ nh (Identifying ralationship type) trong đó có m t lo i th c
th ch hay lo i th c th xác đ nh (Identifying entity)
Trang 49Các khái ni m trong mô hình E-R
Hóa đ nNhân viên
Trang 50Các khái ni m trong mô hình E-R
Trang 51Các khái ni m trong mô hình E-R
̈ Ký hi u ̈ Ý ngh a
Thu c tínhThu c tính khóaThu c tính đa tr
Thu c tính đa h p
Trang 52Các khái ni m trong mô hình E-R
Trang 53̈ Công ty có nhi u phòng ban : tên ,
Trang 55̈ V nhân viên , c n quan tâm: mã,
Lot
Ten
Luong Phai
NgSinh
Trang 56̈ C n l u l i gi làm vi c c a m t nhân viên làm cho m t đ án Ngoài
ra c ng c n bi t đ c ng i ph trách tr c ti p c a m t nhân viên
̈ qu n lý các thông tin có liên quan đ n b o hi m,
ng i s d ng c ng có nhu c u v thông tin c a m i quan h thân nhân (v , ch ng, con) c a nhân viên Các thông tin mà ng i s d ng quan
tâm bao g m tên thân nhân, gi i tính và m i quan h v i nhân viên.
Phai TenTN QuanHe
THANNHAN
Trang 57̈ Công ty có nhi u phòng ban : tên , mã s
NgayBD
(0,1)
(1,1)
Trang 58Ph Trách
DEAN
TênDA MaDA
DDIEM_DA
(1,n)
(1,1)
Trang 59̈ M i nhân viên thu c m t phòng ban
PHONGBAN
TênPB MaPB
Lot
Ten Luong
Phai NgSinh
Qu n Lý
Trang 60Ten Luong
Phai NgSinh
Phân Công
DDIEM_DA
Trang 61Ten Luong
Phai NgSinh
Giám Sát
(0,n) (0,1)
Trang 62Ten Luong
Phai NgSinh
Có TN
(0,n)
(1,1)
Phai TenTN QuanHe
THANNHAN
Trang 63TênPB MaPB
NgSinh
Qu n Lý
Phân Công
Giám
Sát
(0,1) (0,n)
Ph Trách
Trang 65$1.6 Bài t p làm ngay
̈ Tin h c hóa Qu n lý sinh viên t i m t tr ng trung c p
̈ Các thông tin c n qu n lý v m t sinh viên g m:
h tên, phái, đ a ch , đi n tho i Ngoài ra, ta c ng
c n bi t sinh viên này đang theo h c ngành nào.
̈ M i ngành s có m t tên ngành và s l ng giáo viên thu c ngành đó.
̈ C n qu n lý h tên c a giáo viên và thông tin v
ngành mà giáo viên tr c thu c
Trang 66ch c theo t ng h c k c a t ng n m do m t giáo viên ph trách m t môn h c c th
̈ Sinh viên s có đi m khi tham gia các khóa
h c
Trang 67CƠ SỞ DỮ LIỆU
ThS.Lê V n H nh
Trang 68MÔ HÌNH D Li U QUAN H
(Relational Data Model)
Trang 70$2.1 Thu c tính
̈ i t ng là m t th c th t n t i khách quan hay m t s tr u t ng hóa (nhân viên, xe máy, hàng hóa, .).
̈ Thu c tính là đ c tính c a đ i
t ng c n đ c ph n ánh trong
CSDL.
Trang 74$2.2 Quan h
̈ Quan h là m t b ng (table) 2 chi u
đ c đ nh ngh a trên m t t p thu c tính
̈ T p toàn b thu c tính c a m t quan
Trang 77$2.3 B giá tr
̈ B là m t dòng d li u trong m t quan
h
̈ B th ng đ c g i là m u tin, b n ghi hay record.
̈ Không có 2 b gi ng nhau trong cùng
Trang 84duy nh t đ phân bi t v i các phòng ban
khác trong công ty, và có m t tên phòng
Trang 86$2.6 L c đ CSDL
̈ Là t p h p g m các l c đ quan h và các m i liên h gi a chúng trong cùng
Trang 87$2.6 L c đ CSDL
L c đ CSDL “qu n lý đ án cty”
NHANVIEN (MaNV, HoNV, TenLot, TenNV, Phai, Luong, PHG, NGSinh, DCHI, Ma_NQL)
PHONGBAN (MaPHG, TenPHG, TrPHG, NG_NhanChuc)
DEAN (MaDA, TenDA, DDIEM_DA, Phong)
PHANCONG (Ma_NVien, MaDA, ThoiGian)
DIADIEM_PHG (MaPHG, DIADIEM)
THANNHAN (Ma_NVien, TenTN, Phai, NGSinh, QuanHe)
Trang 90Siêu khóa – Super Keys
̈ Siêu khóa : là m t t p con các thu c tính c a Q+ mà nh vào đó chúng ta có
th phân bi t 2 b khác nhau trong cùng m t th hi n T Q b t k
̈ ∀ t1, t2 ∈ T Q, t1[K] ≠ t2[K] ⇔ K là siêu khóa c a Q.
̈ M t quan h có ít nh t m t siêu khóa (Q+) và có th có nhi u siêu khóa.
Trang 91Siêu khóa – Super Keys
̈ Ví d : các siêu khóa c a quan h NhanVien là: {HoTen,Phai}; {HoTen,Phai,Luong,PHG}; …
̈ T h p các thu c tính có th phân bi t các b
trong 1 quan h
NhanVien HoTen Phai Luong PHG
N T A N 2000 NC
L V M Nam 2100 NC
N T A Nam 2500 KH Siêu
Khóa?
Trang 93Khóa – Keys
̈ Thu c tính tham gia vào m t khóa g i
là thu c tính khóa , ng c l i là thu c tính không khóa
Trang 94Khóa Chính – Primary Keys
̈ Khi cài đ t trên m t HQTCSDL c th ,
n u quan h có nhi u h n m t khóa,
Trang 95Khóa Chính – Primary Keys
̈ Ví d 1 : Khóa chính g m 1 thu c tính
̈ Khóa chính c a quan h NhanVien là: {MANV}
̈ NhanVien(MaNV, HoTen, Phai, Luong, PHG)
̈ Ví d 2 : Khóa chính g m h n 1 thu c tính
̈ Khóa chính c a quan h PhanCong là: {MANV, MADA}
̈ PhanCong=(MaNV, MaDA, ThoiGian)
̈ PhanCong=(MaNV, ThoiGian, MaDA)
Trang 96Khóa Ngo i – Foreign Keys
̈ Cho Q1(U), Q2(V) là 2 quan h , v i U, V l n l t là t p thu c tính c a các quan h Q1 và Q2.
̈ Khi đó, K2 là khóa ngo i c a Q2 tham chi u đ n
khóa chính K1 c a Q1
Trang 97Khóa Ngo i – Foreign Keys
̈ Ví d , cho 2 quan h
̈ PhongBan(MaPB, TenPB), v i U=PhongBan +
̈ NhanVien(MaNV, HoTen, Phai, Phg), v i V=NhanVien +
̈ K1={MaPB} là khóa chính c a quan h PhongBan,
K2={Phg} ⊆ V
̈ K1 và K2 cùng có 1 thu c tính bi u th mã phòng ban.
̈ Dom(K2) ⊆ Dom(K1), ngh a là, quan h 1-n
̈ K2 là khóa ngo i c a NhanVien tham chi u đ n khóa chính K1 c a PhongBan.
Trang 98Khóa Ngo i – Foreign Keys
̈ Dom(K2) ⊆ Dom(K1), ngh a là, quan h 1-n
̈ K2 là khóa ngo i c a PhanCong tham chi u đ n
khóa chính K1 c a NhanVien.
Trang 101$2.8 Chuy n t ER sang RDM
̈ K t qu đ t đ c sau khi áp d ng B c
1.
̈ NHANVIEN(MaNV, HoNV, TenLot, TenNV,
Phai, Luong, DiaChi, NgaySinh)
̈ PHONGBAN(MaPHG, TenPHG)
̈ DEAN(MaDA, TenDA, DDiem_DA)
Trang 102TenTN Phai
NgaySinh Quanhe
Trang 103̈ DEAN(MaDA, TenDA, DDiem_DA)
̈ THANNHAN(MaNV, TenTN, Phai, NgaySinh, Quanhe)
Trang 104$2.8 Chuy n t ER sang RDM
̈ B c 3 Lo i m i k t h p (1,1) – (1,1)
NHANVIEN(MaNV, HoNV, TenLot, TenNV, Phai, Luong, DiaChi, NgaySinh)
PHONGBAN(MaPB, TenPB, TrPHG, NgayNC)
NHANVIEN MaNV
TenPB
DiaDiem
Qu n lý (0,1)
(1,1) NgayNC
Trang 105$2.8 Chuy n t ER sang RDM
̈ B c 4 Lo i m i k t h p (1,1) – (1,n)
không có thu c tính riêng
NHANVIEN(MaNV, HoNV, TenLot, TenNV, Phai, Luong, DiaChi, NgaySinh,MaPB)
PHONGBAN(MaPB, TenPB, TrPHG, NgayNC)
Trang 106$2.8 Chuy n t ER sang RDM
̈ B c 5 Lo i m i k t h p (1,1) – (1,n) có
thu c tính riêng
PHONGBAN(MaPB, TenPB, TrPhg, NgayNC)
DEAN(MaDA, TenDA, DiaDiem, MaPB, NgayBD)
PHONGBAN MaPB
TenPB
DiaDiem
Ph trách
DEAN MaDA
Trang 107$2.8 Chuy n t ER sang RDM
̈ B c 6 Lo i m i k t h p (1,n) – (1,n) có
thu c tính riêng
NHANVIEN MaNV
TenDA
DiaDiem
PhanCong (1,n)
(1,n)
ThoiGian
Trang 108$2.8 Chuy n t ER sang RDM
̈ B c 7 Thu c tính đa tr
DDIEM_PHONG(MaPB, DiaDiem) PHONGBAN
MaPB
TenPB
DiaDiem
Trang 109$2.8 Chuy n t ER sang RDM
̈ L c đ CSDL thu đ c
NHANVIEN(MaNV, HoNV, TenLot, TenNV, Phai, Luong, DiaChi, NgaySinh,MaPB)
PHONGBAN(MaPB, TenPB, TrPhg, NgayNC)
DEAN(MaDA, TenDA, MaPB, DDiem_DA)
PHANCONG(MaNV, MaDA, ThoiGian)
DDIEM_PHONG(MaPB, DiaDiem) THANNHAN(MaNV, TenTN, Phai, NgaySinh, Quanhe)
Trang 110TenNg
SLGV
Trang 111CƠ SỞ DỮ LIỆU
ThS.Lê V n H nh
Trang 112I S QUAN H
(Relational Algebra)
Trang 113̈ K t b ng (equi-join), K t t nhiên (natural-join), K t
n i (inner-join), K t trái (left-join), K t ph i join), K t ngo i (outer-join)
(right-¸ Phép chia
¸ Các hàm k t h p
3. Các thao tác trên d li u quan h : thêm, xóa
, s a
Trang 114$3.1 Gi i thi u
̈ i s quan h là ngôn ng dùng đ đ c t
vi c truy xu t d li u trên quan h
̈ G m t p h p các phép toán trên các quan h
và cho k t qu là m t quan h
̈ i s quan h có n n t ng toán h c (c th
là lý thuy t t p h p) đ mô hình hóa CSDL
quan h Ngoài ra, ta có th áp d ng các
phép toán có s n c a lý thuy t t p h p đ t i
u quá trình rút trích d li u t CSDL quan h
Trang 115̈ Có n m phép toán c b n:
̈ Ch n ( ): Ch n t p con các dòng trong quan h
̈ Chi u (Π): Xóa các c t không mong mu n.
̈ Tích Descartes (x): K t hai quan h
Trang 116̈ M t s phép toán trên quan h đòi h i
2 quan h tham gia ph i kh h p
̈ Quan h kh h p: hai quan h r và s
đ c coi là kh h p khi:
̈ S l ng thu c tính ph i b ng nhau (cùng
b c)
̈ Mi n giá tr c a thu c tính ph i t ng thích (dom(Ai) = dom(Bi)) v i 1 ≤ i ≤ n
Trang 117Phép h i – ∪
̈ Cho r và s là 2 quan h kh h p
r ∪ s = { t/ (t ∈ r) ∨ (t ∈ s) }
̈ Quan h k t qu g m t t c các b có trong r ho c có trong s (không trùng)
Trang 118Phép giao – ∩
̈ Cho r và s là 2 quan h kh h p
r ∩ s = { t/ (t ∈ r) ∧ (t ∈ s) }
̈ Quan h k t qu g m t t c các b có trong c r l n s
Trang 119Phép tr –
-̈ Cho r và s là 2 quan h kh h p
r - s = { t/ (t ∈ r) ∧ (t ∉ s) }
̈ Quan h k t qu g m t t c các b có trong r nh ng không có trong s
Trang 121Phép ch n – δ
̈ Ví d , cho bi t các sinh viên có h c b ng
̈ Cho danh sách các nhân viên n c a phòng
KD có l ng l n h n 1000000
δPhai=‘nu’ and Phg=‘KD’ and Luong>100000 (NHANVIEN)
Trang 122̈ Ch n nh ng nhân viên phái là “N ” và l ng
>25000 ho c nh ng nhân viên có h là “ inh”
Trang 123Phép chi u - Π
̈ Cho tr c m t l c đ quan h R(A1, A2,…, An), X⊂R, r(R):
Trang 125Phép chi u - Π
̈ Cho danh sách nhân viên g m các thông tin tên
nhân viên, l ng, ngày sinh, phái
̈ ΠTenNV,Luong,NgaySinh,Phai(NHANVIEN)
̈ Cho bi t MaNV, TenNV, Luong c a các nhân viên
có luong>20000
̈ ΠMaNV,TenNV,Luong (δLuong>20000 (NHANVIEN))
̈ Cho bi t tên nhân viên n phòng KD
̈ ΠTenNV (δPhai=‘nu’ and Phg=‘KD’ (NHANVIEN))
Trang 126̈ Ví d : Cho bi t tên nhân viên n phòng KD
̈ KQ1 í δPhai=‘nu’ and Phg=‘KD’ (NHANVIEN)
̈ KQ í ΠTenNV (KQ1)
Trang 127̈ Quan h : <tên m i>íphép toán quan h
̈ SV í ΠHoTen, MaSV(SinhVien)
̈ Thu c tính: <tên m i qh>(tên m i thu c tính)í
phép toán quan h
SV(Ten,Maso) í Π (SinhVien)
Trang 129001 Vuong Ngoc Quyen
QL
TRPH G TENPHG
Tien Ba
Dinh
004
001
Quan Ly QL
Tien Ba
Dinh
004
002
Nghien Cuu NC
Nhan Thi
Le
003
003
Dieu Hanh DH
Nhan Thi
Le
003
001
Quan Ly QL
Nhan Thi
Le
003
002
Nghien Cuu NC
Tung Thanh
Nguyen
002
003
Dieu Hanh DH
Tung Thanh
Nguyen
002
001
Quan Ly QL
Tung Thanh
Nguyen
002
002
Nghien Cuu NC
Quyen Ngoc
Vuong
001
003
Dieu Hanh DH
Quyen Ngoc
Vuong
001
001
Quan Ly QL
Quyen Ngoc
Vuong
001
TRPHG TENPHG
MAPHG TENNV
TENLOT HONV
MANV
003
Dieu Hanh DH
Nhan Thi
Le
003
002
Nghien Cuu
NC Tung
Thanh Nguye
n
002
001
Quan Ly QL
Quyen Ngoc
Vuong
001
TRPHG TENPHG
MAPHG TENNV
TENLOT HONV
MANV
Trang 132Phép k t - - – k t
̈ Phép k t b ng: khi là phép so sánh “=”
ta g i là phép k t b ng hay còn g i là equi-join
̈ Phép k t t nhiên: K t b ng hai quan h
và m t trong hai thu c tính tham gia
đi u ki n k t đó đ c lo i b qua phép chi u thì phép k t đó đ c g i là k t t nhiên (natural-join)