Thiết kế hệ cơ sở dữ liệu quan hệ

Tài liệu Thiết kế hệ cơ sở dữ liệu quan hệ: Thi t k C s dế ế ơ ở ữ li u quan hệ ệ (tài li u h ng d n)ệ ướ ẫ 1 M c l cụ ụ L i m đ uờ ở ầ L i gi i thi uờ ớ ệ Mô tả Bài h cọ C s lý lu nơ ở ậ M c tiêu bài h cụ ọ M c tiêuụ N i dungộ Đi u ki n tiên quy tề ệ ế Ph n chầ ữ Ph ng pháp nghiên c uươ ứ Ph n minh h aầ ọ Quy cướ B ngả Th thu tủ ậ Ghi chú Tóm t tắ Ph i h pố ợ Byte ki n th cế ứ L i chuyên giaờ Bài t pậ Th c hànhự Bài t p trên l pậ ớ Bài t p v nhàậ ề Đáp án bài t pậ Đánh giá khóa h cọ 2 M c l cụ ụ L i gi i thi uờ ớ ệ L i m đ uờ ở ầ ................................................................................................................ Mô tả............................................................................................................. C s lý lu nơ ở ậ ................................................................................................ M c tiêuụ ........................................................................................................ Đi u ki n tiên quy...

pdf198 trang | Chia sẻ: hunglv | Lượt xem: 1444 | Lượt tải: 0download
Bạn đang xem trước 20 trang mẫu tài liệu Thiết kế hệ cơ sở dữ liệu quan hệ, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Thi t k C s dế ế ơ ở ữ li u quan hệ ệ (tài li u h ng d n)ệ ướ ẫ 1 M c l cụ ụ L i m đ uờ ở ầ L i gi i thi uờ ớ ệ Mô tả Bài h cọ C s lý lu nơ ở ậ M c tiêu bài h cụ ọ M c tiêuụ N i dungộ Đi u ki n tiên quy tề ệ ế Ph n chầ ữ Ph ng pháp nghiên c uươ ứ Ph n minh h aầ ọ Quy cướ B ngả Th thu tủ ậ Ghi chú Tóm t tắ Ph i h pố ợ Byte ki n th cế ứ L i chuyên giaờ Bài t pậ Th c hànhự Bài t p trên l pậ ớ Bài t p v nhàậ ề Đáp án bài t pậ Đánh giá khóa h cọ 2 M c l cụ ụ L i gi i thi uờ ớ ệ L i m đ uờ ở ầ ................................................................................................................ Mô tả............................................................................................................. C s lý lu nơ ở ậ ................................................................................................ M c tiêuụ ........................................................................................................ Đi u ki n tiên quy tề ệ ế ..................................................................................... Ph ng pháp nghiên c uươ ứ .......................................................................................... Quy cướ ..................................................................................................................... Bài 1A: Gi i thi u v H Qu n tr CSDL quan hớ ệ ề ệ ả ị ệ................ Gi i thi u v H Qu n tr CSDLớ ệ ề ệ ả ị ............................................................................ Ng i s d ngườ ử ụ .............................................................................................. T i sao ph i s d ng H Qu n tr CSDLạ ả ử ụ ệ ả ị ................................................................ L i ích c a ph ng pháp ti p c n CSDLợ ủ ươ ế ậ ................................................... C u trúc c a H Qu n tr CSDLấ ủ ệ ả ị .............................................................................. M c ngoài ứ .................................................................................................... M c đ nh nghĩaứ ị ............................................................................................ M c trong ứ .................................................................................................... Các c u ki n ch c năng c a H Qu n tr CSDLấ ệ ứ ủ ệ ả ị .................................................... Ng i qu n lý CSDLườ ả ................................................................................... Ng i qu n lý fileườ ả ........................................................................................ Ng i qu n lý đĩaườ ả ổ ..................................................................................... L p đ án và thi t k CSDLậ ồ ế ế .................................................................................... S c n thi t ph i l p đ án CSDLự ầ ế ả ậ ồ .............................................................. Chu kỳ phát tri n CSDLể ............................................................................... H u qu c a vi c l p đò án và thi t k CSDL s sàiậ ả ủ ệ ậ ế ế ơ ................................ Tóm t tắ ...................................................................................................................... Bài 1B – Mô hình d li uữ ệ .......................................................... Mô hình d li uữ ệ ......................................................................................................... Mô hình logic d a trên đ i t ngự ố ượ ................................................................ Mô hình logic d a trên b n tinự ả ..................................................................... Đ i s quan hạ ố ệ.......................................................................................................... 3 Các toán t trong đ i só quan hử ạ ệ.................................................................. ng d ng c a H Qu n tr CSDL quan hỨ ụ ủ ệ ả ị ệ............................................................. Tóm t tắ ...................................................................................................................... Bài 1C – Ph i h pố ợ Byte ki n th cế ứ ........................................................................................................... Mô hình phân c p và m ng l iấ ạ ướ .................................................................. Ng i qu n tr CSDLườ ả ị ................................................................................... L i chuyên giaờ ........................................................................................................... Luy n t pệ ậ ...................................................................................................... Th thu tủ ậ ....................................................................................................... Các câu h i th ng g pỏ ườ ặ ............................................................................... Bài t pậ ....................................................................................................................... Bài 1D – Th c hànhự Bài t p l pậ ở ớ ............................................................................................................. Bài 1................................................................................................................ Bài 2................................................................................................................ Bài 3................................................................................................................ Bài 4................................................................................................................ Bài t p v nhàậ ề ........................................................................................................... Bài 2A – Thi t k CSDL logicế ế Mô hình khái ni mệ .................................................................................................... Ánh x l c đ t i b ngạ ượ ồ ớ ả .............................................................................. th thu t thi t k CSDL logicủ ậ ế ế ...................................................................... Tóm t tắ ...................................................................................................................... Bài 2B – Chu n hóa và phi chu n hóa d li uẩ ẩ ữ ệ Chu n hóaẩ .................................................................................................................. Ph ng pháp top-down và bottom-upươ ........................................................... D th a d li uư ừ ữ ệ ............................................................................................. S c n thi t ph i chu n hóaự ầ ế ả ẩ ......................................................................... S khácnhau gi a các d ng chu n và phi chu n hóaự ữ ạ ẩ ẩ .............................................. Các d ng chu nạ ẩ ............................................................................................. Phi chu n hóaẩ ................................................................................................. 4 Tóm t tắ ...................................................................................................................... Baì 2C – Ph i h pố ợ Byte ki n th cế ứ ........................................................................................................... Mi nề ............................................................................................................... D ng chu n th tạ ẩ ứ ư........................................................................................ Các d ng chu n khácạ ẩ ..................................................................................... L i chuyên giaờ ........................................................................................................... Luy n t pệ ậ ....................................................................................................... Th thu tủ ậ ........................................................................................................ Các câu h i th ng g pỏ ườ ặ ................................................................................ Bài t pậ ....................................................................................................................... Bài 2D – Th c hànhự Bài t p l pậ ở ớ ............................................................................................................. Bài 1................................................................................................................ Bài 2................................................................................................................ Bài 3................................................................................................................ Bài t p v nhàậ ề ........................................................................................................... Bài 3A – Thi t k CSDL v t lýế ế ậ ................................................ Ngôn ng h tr mô hình quan hữ ỗ ợ ệ........................................................................... Các ki u quan hể ệ........................................................................................... B ng c sả ơ ở..................................................................................................... K t qu truy v nế ả ấ ........................................................................................... Hi n thể ị.......................................................................................................... Th c hi n hi n th trên H Qu n tr CSDL quan hự ệ ể ị ệ ả ị ệ............................................... Thao tác DML trên hi n thể ị........................................................................... Các lo i hi n thạ ể ị............................................................................................ Hi n th dùng đ làm gìể ị ể ................................................................................. Toàn v n d li uẹ ữ ệ ....................................................................................................... Tóm t tắ ...................................................................................................................... Bài 3B – Th c hi n giao d ch và b o m tự ệ ị ả ậ X lý giao d ch CSDLử ị ............................................................................................... Khôi ph c giao d chụ ị ....................................................................................... 5 Nh t ký giao d chậ ị ........................................................................................... Các v n đ x y ra cùng lúcấ ề ả ........................................................................... Khóa ........................................................................................................................ Các lo i khóaạ ................................................................................................. Khóa ch tế ....................................................................................................... B o m t d li uả ậ ữ ệ ........................................................................................................ Khái ni m v s đ b o m t d li uệ ề ơ ồ ả ậ ữ ệ .......................................................... Xây d ng s đ b o m t d li uự ơ ồ ả ậ ữ ệ ................................................................. Tóm t tắ ...................................................................................................................... Bài 3C – Ph i h pố ợ Byte ki n th cế ứ ........................................................................................................... 12 quy t c c a CODDắ ủ ................................................................................... M c l cụ ụ .......................................................................................................... Khôi ph c t khóa ch tụ ư ế ................................................................................. Khôi ph c CSDLụ ............................................................................................ L i chuyên giaờ ........................................................................................................... Luy n t pệ ậ ....................................................................................................... Th thu tủ ậ ........................................................................................................ Các câu h i th ng g pỏ ườ ặ ................................................................................ Bài t pậ ....................................................................................................................... Đáp án Đáp án cho bài 1C...................................................................................................... Đáp án cho bài 2C...................................................................................................... Đáp án chp bài 3C...................................................................................................... 6 L i gi i thi uờ ớ ệ Mô t v n t t n i dung h c t pả ắ ắ ộ ọ ậ Giáo trình gi i thi u khái ni m, c u trúc c a h th ng qu n lí c s d li uớ ệ ệ ấ ủ ệ ố ả ơ ở ữ ệ (CSDL) và h th ng qu n lí CSDL h th c. Đ ng th i, giáo trình bàn lu n các v nệ ố ả ệ ứ ồ ờ ậ ấ đ v thi t k , phác th o trong quá trình thi t k 1 CSDL và nh ng v n đ thi tề ề ế ế ả ế ế ữ ấ ề ế y u v ngôn ng truy nh p CSDL. Bên c nh đó, giáo trình cũng đ c p đ n nh ngế ề ữ ậ ạ ề ậ ế ứ khái ni m trong giao d ch và b o m t CSDL.ệ ị ả ậ C s lí lu nơ ở ậ S ph bi n c a các ph n m m qu n lí CSDL giúp vi c t o ra các CSDL và ngự ổ ế ủ ầ ề ả ệ ạ ứ d ng c a chúng m t cách d dàng. Tuy nhiên, vi c t o CSDL mà không có m tụ ủ ộ ễ ệ ạ ộ thi t k ch t ch th ng d n đ n các l i CSDL ho c s c h th ng. Vì th ,ế ế ặ ẽ ườ ẫ ế ỗ ặ ự ố ệ ố ế ki n th c v ng ch c v thi t k CSDL c v lý thuy t l n th c ti n là y u t t iế ứ ữ ắ ề ế ế ả ề ế ẫ ự ễ ế ố ố quan tr ng. Giáo trình này cung c p cho h c viên nh ng hi u bi t c n thi t choọ ấ ọ ữ ể ế ầ ế vi c t o 1 CSDL ch t ch .ệ ạ ặ ẽ M c tiêuụ Sau khi hoàn thành khóa h c, h c viêncó th :ọ ọ ể  Đ nh nghĩa h th ng qu n lí CSDLị ệ ố ả  Phân bi t các thành ph n c a h th ng CSDLệ ầ ủ ệ ố  Đ nh nghĩa c u trúc CSDLị ấ  Đ nh nghĩa chu kỳ đ i s ng và ph ng pháp lu n phát tri n c a thi t kị ờ ố ươ ậ ể ủ ế ế CSDKL  Mô t các lo i hình CSDLả ạ  T o gi n đ th c th - quan hạ ả ồ ự ể ệ  Li t kê các h th c gi a các th c thệ ệ ứ ữ ự ể  Đ nh nghĩa h th ng CSDL h th cị ệ ố ệ ứ  Đ nh nghĩa đ i s quan hị ạ ố ệ  T o các CSDL thi t k logicạ ế ế  Đ nh nghĩa chu n hóa và phi chu n hóaị ẩ ẩ  T o thi t k CSDL v t lýạ ế ế ậ  Đ nh nghĩa ngôn ng truy nh p CSDL (SQL)ị ữ ậ 7  Th c thi h th c thông qua SQLự ệ ứ  Đ nh nghĩa khung nhìnị  Gi i thích nh ng h n ch trong xây d ng CSDL gây ra b i SQLả ữ ạ ế ự ở  Đ nh nghĩa, xác nh n, h y các giao d ch CSDLị ậ ủ ị  Nh n di n các v n đ tranh ch p trong x ký CSDL nhi u ng i dùngậ ệ ấ ề ấ ử ề ườ  Th c hi n ch n đ i v i d li uự ệ ặ ố ớ ữ ệ  Th c hi n b o mât CSDLự ệ ả Đi u ki n tiên quy tề ệ ế Đ hoàn thành ch ng trình h c, h c viên c n đáp ng nhũng yêu c u sau:ể ươ ọ ọ ầ ứ ầ Hi u bi t th c ti n v h đi u hànhể ế ự ễ ề ệ ề 8 Ph ng pháp ph i h p h ng d n-t h cươ ố ợ ướ ẫ ự ọ trong gi ng d y (Learning Architecture Basedả ạ on Collaborative Constructivism (LACC) Gi i thi uớ ệ Nhìn chung, các ph ng pháp gi ng d y ch y u đ c th c hi n qua các hìnhươ ả ạ ủ ế ượ ự ệ th c sau:ứ  Đ i tho i, trong đó giáo viên thuy t minh các ki n th c trong các bài gi ng,ố ạ ế ế ứ ả giáo trình, h c viên ghi chép, ghi nh đ l p l i các ki n th c thu nh nọ ớ ể ậ ạ ế ứ ậ đ c.ượ  Đ i tho i, trong đó giáo viên truy n đ t ki n th c trong sách v , h c viênố ạ ề ạ ế ứ ở ọ k t h p xây d ng bài.ế ợ ự  Xây d ng tình hu ng, h c viên t tìm tòi, nghiên c u đ gi i quy t tìnhự ố ọ ự ứ ể ả ế hu ng, qua đó tích lũy ki n th c.ố ế ứ B t kỳ h th ng gi ng d y nào cũng đ u có th k t h p t t c các ph ng th cấ ệ ố ả ạ ề ể ế ợ ấ ả ươ ứ trên đ t o ra hi u qu t t nh t. Ph ng pháp gi ng d y truy n th ng chú tr ngể ạ ệ ả ố ấ ươ ả ạ ề ố ọ vào hình th c đ i tho i đ u tiên. Hai hình th c sau, cùng v i nh ng lý lu n vứ ố ạ ầ ứ ớ ữ ậ ề nh n th c tình hu ng và ph i h p các ph ng pháp, đã đ t ra nh ng th thách toậ ứ ố ố ợ ươ ặ ữ ử l n cho vi c xây d ng ph ng pháp lu n m i trong vi c d y và h c.ớ ệ ự ươ ậ ớ ệ ạ ọ Các giai đo n trong h c t p kinh nghi m:ạ ọ ậ ệ Theo David A Kolb, h c t p kinh nghi m g m 4 giai đo n:ọ ậ ệ ồ ạ  Concrete experiences (c th /c m tính)– CE: h c viên ti p c n bài h c quaụ ể ả ọ ế ậ ọ các ví d c thụ ụ ể  Reflective observation (quan sát/ph n h i) – RO: h c viên d a trên kinhả ồ ọ ự nghi m tích lũy c a mình đ tìm hi u ý nghĩa bài h cệ ủ ể ể ọ  Active experimentation (tích c c/hành đ ng) – AE: h c viên t các ý nghĩaự ộ ọ ừ đ đ a ra k t lu nể ư ế ậ  Abstract conceptualzation (t duy/ tr u t ng) – AC: h c viên th nghi mư ừ ượ ọ ử ệ v i các tr ng h p t ng t đ có nh ng kinh nghi m m iớ ườ ợ ươ ự ể ữ ệ ớ 9 Phân lo i h c viênạ ọ D a trên các giai đo n h c t p kinh nghi m, có th chia thành 4 ki u ng i h cự ạ ọ ậ ệ ể ể ườ ọ v i các phong cách:ớ  H c t p tách bi t (Divergers): ng i h c có kh năng t ng t ng t tọ ậ ệ ườ ọ ả ưở ượ ố  H c t p hòa đ ng (Assimilators): ng i h c có kh năng xác đ nh, phân tíchọ ậ ồ ườ ọ ả ị v n đấ ề  H c t p h i t (Convergers) : ng i h c có kh năng xác đ nh và gi i quy tọ ậ ộ ụ ườ ọ ả ị ả ế v n đấ ề  H c t p ph i h p (Accommodators): ng i h c có kh năng lãnh đ o vàọ ậ ố ợ ườ ọ ả ạ ch p nh n r i ro.ấ ậ ủ Ph ng pháp gi ng d y đ c đáo LACC k t h p nhi u ph ng th c gi ng d y xâyươ ả ạ ộ ế ợ ề ươ ứ ả ạ d ng nên các ph n h c khác nhau thích ng v i kh năng và nhu c u c a t ng h cự ầ ọ ứ ớ ả ầ ủ ừ ọ viên. Các ph n trong ch ng trình:ầ ươ Ph ng pháp gi ng d y LACC c a NIIT g m các ph n sau:ươ ả ạ ủ ồ ầ  C s : ph n m đ u khóa h c, d i s h ng d n c a m t chuyên viên,ơ ở ầ ở ầ ọ ướ ự ướ ẫ ủ ộ gi i thi u v các khái ni m m i, giúp h c viên hình thành ki n th c n nớ ệ ề ệ ớ ọ ế ứ ề t ng. Gi ng viên đ a ra các bài th c hành c th thông qua gi i thích vàả ả ư ự ụ ể ả minh h a, cung c p cho h c viên l ng ki n th c yêu c u cho h c ph nọ ấ ọ ượ ế ứ ầ ọ ầ sau.  Ph i h p: ph n giúp h c viên làm quen v i ng c nh h c t p qua vi c c ngố ợ ầ ọ ớ ữ ả ọ ậ ệ ộ tác. H c viên đ c h ng d n và khuy n khích th ac hành k năng quan sátọ ượ ướ ẫ ế ư ỹ và phán đoán. H c viên có quy n l a ch n nhi u công c h c t p nhọ ề ự ọ ề ụ ọ ậ ư nghiên c u tình hu ng, phân tích gi thi t và v n d ng nh ng ki n th c đãứ ố ả ế ậ ụ ữ ế ứ h c trong các ng c nh l n h n.ọ ữ ả ớ ơ 10  Th c nghi m: T i đây, h c viên đ c tìm hi u c n k v n đ qua vi cự ệ ạ ọ ượ ể ặ ẽ ấ ề ệ th c nghi m ng d ng. h c viên th c nghi m nh ng hi u bi t và quan sátự ệ ứ ụ ọ ự ệ ữ ể ế c a mình đ đ a ra k t lu n, t o đ c hi u qu cao trong h c t p.ủ ể ư ế ậ ạ ượ ệ ả ọ ậ  V n d ng th c ti n: ph n này đ a h c viên vào m t môi tr ng thích h pậ ụ ự ễ ầ ư ọ ộ ườ ợ cho vi c làm sáng t các khái ni m. T i đây h c viên s t tìm tòi, nghiênệ ỏ ệ ạ ọ ẽ ự c u, so sánh, đ i chi u, v n d ng nh n hi u bi t c a mình đ đ a raứ ố ế ậ ụ ữ ể ế ủ ể ư h ng gi i quy t cho tình hu ng mình nghiên c u. H c viên đ c làm quenướ ả ế ố ứ ọ ượ v i vi c th c hi n các công trình nghiên c u, tìm ki m thông tin, th c hànhớ ệ ự ệ ứ ế ự k năng phân tích (ISAS) và k năng đ i chi u (RR).ỹ ỹ ố ế Trang thi t b c n thi tế ị ầ ế  Phòng h c tr c tuy n: phòng h c đ c trang b máy tính n i m ng.ọ ự ế ọ ượ ị ố ạ  Môi tr ng thích h p cho các nhóm ph i h p và v n d ng k năngườ ợ ố ợ ậ ụ ỹ 11 *Tài li u tham kh oệ ả  Kolb, D. (1984a).Experiential learning: Experience as the source of learning and development. Eglewood Cliffs, NJ: Prentice Hall  Kolb, D. (1984b). Learning Styles Inventory. Boston: McBer & Co.  R Dangwal [NIIT] & Mitra [NIIT]. Learning Styles and Perception of Self, Giáo d c qu c t , t p chí đi n t , t p 4, s 4 (12/2000) ISN 1327-9548,ụ ố ế ạ ệ ử ậ ố Australia (2000)  Children and the Internet: Experiments with minimally invasive education in India, Sugata Mitra [NIIT] và Vivek Rana [NIIT], T p chí Công ngh giáoạ ệ d c Anh Qu c, 32,2, trang 221-232 (2001)ụ ố  Minimally Invasive education: A progress report on the “Hole-in-the-wall” experiments, S. Mitra [NIIT], T p chí Công ngh Giáo d c Anh Qu c, 34,3,ạ ệ ụ ố trang 367-371 (2003) 12 Chú thích: C sơ ở M đ u khái ni m m iở ầ ệ ớ Thông tin thêm Th thu tủ ậ Ch ki u ữ ể Courier new Mã ho c cú pháp ch ng trìnhặ ươ Ch in nghiêngữ Gi i thi u thu t ng m iớ ệ ậ ữ ớ Ch in đ mữ ậ Tùy ch n menu, tùy ch n trong các h p tho i, phím gõọ ọ ộ ạ Ph i h pố ợ L i khuyên c a chuyên giaờ ủ Th c hành, bài t p thí nghi mự ậ ệ Bài t p v nhàậ ề 13 Bài 1: 1A Gi i thi u h th ng qu nớ ệ ệ ố ả lý c s d li u h th cơ ở ữ ệ ệ ứ M c tiêu bài h cụ ọ Trong bài này, h c viên s tìm hi uọ ẽ ể  Đ nh nghĩa h th ng qu n lý c s d li u (CSDL)ị ệ ố ả ơ ở ữ ệ  Nh n di n các ng i dùng CSDLậ ệ ườ  Nêu rõ s c n thi t c a h th ng CSDLự ầ ế ủ ệ ố  Đ nh nghĩa c u trúc c a h th ng CSDL d a trên:ị ấ ủ ệ ố ự o M c khung nhìnứ o M c khái ni mứ ệ o M c v t lýứ ậ  Phân bi t các c u ki n ch c năng c a h qu n tr CSDLệ ấ ệ ứ ủ ệ ả ị  Nêu s c n thi t c a vi c quy ho ch CSDLự ầ ế ủ ệ ạ  Phân bi t các giai đo n c a chu kỳ phát tri n CSDL (DDLC)ệ ạ ủ ể  Nh n bi t các h u qu c a s s sài trong quy ho ch và thi t k CSDLậ ế ậ ả ủ ự ơ ạ ế ế Chú ý: Tham kh o trên trang web ả www.niitstudent.com đ tích lũy thêm kinhể nghi m h c t pệ ọ ậ 14 C s d li u là m t t p h p các b n ghi chép d li u. M t trong nh ng nhi m vơ ở ữ ệ ộ ậ ợ ả ữ ệ ộ ữ ệ ụ quan tr ng c a h th ng máy tính là l u tr và qu n lý các d li u. Đ hoàn t tọ ủ ệ ố ư ữ ả ữ ệ ể ấ nhi m v này, h c viên c n m t ph n m m chuyên d ng, đ c g i là H qu n trệ ụ ọ ầ ộ ầ ế ụ ượ ọ ệ ả ị CSDL (DBMS). H qu n tr CSDL đ c thi t k đ duy trì m t l ng l n d li u.ệ ả ị ượ ế ế ể ộ ượ ớ ữ ệ Công tác qu n lý d li u bao g m:ả ữ ệ ồ  Xác đ nh k t c u c a b nhị ế ấ ủ ộ ớ  Cung c p các thi t b cho x lý d li uấ ế ị ử ữ ệ  Đ m b o b o m t d l u tr c các truy nh p trái phépả ả ả ậ ữ ệ ướ ậ H qu n tr CSDL hi n nay có th dùng đ c cho nhi u lo i máy tính khác nhau,ệ ả ị ệ ể ượ ề ạ t máy tính đ bàn đ n các máy tính trung tâm. Kích th c và kh năng c a máyừ ể ế ướ ả ủ tính quy t đ nh đ n các công c c a h th ng, nh b o m t và l u tr .ế ị ế ụ ủ ệ ố ư ả ậ ư ữ H máy tính đ n ng i dùng ch cho phép m t đ i t ng truy c p CSDL t i 1 th iệ ơ ườ ỉ ộ ố ượ ậ ạ ờ đi m. Trong h máy tính nhi u ng i s d ng, nhi u đ i t ng có th truy c pể ệ ề ườ ử ụ ề ố ượ ể ậ CSDL trong cùng 1 th i đi m.ờ ể Cùng v i s phát tri n kh năng c a máy tính đ bàn, h th ng SCDL nhi u ng iớ ự ể ả ủ ể ệ ố ề ườ s d ng có th h tr 1 nhóm ng i s d ng k t n i tr c ti p v i nhau và ti pử ụ ể ỗ ợ ườ ử ụ ế ố ự ế ớ ế c n đ ng th i CSDL. H th ng CSDL này có th nhân lên đ có th h tr hàngậ ồ ờ ệ ố ể ể ể ỗ ợ trăm, th m chí hàng ngàn ng i s d ng, tùy thu c vào c u hình c a ph n c ng màậ ườ ử ụ ộ ấ ủ ầ ứ h th ng SCDL đang v n hành.ẹ ố ậ M c đích chính c a h qu n tr CSDL:ụ ủ ệ ả ị  Cung c p môi tr ng làm vi c thu n ti n và hi u qu , đ c dùng đ l uấ ườ ệ ậ ệ ệ ả ượ ể ư tr và khôi ph c d li u t CSDLữ ụ ữ ệ ừ  Qu n lý thông tin v ng i s d ng h qu n tr CSDL và nh ng tác v màả ề ườ ử ụ ệ ả ị ữ ụ ng i s d ng có th th c hi n đ i v i d li uườ ử ụ ể ự ệ ố ớ ữ ệ Đ i v i ng i s d ngố ớ ườ ử ụ M t ng i s d ng h qu n tr CSDL có th th c hi n các tác v sau trên CSDLộ ườ ử ụ ệ ả ị ể ự ệ ụ  Thêm các t p (file) vào CSDLệ  Chèn d li u vào 1 file hi n hànhữ ệ ệ  Khôi ph c d li u t các fileụ ữ ệ ừ 15  C p nh t d li u cho các fileậ ậ ữ ệ  Xóa d li u trong các fileữ ệ  G b file t CSDLỡ ỏ ừ  Tuân th quy đ nh v b o m t và toàn v n CSDLủ ị ề ả ậ ẹ Có 3 lo i ng i s d ng CSDL:ạ ườ ử ụ  L p trình viên ng d ngậ ứ ụ  Ng i s d ng tr c ti pườ ử ụ ự ế  Nhà qu n tr CSDL (DBA)ả ị L p trình viên ng d ng vi t các ch ng trình h tr ng i dùng s d ng CSDL.ậ ứ ụ ế ươ ỗ ợ ườ ử ụ Các ch ng trình này th ng đ c vi t b ng các ngôn ng nh C, C++, Visualươ ườ ượ ế ằ ữ ư Basic và Visual C++. Các ch ng trình này x lý d li u trong CSDL đ khôi ph c,ươ ử ữ ệ ể ụ chèn, xóa, ho c s a đ i d li u.ặ ử ổ ữ ệ Ng i s d ng t ng tác v i m t h qu n tr CSDL b ng cách yêu c u ch ngườ ử ụ ươ ớ ộ ệ ả ị ằ ầ ươ trình ng d ng ho c b ng cách vi t truy v n trên ngôn ng truy nh p CSDL. Ngônứ ụ ặ ằ ế ấ ữ ậ ng truy nh p c s d li u cho phép ng i s d ng th c hi n các thao tác cữ ậ ơ ở ữ ệ ườ ử ụ ự ệ ơ b n, nh khôi ph c, xóa, chèn, và c p nh t d li u.ả ư ụ ậ ậ ữ ệ Qu n tr viên CSDL k t h p ch c năng c a ng i thu th p thông tin v d li uả ị ế ợ ứ ủ ườ ậ ề ữ ệ c n l u tr , thi t k và duy trì CSDL và b o m t. CSDL c n đ c thi t k và duyầ ư ữ ế ế ả ậ ầ ượ ế ế trì đ đ a ra thông tin chính xác cho ng i s d ng.ể ư ườ ử ụ 16 T i sao c n s d ng h th ng qu n lý c s d li u?ạ ầ ử ụ ệ ố ả ơ ở ữ ệ Tr c khi h qu n tr CSDL ra đ i, ph ng pháp x lý d li u truy n th ng đ cướ ệ ả ị ờ ươ ử ữ ệ ề ố ượ th c hi n nh sau. Trong ph ng pháp truy n th ng, m t ch ng trình (ho c m tự ệ ư ươ ề ố ộ ươ ặ ộ t p h p các ch ng trình) đ c xây d ng cho t ng ng d ng, t o ra1 ho c m t vàiậ ợ ươ ượ ự ừ ứ ụ ạ ặ ộ file d li u cho m t ng d ng. nhi u d li u xu t hi n nhi u l n trong các fileữ ệ ộ ứ ụ ề ữ ệ ấ ệ ề ầ khác nhau. Tuy nhiên, m t ng d ng có th đòi h i file ph i đ c s p x p theoộ ứ ụ ể ỏ ả ượ ắ ế t ng ph m vi riêng bi t, trong khi ng d ng khác cũng đòi h i d li u đó. M từ ạ ệ ứ ụ ỏ ữ ệ ộ nh c đi m l n c a ph ng pháp truy n th ng là k thu t l u tr và truy c p g nượ ể ớ ủ ươ ề ố ỹ ậ ư ữ ậ ắ vào vào ch ng trình. Vì th , khi cùng m t d li u đ c yêu c u b i hai ng d ng,ươ ế ộ ữ ệ ượ ầ ở ứ ụ d li u ph i đ c l u tr hai n i khác nhau vì m i ng d ng đòi h i d li u l uữ ệ ả ượ ư ữ ở ơ ỗ ứ ụ ỏ ữ ệ ư tr khác nhau.ữ Ví d , tr ng h p c a m t tr ng đ i h cụ ườ ợ ủ ộ ườ ạ ọ Liên k t gi a ng d ng và file d li uế ữ ứ ụ ữ ệ M t tr ng đ i h c thông th ng c n ghi chép nhi u lo i d li u v ch ng trìnhộ ườ ạ ọ ườ ầ ề ạ ữ ệ ề ươ h c, sinh viên, h c kỳ, gi ng viên… khi b t đ u 1 khóa h c m i. Khi l p th i khóaọ ọ ả ắ ầ ọ ớ ậ ờ bi u, tr ng c n d li u t file d li u khóa h c và file d li u sinh viên. D li uể ườ ầ ữ ệ ừ ữ ệ ọ ữ ệ ữ ệ trong file d li u sinh viên đ c phân chia theo mã khóa h c c a t ng sinh viên.ữ ệ ượ ọ ủ ừ Khi l p danh sách sinh viên trúng tuy n, d li u trong file d li u sinh viên đ cậ ể ữ ệ ữ ệ ượ s p x p theo ngày dăng ký nh p h c. Vì th , m c dù cùng 1 file d li u đ c dùngắ ế ậ ọ ế ặ ữ ệ ượ cho các tác v khác nhau, nó c n đ c sao thành nhi u b n và l u t i nhi u n iụ ầ ượ ề ả ư ạ ề ơ thích h p cho t ng tác v .ợ ừ ụ Th i khóa bi uờ ể File d li u khóa h cữ ệ ọ File d li u sinh viênữ ệ Sinh viên trúng tuy nể File d li u sinh viênữ ệ Th i gian bi u gi ng viênờ ể ả File d li u khóa h cữ ệ ọ File d li u gi ng ữ ệ ả viên K ho ch h c kỳế ạ ọ File d li u khóa h cữ ệ ọ File k ho ch h c kỳế ạ ọ 17 Ph ng th c truy n th ng trong vi c x lý d li u có nh ng nh c đi m sau:ươ ứ ề ố ệ ử ữ ệ ữ ượ ể  D li u sao chép nhi u l n: file d li u khóa h c ch a nh ng thông tin vữ ệ ề ầ ữ ệ ọ ứ ữ ề nhi u khóa h c khác nhau. Thông tin bao g m mã môn h c, tên môn h c,ề ọ ồ ọ ọ đ c thù môn h c, etc. các thông tin này đ c s d ng đ l p th i gian bi uặ ọ ượ ử ụ ể ậ ờ ể cho gi ng viên và l p k ho ch cho kỳ h c. nói cách khác, cùng 1 d li uả ậ ế ạ ọ ữ ệ đ c d d ng v i nhi u m c dích khác nhau. Thay vì l u tr thông tin trongượ ử ụ ớ ề ụ ư ữ 1 file, nhi u file đ c dùng cho nh ng ng d ng khác nhau. Đi u này đ cề ượ ữ ứ ụ ề ượ xem nh d th a d li uư ư ừ ữ ệ  D li u không nh t quán: Cùng 1 d li u l u tr nhi u n i khác nhau d nữ ệ ấ ữ ệ ư ữ ở ề ơ ẫ đ n s thi u nh t quán. Ví d , danh sách sinh viên trúng tuy n thêm vào 10ế ự ế ấ ụ ể sinh viên. D li u v nh ng sinh viên m i này c n đ c c p nh t trong cữ ệ ề ữ ớ ầ ượ ậ ậ ả file d li u dùng cho vi c l p th i khóa bi u. N u s thay đ i này khôngữ ệ ệ ậ ờ ể ế ự ổ đ c c p nh t t t c các b n sao c a file, các b n sao s không nh tượ ậ ậ ở ấ ả ả ủ ả ẽ ấ quán. L i ích c a ph ng th c s d ng CSDLợ ủ ươ ứ ử ụ Ph ng th c s d ng CSDLươ ứ ử ụ Th i khóa bi uờ ể Sinh viên trúng tuy nể Th i gian bi u gi ng ờ ể ả viên K ho ch h c kỳế ạ ọ File d li u khóa h cữ ệ ọ File d li u sinh viênữ ệ File d li u gi ng ữ ệ ả viên File k ho ch h c kỳế ạ ọ 18 u đi m ch y u c a ph ng th c s d ng CSDL trong x lý d li u đ c là hƯ ể ủ ế ủ ươ ứ ử ụ ử ữ ệ ượ ệ qu n tr CSDL có ch đ ki m soát t p trung đ i v i d li u.ả ị ế ộ ể ậ ố ớ ữ ệ D i đây là m t s l i ích c a vi c s d ng CSDL:ướ ộ ố ợ ủ ệ ử ụ  Gi m s r m rà: s d ng c s d li u, các d li u không nh t thi t ph iả ự ườ ử ụ ơ ở ữ ệ ữ ệ ấ ế ả l u tr m t cách đ c l p cho t ng ng d ng.ư ữ ộ ộ ậ ừ ứ ụ  Tránh tình tr ng thi u nh t quán: gi m đ c s ch ng chéo trong l u trạ ế ấ ả ượ ự ồ ư ữ d li u đ ng th i giúp tránh đ c tình tr ng thi u nh t quán.ữ ệ ồ ờ ượ ạ ế ấ  D li u đ c chia s : nhi u tác v hi n th i có th cùng s d ng m t dữ ệ ượ ẻ ề ụ ệ ờ ể ử ụ ộ ữ li u, ho c tác v m i có th đ c th c hi n s d ng chính d li u đó.ệ ặ ụ ớ ể ượ ự ệ ử ụ ữ ệ  Các quy ph m đ c tuân th ch t ch : v i vi c qu n lý d li u m t cáchạ ượ ủ ặ ẽ ớ ệ ả ữ ệ ộ t p trung, qu n tr viên đ m b o tính chu n m c c a d ng th c d li u khiậ ả ị ả ả ẩ ự ủ ạ ứ ữ ệ l u tr và x lý, đ c bi t là trong trao đ i và d ch chuy n d li u gi a haiư ữ ử ặ ệ ổ ị ể ữ ệ ữ h th ng máy tính.ệ ố  Tăng tính b o m t: ch nh ng ng i s d ng h p pháp đ c phép truy c pả ậ ỉ ữ ườ ử ụ ợ ượ ậ vào CSDL. Qu n tr viên có th ki m tra đ an toàn đ i v i t ng công vi cả ị ể ể ộ ố ớ ừ ệ th c hi n trên d li u. Ví d , m t cá nhân có th truy c p vào m t fileự ệ ữ ệ ụ ộ ể ậ ộ nh ng không có quy n xóa ho c thay đ i file đó.ư ề ặ ổ  Đ m b o tính toàn v n: s thi u nh t quán trong vi c nh p d li u th ngả ả ẹ ự ế ấ ệ ậ ữ ệ ườ làm nh h ng đ n tính toàn v n d li u. Ngay c khi d li u không quáả ưở ế ẹ ữ ệ ả ữ ệ r m rà, CSDL v n có kh năng không nh t quán. Ví d , 1 sinh viên đăngườ ẫ ả ấ ụ ký 10 môn h c, trong khi s l ng môn h c t i đa đ c phép ch n là 7 môn.ọ ố ượ ọ ố ượ ọ Tr ng h p khác, sinh viên đăng ký môn h c không trong ch ng trình c aườ ợ ọ ươ ủ kỳ. Chúng ta có th tránh đ c các tình tr ng trên khi s d ng h qu n trể ượ ạ ử ụ ệ ả ị CSDL. H qu n tr CSDL s ti n hành ki m tra tính toàn v n ngay khi cácệ ả ị ẽ ế ể ẹ thao tác c p nh t đ c ti n hành.ậ ậ ượ ế 19 C u trúc c a H th ng Qu n lý C s d li uấ ủ ệ ố ả ơ ở ữ ệ C u trúc c a h qu n tr CSDL có th chia thành 3 m c:ấ ủ ệ ả ị ể ứ  M c khung nhìnứ  M c khái ni mứ ệ  M c v t lýứ ậ M c khung nhìn 1ứ M c khung nhìn 2ứ M c khung nhìn 3ứ M c khái ni mứ ệ M c v t lýứ ậ Ba m c đ c a h qu n tr CSDLứ ộ ủ ệ ả ị _________________________________________________________________ M c khung nhìnứ Đây là m c đ cao nh t, g n nh t đ i v i ng i s d ng, còn đ c g i là ứ ộ ấ ầ ấ ố ớ ườ ử ụ ượ ọ user view. User view khác v i cách l u tr d li u thông th ng trong CSDL. Nh ng gìớ ư ữ ữ ệ ườ ữ hi n th t i đây ch là m t ph n c a CSDL th c t . B i vì m i cá nhân không sể ị ạ ỉ ộ ầ ủ ự ế ở ỗ ử d ng h t toàn b CSDL, ch có nh ng ph n c n thi t cho ng i s d ng đ cụ ế ộ ỉ ữ ầ ầ ế ườ ử ụ ượ hi n th . Ví d , ng i s d ng và l p trình viên s d ng nh ng hi n th bên ngoàiể ị ụ ườ ử ụ ậ ử ụ ữ ể ị khác nhau. Ví d , m t gi ng viên mu n hi n th d li u d i d ng t p h p danh sách sinhụ ộ ả ố ể ị ữ ệ ướ ạ ậ ợ viên và môn h c c a tr ng. Ng i qu n lý hi n th d li u d i d ng t p h pọ ủ ườ ườ ả ể ị ữ ệ ướ ạ ậ ợ các tài li u, giáo trình c a tr ng. M i ng i ch c n ph n d li u liên quan đ nệ ủ ườ ỗ ườ ỉ ầ ầ ữ ệ ế tác v c a mình. Nh ng ph n d li u này đ c xem là hi n th cho ng i s d ngụ ủ ữ ầ ữ ệ ượ ể ị ườ ử ụ (user view), hay hi n th bên ngoài.ể ị 20 M i ng i s d ng dùng m t lo i ngôn ng đ ti n hành thao tác trên CSDL. L pỗ ườ ử ụ ộ ạ ữ ể ế ậ trình viên s d ng c ngôn ng th h th ba, nh COBOL hay C, ho c ngôn ngử ụ ả ữ ế ệ ứ ư ặ ữ th h th t thi t k cho h qu n tr CSDL nh Visual FoxPro hay MS Access.ế ệ ứ ư ế ế ệ ả ị ư Ng i s d ng dùng ngôn ng truy v n đ truy c p cào d li u trong CSDL.ườ ử ụ ữ ấ ể ậ ữ ệ Ngôn ng truy v n là ngôn ng k t h p b i ba lo i ngôn ng th c p:ữ ấ ữ ế ợ ở ạ ữ ứ ấ  Ngôn ng đ nh nghĩa d li u (DDL)ữ ị ữ ệ  Ngôn ng thao tác d li u (DML)ữ ữ ệ  Ngôn ng đi u khi n d li u (DCL)ữ ề ể ữ ệ Ngôn ng đ nh nghĩa d li u đ nh hình và khai báo đ i t ng trong CSDL, ngônữ ị ữ ệ ị ố ượ ng thao tác d li u th c hi n thao tác cho các đ i t ng này. Ngôn ng đi uữ ữ ệ ự ệ ố ượ ữ ề khi n d li u đi u khi n s truy c p c a ng i dùng đ i v i đ i t ng trongể ữ ệ ề ể ự ậ ủ ườ ố ớ ố ượ CSDL. ____________________________________________________________________ M c đ nh nghĩaứ ị Đây là n c n m gi a m c v t lý và m c khung nhìn c a h qu n tr CSDL. ứ ằ ữ ứ ậ ứ ủ ệ ả ị M cứ đ nh nghĩaị trên t ng th đ c coi nh toàn b CSDL, đ c s d ng b i qu n trổ ể ượ ư ộ ượ ử ụ ở ả ị viên. Trong m c khái ni m, d li u đ c hi n th không b gi i h n b i ngôn ngứ ệ ữ ệ ượ ể ị ị ớ ạ ở ữ l p trình nh m c khung nhìn.ậ ư ở ứ Chú ý: m c đ nh nghĩa mô t d li u l u tr trong CSDL và m i quan h c aứ ị ả ữ ệ ư ữ ố ệ ủ chúng v i các d li u khác. ớ ữ ệ ___________________________________________________________________ M c v t lýứ ậ D li u trong m c này gi i quy t v n đ v i l u tr v t lý và là m c th p nh tữ ệ ứ ả ế ấ ề ớ ư ữ ậ ứ ấ ấ c a c u trúc. M c v t lý mô t k t qu v t lý c a nh ng b n l u tr .ủ ấ ứ ậ ả ế ả ậ ủ ữ ả ư ữ D i đây là ví d minh h a cho ba m c:ướ ụ ọ ứ 21 Ánh xạ Ánh x đo m c đ t ng thích gi a các m c. có 2 m c ánh x theo c u trúc này.ạ ứ ọ ươ ữ ứ ứ ạ ấ Th nh t là ánh x gi a m c khung nhìn và m c khía ni m. Th hai là ánh x gi aứ ấ ạ ữ ứ ư ệ ứ ạ ữ m c khái ni m và m c v t lý. Ánh x m c khung nhìn-m c khái ni m đo s t ngứ ệ ứ ậ ạ ứ ứ ệ ự ươ thích gi a hi n th khái ni m và hi n th bên ngoài. Nó c th hóa cách ng i dùngữ ể ị ệ ể ị ụ ể ườ hi n th d li u khái ni m. Ánh x m c khái ni m-m c v t lý đo s t ng thíchể ị ữ ệ ệ ạ ứ ệ ứ ậ ự ươ gi a hi n th khái ni m và hi n th bên trong. Nó giúp làm rõ cách th c l u tr dữ ể ị ệ ể ị ứ ư ữ ữ li u khái ni m.ệ ệ B c đ u tiên trong vi c thi t k 1 CSDL là khái quát m c đ nh nghĩa. M c đ nhướ ầ ệ ế ế ứ ị ứ ị nghĩa sau đó đ c ánh x v i m c khung nhìn, c v hi n th m c khung nhìn l nượ ạ ớ ứ ả ề ể ị ứ ẫ đi u ki n c a nó. Ti p theo, ánh x m c khái ni m-m c v t lý đ c ti n hành.ề ệ ủ ế ạ ứ ệ ứ ậ ượ ế Cách l u tr d li u ph thu c vào m c khái ni m. C u trúc ba m c c a h qu nư ữ ữ ệ ụ ộ ứ ệ ấ ứ ủ ệ ả tr CSDL góp ph n t o nên s đ c l p c a d li u.ị ầ ạ ự ộ ậ ủ ữ ệ 22 Các c u ki n c a h qu n tr CSDLấ ệ ủ ệ ả ị M t h qu n tr CSDL g m có nhi u module v i các ch c năng khác nhau trongộ ệ ả ị ồ ề ớ ứ toàn b h th ng. Các c u ki n ch c năng c a h qu n tr CSDL là:ộ ệ ố ấ ệ ứ ủ ệ ả ị  Qu n tr CSDLả ị  Qu n lý t p tinả ệ  Qu n lý đĩaả ổ Qu n tr CSDLả ị B ph n Qu n tr CSDL là m t c u ki n ph n m m c a H qu n tr CSDL. Ph nộ ậ ả ị ộ ấ ệ ầ ề ủ ệ ả ị ầ m m có ch c năng chuy n đ i truy v n c a ng i s d ng thành các l nh thíchề ứ ể ổ ấ ủ ườ ử ụ ệ h p, góp ph n duy trì tính nh t quán và toàn v n c a CSDL và tăng c ng b o m tợ ầ ấ ẹ ủ ườ ả ậ d li u. Nó cũng đ ng b nh ng thao tác c a nhi u ng i s d ng cùng lúc. Ngoàiữ ệ ồ ộ ữ ủ ề ườ ử ụ ra, ph n m m còn có kh năng ti n hành phòng b và khôi ph c các thao tác. ầ ề ả ế ị ụ Qu n lý t p tinả ệ B ph n Qu n lý t p tin x lý t t c các yêu c u đ i v i d li u. Nó tìm ki mộ ậ ả ệ ử ấ ả ầ ố ớ ữ ệ ế nh ng vùng ch a b n ghi đ c yêu c u. nh ng vùng này sau đó đ c yêu c u tữ ứ ả ượ ầ ữ ượ ầ ừ các t b ph n qu n lý đĩa. B ph n qu n lý t p tin ch n l a b n ghi t vùngừ ộ ậ ả ổ ộ ậ ả ệ ọ ự ả ừ tìm đ c và chuy n qua b ph n qu n lý CSDL. B ph n qu n lý t p tin đ ngượ ể ộ ậ ả ộ ậ ả ệ ồ th i qu n lý dung l ng và c u trúc b nh .ờ ả ượ ấ ộ ớ Qu n lý đĩaả ổ B ph n qu n lý đĩa đi u khi n d li u đ u vào và đ u ra v t lý. Nó t ng tácộ ậ ả ổ ề ể ữ ệ ầ ầ ậ ươ v i b ph n qu n lý t p tin đ đ c và ghi trên các thi t b l u tr khi nh n đ cớ ộ ậ ả ệ ể ọ ế ị ư ữ ậ ượ yêu c u t b ph n qu n lý t p tin. Các hi n th đ c x lý nh d li u ch a xầ ừ ộ ậ ả ệ ể ị ượ ử ư ữ ệ ư ử lý. Các thao tác th c hi n b i b ph n qu n lý đĩa là:ự ệ ở ộ ậ ả ổ  Truy h i các kh i d li uồ ố ữ ệ  Thay th các kh i d li uế ố ữ ệ  G b các kh i d li uỡ ỏ ố ữ ệ 23 Quy ho ch và thi t k CSDLạ ế ế Đ đ m b o chuy n giao hi u qu t l u tr d li u đ n l sang l u tr t p trungể ả ả ể ệ ả ừ ư ữ ữ ệ ơ ẻ ư ữ ậ s d ng H qu n tr CSDL, chúng ta c n có quy ho ch CSDL. Quy ho ch CSDL làử ụ ệ ả ị ầ ạ ạ quá trình chi n l c đ đáp ng nhu c u thông tin cho giai đo n nh t đ nh trongế ượ ể ứ ầ ạ ấ ị t ng lai. Đây là ho t đ ng đ u tiên trong m i d án v n hành, góp ph n r t l nươ ạ ộ ầ ọ ự ậ ầ ấ ớ trong vi c thi t k và th c thi CSDL.ệ ế ế ự Nhu c u quy ho ch CSDLầ ạ Vi c quy ho ch CSDL xu t phát t nhu c u thông tin c a t ch c. Quy ho chệ ạ ấ ừ ầ ủ ổ ứ ạ CSDL đ nh rõ lo i CSDL t ch c c n dùng và s n có, cũng nh tìm ki m thông tinị ạ ổ ứ ầ ẵ ư ế hi n có, theo dõi thông tin và tìm hi u nhu c u t ng lai. Thêm vào đó, quy ho chệ ể ầ ươ ạ CSDL còn giúp ng i s d ng hi u rõ v s chuy n giao thông tin trong t ch c.ườ ử ụ ể ề ự ể ổ ứ L i ích c a quy ho ch SCDL:ợ ủ ạ  Đ nh hình nh ng hi u bi t v qu n lý tài nguyên thông tin.ị ữ ể ế ề ả  Xác đ nh yêu c u c a ngu n thông tin, đ m b o tính kh d ng c a tàiị ầ ủ ồ ả ả ả ụ ủ nguyên.  S d ng hi u qu tài nguyên, bao g m s ph i h p ch t ch gi a các bử ụ ệ ả ồ ự ố ợ ặ ẽ ữ ộ ph n trong t ch c.ậ ổ ứ  C th hóa k ho ch hành đ ng đ đ t đ c m c tiêu đ ra.ụ ể ế ạ ộ ể ạ ượ ụ ề  Phát tri n CSDL phù h p v i yêu c u c a t ch c.ể ợ ớ ầ ủ ổ ứ Chu trình phát tri n CSDLể Chúng ta c n theo sát 1 chu trình khi thi t k và th c thi CSDL cho t ch c. Chuầ ế ế ự ổ ứ trình này đ c g i là chu trình phát tri n CSDL (DDLC). DDLC g m có các giaiượ ọ ể ồ đo n:ạ  Quy ho ch s bạ ơ ộ  Kh o sát tính kh thiả ả  Xác đ nh yêu c uị ầ  Thi t k khái ni mế ế ệ  Cài đ tặ  Đánh giá và b o trì CSDLả 24 Quy ho ch s bạ ơ ộ Đây là b c đ u tiên đ i v i m i d án phát tri n CSDL. T i đây, t ch c c n tìmướ ầ ố ớ ọ ự ể ạ ổ ứ ầ câu tr l i cho các câu h i sau:ả ờ ỏ  Bao nhiêu trình ng d ng đ c s d ng?ứ ụ ượ ử ụ  Các trình ng d ng có nh ng ch c năng gì?ứ ụ ữ ứ  Các file đ c k t h p v i các trình ng d ng nh th nào?ượ ế ợ ớ ứ ụ ư ế  File và ng d ng m i nào đ c t o ra?ứ ụ ớ ượ ạ Nh ng thông tin thu đ c sau đó đ c s d ng đ xác đ nh m i quan h gi a cácữ ượ ượ ử ụ ể ị ố ệ ữ ng d ng và công năng c a các ng d ng đó. Thong tin trên giúp tìm ra yêu c uứ ụ ủ ứ ụ ầ t ng lai c a h th ng và ki m tra ngu n l i tài chính mà h CSDL mang l i.ươ ủ ệ ố ể ồ ợ ệ ạ Kh o sát tính kh thiả ả G m có kh o sát tính th c thi c a d án v công ngh , v n hành và kinh t c aồ ả ự ủ ự ề ệ ậ ế ủ CSDL. Kh o sáy tính kh thi đòi h i m t báo cáo d a trên l i gi i dáp cho các câuả ả ỏ ộ ự ờ ả h i sau:ỏ  Tính kh thi v công ngh : t ch c có đ kh năng công ngh đ phát tri nả ề ệ ổ ứ ủ ả ệ ể ể CSDL hay không?  Tính kh thi cho v n hành: t ch c có đ ngu n nhân l c, ngân sách, chuyênả ậ ổ ứ ủ ồ ự gia trong ngành đ th c thi CSDL.ể ự  Tính kh thi v kinh t : Xem xét l i ích t o ra là gì, có th tính toán đ cả ề ế ợ ạ ể ượ l i nhu n và chi phí hay không?ợ ậ 25 T ch c t p trung vào t ng giai đo n riêng nh sau:ổ ứ ậ ừ ạ ư  Kh o sát tính th c thi v công ngh : ki m tra nh ng ph n c ng và ph nả ự ề ệ ể ữ ầ ứ ầ m m c n thi t s n có đ dáp ng nhu c u thông tin, bao g m ki m tra tàiề ầ ế ẵ ể ứ ầ ồ ể nguyên và h th ng máy tính có đ hay c n nh p thêm. Thêm vào đó, c nệ ố ủ ầ ậ ầ xem xét v nh ng k năng c n dào t o.ề ữ ỹ ầ ạ  Kh o sát v n hành: ki m tra nh ng k năng và ngu n nhân l c c n thi t đả ậ ể ữ ỹ ồ ự ầ ế ể th c thi h CSDLự ệ  Kh o sát tính th c thi kinh t : kh o sát v chi phí – l i nhu n t h CSDLả ự ế ả ề ợ ậ ừ ệ đ su t. V n đ đ c gi i quy t b i các câu h i sau:ề ấ ấ ề ượ ả ế ở ỏ • L i nhu n s có đ c sau bao lâu?ợ ậ ẽ ượ • Các ban các nhau có th s d ng cùng 1 d li u m t cách d dàngể ử ụ ữ ệ ộ ễ hay không? • H CSDL đ c ng d ng nh th nào?ệ ượ ứ ụ ư ế • L i ích c a các ng d ng này trong th c t là gì?ợ ủ ứ ụ ự ế • Chi n l c c a các công ty c nh tranh là gì?ế ượ ủ ạ • H CSDL đóng vai trò th nào trong k ho ch phát tri n c a côngệ ế ế ạ ể ủ ty? Chi phí cho các ph n m m, ph n c ng và nh ng l p trình liên quan đ n phát tri nầ ề ầ ứ ữ ậ ế ể h CSDL c n đ c xác đ nh. Thêm vào đó, c n tính toán các phí t n ng m tệ ầ ượ ị ầ ổ ầ ừ nh ng thay đ i b t ng . Ví d , các ph n m m c n đ c nâng c p đ có th ti pữ ổ ấ ờ ụ ầ ề ầ ượ ấ ể ể ế t c công vi c.ụ ệ Xác đ nh yêu c uị ầ Trong b c này, c n xác đ nh nh ng v n đ sau:ướ ầ ị ữ ấ ề  Lĩnh v c ng d ng c a h CSDLự ứ ụ ủ ệ  Nh ng yêu c u thông tin v vùng ch c năng và vùng qu n lýữ ầ ề ứ ả  Nh ng yêu c u v ph n c ng và ph n m mữ ầ ề ầ ứ ầ ề Chúng ta có th tìm th y nh ng yêu c u thông tin b ng cách s d ng phi u đi uể ấ ữ ầ ằ ử ụ ế ề tra, ph ng v n v i nhân viên, các báo cáo và bi u m u. Chúng ta c n m r ng cácỏ ấ ớ ể ẫ ầ ở ộ mô hình thông tin t ng quát, t o trong quá trình quy ho ch CSDL đ xây d ng môổ ạ ạ ể ự hình cho t ng vùng ch c năng. Các mô hình này s làm n n t ng cho vi c thi t kừ ứ ẽ ề ả ệ ế ế chi ti t h CSDL.ế ệ Nh ng nhi m v c a xác đ nh yêu c u:ữ ệ ụ ủ ị ầ  Phân tích yêu c u thông tin đ xác đ nh lĩnh v c ng d ng c a h CSDL.ầ ể ị ự ứ ụ ủ ệ Chúng ta ph i xác đ nh t o CSDL t p trung hay phân tán. Vi t 1 b n t ngả ị ạ ậ ế ả ườ trình ng n g n v lĩnh v c ng d ng c a h th ng.ắ ọ ề ự ứ ụ ủ ệ ố  Th o văn b n v yêu c u đ i v i ng i s d ng m c v n hành và qu nả ả ề ầ ố ớ ườ ử ụ ở ứ ậ ả lý. Các t li u nên bao g m mô hình thông tin t ng quát cho m i vùng ch cư ệ ồ ổ ỗ ứ năng và ch rõ các ch ng trình c n thi t đ đáp ng các yêu c u. Các tỉ ươ ầ ế ể ứ ầ ư 26 li u cũng có th kèm theo các tài li u t các bi u m u, báo cáo, đi u tra…ệ ể ệ ừ ể ẫ ề th ng kê t ng i s d ng.ố ừ ườ ử ụ 27  Thi t l p các yêu c u v ph n c ng, ph n m m kèm theo h tr cho sế ậ ầ ề ầ ứ ầ ề ỗ ợ ự ho t đ ng. Chúng ta c n có thông tin v các v n đ sau:ạ ộ ầ ề ấ ề • S l ng truy c p vào h th ngố ượ ậ ệ ố • S l ng mua h th ng th ng kê hàng ngàyố ượ ệ ố ố • S l ng đ t muaố ượ ặ Các thông tin này góp ph n xác đ nh H qu n tr CSDL c n dùng. Đ ng th i, chúngầ ị ệ ả ị ầ ồ ờ xác đ nh yêu c u v dung l ng đĩa và h tr in n. Chúng ta có th kèm theoị ầ ề ượ ổ ỗ ợ ấ ể thông tin nh ng báo cáo t ng trình bao g m các bi u đ v c u hình ph n c ng,ữ ườ ồ ể ồ ề ấ ầ ứ ph n m m.ầ ề  Th o m t k ho ch cho t ng b c phát tri n c a 1 h CSDL. Đ ng th i,ả ộ ế ạ ừ ướ ể ủ ệ ồ ờ nh n bi t các ng d ng ban đ u. các ng d ng này c n ph i nh và khôngậ ế ứ ụ ầ ứ ụ ầ ả ỏ quá quan tr ng đ tránh b nh h ng t s th c thi CSDL.ọ ể ị ả ưở ừ ự ự Thi t k khái ni mế ế ệ T i đây, chúng ta có th t o s đ khái ni m c a h CSDL. S đ khái ni m g mạ ể ạ ơ ồ ệ ủ ệ ơ ồ ệ ồ các b ph n c a d li u, m i quan h và h n ch c a chúng. S đ c n th t cộ ậ ủ ữ ệ ố ệ ạ ế ủ ơ ồ ầ ậ ụ th đ có th đ a vào th c t .ể ể ể ư ự ế Đ u tiên, t o mô hình chi ti t c a khung nhìn trong t ng vùng ch c năng. Ti pầ ạ ế ủ ừ ứ ế theo, k t h p các mô hình l i v i nhau thành m t mô hình d li u khái ni m chiế ợ ạ ớ ộ ữ ệ ệ ti t. mô hình t o ra s đ m c CSDL khái ni m. Chúng ta s đ c p đ n mô hìnhế ạ ơ ồ ứ ệ ẽ ề ậ ế d li u khái ni m trong các bài h c sau.ữ ệ ệ ọ Th c thiự T i đây, chúng ta c n có H qu n tr CSDL. Mô hình khái ni m chi ti t đ cạ ầ ệ ả ị ệ ế ượ chuy n thành mô hình th c thi c a H qu n tr CSDL. Ti p theo, chúng ta l p tể ự ủ ệ ả ị ế ậ ừ đi n d li u, đ a CSDL vào s d ng, phát tri n các trình ng d ng, vi t h ngể ữ ệ ư ử ụ ể ứ ụ ế ướ d n cho ng i s d ng. T đi n d li u là b l u tr trung tâm c a các đ nh nghĩaẫ ườ ử ụ ừ ể ữ ệ ộ ư ữ ủ ị c u trúc d li u trong h CSDL. Nó g m các thông tin v nguyên t c b o m t,ấ ữ ệ ẹ ồ ề ắ ả ậ quy n truy c p và các ki m soát liên quan. T đi n d li u đ ng th i đ c dùngề ậ ể ừ ể ữ ệ ồ ờ ượ đ duy trì chu n d li u, gi i quy t các v n đ x y ra khi chia s d li u cho cácể ả ữ ệ ả ế ấ ề ả ẻ ữ ệ ng d ng. Vì v y, t đi n d li u có vai trò nh trung tâm đi u khi n c a hứ ụ ậ ừ ể ữ ệ ư ề ể ủ ệ CSDL. Nh v y, xây d ng t đi n CSDL là b c quan tr ng c a vi c th c thi.ư ậ ự ừ ể ướ ọ ủ ệ ự 28 Đánh giá và b o trì CSDLả Đây là b c đánh giá ch t l ng c a CSDL đã đ a vào s d ng. chúng ta có thướ ấ ượ ủ ư ử ụ ể ph ng v n ng i s d ng v nh ng đi m ch a đ t yêu c u. Sau đó th c hi nỏ ấ ườ ử ụ ề ữ ể ư ạ ầ ự ệ nh ng thay đ i c n thi t.ư ổ ầ ế B o trì h th ng là s c i ti n, thêm vào các ch ng trình và b ph n d li u m i.ả ệ ố ự ả ế ươ ộ ậ ữ ệ ớ nh ng thay th này k t h p v i s thay đ i trong nhu c u th ng m i.ữ ế ế ợ ớ ự ổ ầ ươ ạ H u qu c a vi c quy ho ch và thi t k CSDL s sàiậ ả ủ ệ ạ ế ế ơ N u chúng ta không b nhi u công s c cho thi t k và quy ho ch CSDL, h CSDLế ỏ ề ứ ế ế ạ ệ ch c ch n s th t b i. Nguyên nhân ch y u là:ắ ắ ẽ ấ ạ ủ ế  Đ i t ng s d ng chính b lo i ra kh i quy trình quy ho ch và thi t kố ượ ử ụ ị ạ ỏ ạ ế ế  T p h p quá nhi u hay quá ít thông tinậ ợ ề  CSDL không d dàng ch nh s a theo nhu c u th ng m iễ ỉ ử ầ ươ ạ  Kho ng cách th i gian gi a vi c mua h CSDL và đ a vào s d ng quá ít.ả ờ ữ ệ ệ ư ử ụ  H CSDL không đ c ki m tra tr c khi đ a d li u vào CSDLệ ượ ể ướ ư ữ ệ  H ng h n h n ch ho c không có h ng d n cho ng i s d ngướ ẫ ạ ế ặ ướ ẫ ườ ử ụ  Quá trình quy ho ch b gián đo n khi có s thay đ i v nhân sạ ị ạ ự ổ ề ự  Thi u xác nh n khi phân b tài nguyên (th i gian và ti n b c) cho d ánế ậ ổ ờ ề ạ ự phát tri n CSDL.ể 29 Tóm t t bài h cắ ọ Qua bài h c này, h c viên đã h c:ọ ọ ọ  M t H qu n tr CSDL là m t t p h p các d li u liên k t và các ch ngộ ệ ả ị ộ ậ ợ ữ ệ ế ươ trình khai thác d li u đó.ữ ệ  M c đích chính c a H qu n tr CSDL là:ụ ủ ệ ả ị • T o môi tr ng thu n ti n và hi u qu đ l u tr và truy h i dạ ườ ậ ệ ệ ả ể ư ữ ồ ữ li u t CSDLệ ừ • Qu n lý các thông tin v ng i s d ng H qu n tr CSDL và nh ngả ề ườ ử ụ ệ ả ị ữ tác v h có th làm đ i v i d li uụ ọ ể ố ớ ữ ệ  D li u trong CSDL có th k t h p và chia sữ ệ ể ế ợ ẻ  Ng i s d ng H qu n tr CSDL có th phân thành l p trình viên ngườ ử ụ ệ ả ị ể ậ ứ d ng, ng i s d ng tr c ti p và qu n tr viên (DBA).ụ ườ ử ụ ự ế ả ị  H qu n tr CSDL có nh ng u đi m sau:ệ ả ị ữ ư ể • Gi m b t s r m ràả ớ ự ườ • Nh t quánấ • D li u đ c chia sữ ệ ượ ẻ • Duy trì chu n m cẩ ự • Th t ch t b o m tắ ặ ả ậ • Toàn v nẹ  C u trúc CSDL bao g m m c khung nhìn, m c khái ni m và m c v t lý.ấ ồ ứ ứ ệ ứ ậ  Các c u ki n ch c năng c a H qu n tr CSDL:ấ ệ ứ ủ ệ ả ị • Qu n tr CSDLả ị • Qu n lý fileả • Qu n lý đĩaả ổ  Quy ho ch CSDL là quy trình chi n l c trong vi c tìm hi u nhu c u thôngạ ế ượ ệ ể ầ tin cho t ch c trong kho ng th i gian nh t đ nh trong t ng lai, góp ph nổ ứ ả ờ ấ ị ươ ầ trong thi t k và th c thi CSDL.ế ế ự  Quy trình phát tri n CSDL (DDLC) g m 6 giai đo n:ể ồ ạ • Quy ho ch s bạ ơ ộ • Kh o sát tính kh thiả ả • Xác đ nh yêu c uị ầ • Thi t k khái ni mế ế ệ • Th c thiự • Đánh giá và b o trì CSDLả  N u chúng ta không b nhi u công s c cho vi c quy ho ch và thi t kế ỏ ề ứ ệ ạ ế ế CSDL, CSDL s th t b i.ẽ ấ ạ 30 Bài 1B Mô hình d li uữ ệ M c tiêu bài h cụ ọ Trong bài này, h c viên s tìm hi u:ọ ẽ ể  Mô t các lo i mô hình d li uả ạ ữ ệ  T o mô hình th c th - liên hạ ự ể ệ  Li t kê các m i liên h gi a các th c thệ ố ệ ữ ự ể  Đ nh nghĩa H qu n tr CSDL quan hị ệ ả ị ệ  Mô t h đi u hành ho t đ ng trên các quan hả ệ ề ạ ộ ệ 31 Mô hình d li uữ ệ Mô hình d li u là s mô t c a 1 t ch c d li u trong CSDL. Cùng v i d li u,ữ ệ ự ả ủ ổ ứ ữ ệ ớ ữ ệ mô hình d li u còn mô t m i quan h gi a d li u và các h n ch xác đ nh trênữ ệ ả ố ệ ữ ữ ệ ạ ế ị d li u. Mô hình d li u d c chia thành 2 nhóm:ữ ệ ữ ệ ượ  Mô hình logic d a trên đ i t ng: chú tr ng vào mô t d li u, quan h g aự ố ượ ọ ả ữ ệ ệ ữ các d li u và các h n ch .ữ ệ ạ ế  Mô hình logic d a trên m u tinự ẩ Mô hình logic d a trên đ i t ngự ố ượ Mô hình thông d ng nh t là mô hình th c th - quan h (mô hình E/R). đây đ cụ ấ ự ể ệ ượ coi là mô hình hi uquar nh t trong thi t k CSDL. Peter Chen gi i thi u mô hìnhệ ấ ế ế ớ ệ này vào năm 1976. T đó tr đi, r t nhi u ng i đã góp ph n làm nên giá tr c a nó.ừ ở ấ ề ườ ầ ị ủ Mô hình th c th - quan hự ể ệ Mô hình th c th - quan h d a trên nh n th c th c t g m t h p các đ i t ngự ể ệ ự ậ ứ ự ế ồ ổ ợ ố ượ hay th c th và m i quan h gi a chúng. Chen d a ra không ch mô hình E/R màự ể ố ệ ữ ư ỉ còn đ a ra k thu t v gi n đ t ng ng v i nó. Quan sát gi n đ sau:ư ỹ ậ ẽ ả ồ ươ ứ ớ ả ồ 32 Gi n đ g m nhi u b ph n mô t m i liên h gi a các b ph n đó. Nhi u bả ồ ồ ề ộ ậ ả ố ệ ữ ộ ậ ề ộ ph n c a gi n đ là các th c th : course và semester, m i quan h : taught, thànhậ ủ ả ồ ự ể ố ệ ph n: title, code, start-dt, end-dt và sem #.ầ Th c thự ể Chen đ nh nghĩa ị th c th ự ể là “m t th r t d nh n biêt”. Th c th là b t c v t,ộ ứ ấ ễ ậ ự ể ấ ứ ậ ng i, hành đ ng, v trí nào mà d li u đ c ghi l i. 1 s ví d v th c th là sinhườ ộ ị ữ ệ ượ ạ ố ụ ề ự ể viên, mon h c, đi m. Trong k thu t v gi n đ , th c th đ c đ t tên và đ tọ ể ỹ ậ ẽ ả ồ ự ể ượ ặ ặ trong m t h p ch nh t.ộ ộ ữ ậ SINH VIÊN MÔN H CỌ ĐI M SỂ Ố Th c thự ể Chún ta c n phan bi t gi a ầ ệ ữ t p th c thậ ự ể và th hi n th c thể ệ ự ể. Ki u th c th là t pể ự ể ậ h p nh ng th có d c đi m chung. Ví d , SINH VIÊN, MÔN H C và ĐI M S .ợ ữ ứ ặ ể ụ Ọ Ể Ố T p th c th th ng đ c vi t hoa. M t th hi n th c th là nh ng cá th . Ví d ,ậ ự ể ườ ượ ế ộ ể ệ ự ể ữ ể ụ Jack Ripper là m t th hi n th c th c a th c th SINH VIÊN, Tri t h c là m tộ ể ệ ự ể ủ ự ể ế ọ ộ th hi n th c th c a th c th MÔN H C, A là th hi n th c th c a th c thể ệ ự ể ủ ự ể Ọ ể ệ ự ể ủ ự ể ĐI M S .Ể Ố Có hai ki u th c th là ph thu c và đ c l p. M t th c th mà s t n t i phể ự ể ụ ộ ộ ậ ộ ự ể ự ồ ạ ụ thu c vào s t n t i c a m t th c th khác g i là ộ ự ồ ạ ủ ộ ự ể ọ th c th ph thu c. ự ể ụ ộ Ví d , t pụ ậ th c th ĐĂNG KÝ. ĐĂNG KÝ ch ra các môn h c đ c gi ng d y trong khóaự ể ỉ ọ ượ ả ạ h c. m t môn v i cũng mã s môn có th đ c d y nhi u kỳ khác nhau và cácọ ộ ớ ố ể ượ ạ ở ề tr ng khác nhau. S t n t i c a ườ ự ồ ạ ủ ĐĂNG KÝ ph thu c vào s t n t i c a th cụ ộ ự ồ ạ ủ ự th MÔN H C.ể Ọ Th c th B là th c th t n t i ph thu c vào th c th A n u:ự ể ự ể ồ ạ ụ ộ ự ể ế  M t vài th hi n c a A t n t i tr c khi B t n t iộ ể ệ ủ ồ ạ ướ ồ ạ  Khi A ng ng ho t đ ng, kéo theo B cũng ng ng ho t đ ngừ ạ ộ ừ ạ ộ Ví d , tr ng cho phép m KHÓA H C trên thi t ké CSDL trong h c ký II.ụ ườ ở Ọ ế ọ Tr ng có th m khóa h c này ch trong tr ng h p th hi n th c th “thi t kườ ể ở ọ ỉ ườ ợ ể ệ ự ể ế ế CSDL” t n t i. N u tr ng d ng th hi n th c th “thi t k CSDL” vi c m khóaồ ạ ế ườ ừ ể ệ ự ẻ ế ế ệ ở h c cũng s ng ng l i. Th c th ph thu c d c mô t b i m t h p ch nh t 2ọ ẽ ư ạ ự ể ụ ộ ượ ả ở ộ ộ ữ ậ đ ng bao và 1 đ ng d n t i th c th mà nó ph thu c.ườ ườ ẫ ớ ự ể ụ ộ M t th c th đ c l p không ph thu c s t n t i c a th c th khác. Th c th phộ ự ể ộ ậ ụ ộ ự ồ ạ ủ ự ể ự ể ụ thu c g i là th c th y u, th c th đ c l p g i là th c th thông th ngộ ọ ự ể ế ự ể ộ ậ ọ ự ể ườ 33 Th c th ph thu cự ể ụ ộ Chú ý: Th c th thông th ng và nh ng th c th y u c a nó đ cự ể ườ ữ ự ể ế ủ ượ xem nh m t đ i t ng trong CSDL b i vì th c th y u ph thu cư ộ ố ượ ở ự ể ế ụ ộ vào th c th thông th ng.ự ể ườ M i quan hố ệ Chen đ nh nghĩa ị m i quan h ố ệ là “s liên k t gi a các th c th ”. Ví d , sinh viên vàự ế ữ ự ể ụ gi ng viên có m i liên k t v i nhau. M i quan h này th hi n r ng 1 gi ng viênả ố ế ớ ố ệ ể ệ ằ ả d y nhi u sinh viên và 1 sinh viên h c nhi u gi ng viên. M i quan h đây làạ ề ọ ề ả ố ệ ở GI NG D Y. Cũng nh th c th , m i quan h cũng c n đ c phân bi t gi a t pẢ Ạ ư ự ể ố ệ ầ ượ ệ ữ ậ và th hi n.ể ệ T p h p các m i quan hậ ợ ố ệ là s liên k t gi a các t p th c th . Ví d , m i liên k tự ế ữ ậ ự ể ụ ố ế gi a SINH VIÊN và GI NG VIÊN khi SINH VIÊN và GI NG VIÊN đ u là t pữ Ả Ả ề ậ th c th . ự ể Th hi n các m i quan h ể ệ ố ệ là s liên k t gi a các hiên b n th c th , víự ế ữ ả ự ể d , m i liên k t gi a sinh viên J.Reins và gi ng viên là ti n sĩ Jack.ụ ố ế ữ ả ế 34 M i quan h đ c mô t là m t hình qu trám v i tên c a t p h p m i quan h .ố ệ ượ ả ộ ả ớ ủ ậ ợ ố ệ GI NG VIÊN GI NG D Y SINH VIÊNẢ Ả Ạ Các m i quan hố ệ M t m i quan h có th liên k t th c th v i chính nó. Ví d , 1 gi ng viên có thộ ố ệ ể ế ự ể ớ ụ ả ể k t hôn v i 1 gi ng viên khác. Vì v y, m i quan h sau đây có kh năng x y ra:ế ớ ả ậ ố ệ ả ả GI NG VIÊNẢ K T HÔNẾ Liên k t 1 th c th v i chính nóế ự ể ớ Ví d khác v th c th liên k t v i chính nó là m t sinh viên thuy t trình tr c cácụ ề ự ể ế ớ ộ ế ướ sinh viên khác. SINH VIÊN CHUYÊN Đ TH O LU NỀ Ả Ậ Liên k t 1 th c th v i chính nóế ự ể ớ 35 Liên k t đa ph ng cũng có th t n t i gi a các th c th . Ví d :ế ươ ể ồ ạ ữ ự ể ụ QU N LÝẢ GI NG VIÊNẢ GI NG D Y Ả Ạ SINH VIÊN ĐÁNH GIÁ Liên k t đa ph ng v i cùng m t th c thế ươ ớ ộ ự ể Các lo i hình quan h :ạ ệ Có 3 lo i hình quan h là:ạ ệ  M t – m tộ ộ  M t – nhi uộ ề  Nhi u – nhi uề ề Đ t tr ng h p 1 tr ng đ i h c. Đ i v i m i KHOA (nh khoa KH xã h i), chặ ườ ợ ườ ạ ọ ố ớ ỗ ư ộ ỉ có 1 TR NG KHOA. Đây là ví d c a quan h m t – m t.ƯỞ ụ ủ ệ ộ ộ KHOA ĐI U HÀNH B IỀ Ở TR NG KHOAƯỞ Quan h m t – m tệ ộ ộ 36 M t SINH VIÊN có th CHUYÊN MÔN v 1 môn h c, nh ng nhi u SINH VIÊNộ ể ề ọ ư ề cũng có th đăng ký cho 1 CHUYÊN MÔN. ể Đây là ví d cho quan h nhi u – m t.ụ ệ ề ộ SINH VIÊN m ĐĂNG KÝ 1 CHUYÊN MÔN Quan h nhi u – m tệ ề ộ 1 SINH VIÊN có th đăng ký nhi u MÔN H C và nhi u SINH VIÊN có th cùngể ề Ọ ề ể đăng ký 1 MÔN H C. Đây là ví d c a quan h nhi u – nhi u.Ọ ụ ủ ệ ề ề SINH VIÊN m THAM GIA m MÔN H CỌ Quan h nhi u – nhi uệ ề ề Các lo i hình quan h gi a 2 th c th đ c bi u di n b ng l c đ E/R v iạ ệ ữ ự ể ượ ể ễ ằ ượ ồ ớ nh ng ký hi u riêng. M t th c th có th k t h p v i 1 ho c nhi u th c th khác.ữ ệ ộ ự ể ể ế ợ ớ ặ ề ự ể Các thu c tínhộ Thu c tínhộ là đ c đi m c a m t th c th . Ví d , S H S là 1 đ c đi m c aặ ể ủ ộ ự ể ụ Ố Ồ Ơ ặ ể ủ th c th SINH VIÊN. 1 th hi n thu c tính là 1 đ c đi m c th c a m t th hi nự ể ể ệ ộ ặ ể ụ ể ủ ộ ể ệ th c th . Ví d , Peter là 1 th hi n c a th c th SINH VIÊN và h s s 101 là thự ể ụ ể ệ ủ ự ể ồ ơ ố ể h n c a thu c tính S H S , đ ng th i là đ c đi m c a th hi n th c th Peter.ệ ủ ộ Ố Ồ Ơ ồ ờ ặ ể ủ ể ệ ự ể 1 ki u thu c tính là đ c đi m c a ki u th c th . Ví d , “nam gi i” là 1 th hi nể ộ ặ ể ủ ể ự ể ụ ớ ể ệ thu c tính, trong khi “gi i tính” là 1 ki u th c th . Thu c tính đ c ký hi u b ngộ ớ ể ự ể ộ ượ ệ ằ hình elip, đánh d u b ng tên đ c đi m. Các khóa d c g ch chân. 1 khóa duy xácấ ằ ặ ể ượ ạ đ nh th hi n th c th m t cách duy nh t. Trong ví d d i đây, 1 sinh viên dị ể ệ ự ể ộ ấ ụ ướ ễ phân bi t b i s h s h n b ng tên vì có nhi u sinh viên trùng tên, còn s h sệ ở ố ồ ơ ơ ằ ề ố ồ ơ thì không b trùng l p. Quan h cũng có thu c tính.ị ặ ệ ộ 37 Đ A CHỊ Ỉ TÊN SINH VIÊN S H SỐ Ồ Ơ ĐĂNG KÝ Thu c tínhộ T p th c th con và t p th c th chaậ ự ể ậ ự ể 1 t p th c th conậ ự ể là t p con c a m t th c th khác. Ví d , th c th MÔN H Cậ ủ ộ ự ẻ ụ ự ể Ọ g m 2 nhóm – nhóm môn h c theo kỳ và nhóm môn h c t ch n. Trong bi u đồ ọ ọ ự ọ ể ồ sau, MÔN H C là t p th c th cha, còn MÔN THEO KỲ và MÔN T CH N làỌ ậ ự ể Ự Ọ t p th c th con.ậ ự ể M t vài thu c tính rát ph bi n đ i v i c hai t p th c th con, ví d nh , “tên” vàộ ộ ổ ế ố ớ ả ậ ự ể ụ ư “n i dung”. MÔN T CH N có vài thu c tính nh “mã môn h c” không thu c vộ Ự Ọ ộ ư ọ ộ ề t p th c th con MÔN THEO KỲ. t p MÔN THEO KỲ có vài thu c tính nh “sậ ự ể ậ ộ ư ố th t h c kỳ” không thu c v t p MÔN T CH N.ứ ự ọ ộ ề ậ Ự Ọ 38 MÃ SỐ MÔN H CỌ N I DUNGỘ TÊN MÔN T CH NỰ Ọ MÔN THEO KỲ TH I H NỜ Ạ S TH T KỲỐ Ứ Ự T p th c th con và t p th c th chaậ ự ể ậ ự ể T p th c th con luôn luôn ph thu c vào t p th c th cha. Thu c tính c a t pậ ự ể ụ ộ ậ ự ể ộ ủ ậ th c th ch là đúng đ i v i m i t p th c th con. Đi u ng c l i là sai.ự ể ả ố ớ ọ ậ ự ể ề ượ ạ T p th c th con liên k t v i t p th c th cha trên m i quan h vô danh. T p th cậ ự ể ế ớ ậ ự ể ố ệ ậ ự th cha liên k t v i các m i quan h b ng 1 đ ng và m t thanh ngang, nh trênể ế ớ ố ệ ằ ườ ộ ư bi u đ . T p th c th cha d c mô t b i thu c tính c a t t c các t p con. T pể ồ ậ ự ể ượ ả ở ộ ủ ấ ả ậ ậ con đ c mô t b ng thu c tính c a riêng nó.ượ ả ằ ộ ủ Mô hình logic d a trên m u tinự ẩ Sau khi làm quen v i mô hình E/R, đi n hình c a mô hình logic d a trên đ i t ng,ớ ể ủ ự ố ượ chúng ta s xét ti p đ n cácmoo hình d li u khác.ẽ ế ế ữ ệ Có 3 lo i mô hình d a trên m u tin:ạ ự ẩ  Mô hình phân c pấ  Mô hình m ngạ  Mô hình quan hệ Trong mô hình phân c p, d li u đ c di n gi i theo d ng cây. D li u trongấ ữ ệ ượ ễ ả ạ ữ ệ mô hình phân c p bi u hi n b i t p h p các m u tin và các môi quan h gi aấ ể ệ ở ậ ợ ẩ ệ ữ các d li u đ c th hi n b ng các đ ng d n.ữ ệ ượ ể ệ ằ ườ ẫ 39 M t mô hình m ng t ng t v i mô hình phân c p ch d li u và quan hộ ạ ươ ự ớ ấ ở ỗ ữ ệ ệ gi a chúng d c mô t d i d ng m u tin và đ ng d n. Tuy nhiên, các m uữ ượ ả ướ ạ ẩ ườ ẫ ẩ tin trong CSDL đ c mô t b ng l c đ .ượ ả ằ ượ ồ Trong mô hình quan h , CSDL đ c xây d ng nh nh ng b n ghi có khuônệ ượ ự ư ữ ả m u c đ nh. M i lo i b n ghi có m t s thu c tính và tr ng c đ nh, th ngẫ ố ị ỗ ạ ả ộ ố ộ ườ ố ị ườ có đ dài c đ nh.ọ ố ị Trong 3 mô hình này, mô hình quan h là ph bi n nh t.ệ ổ ế ấ Mô hình quan hệ Ti n sĩ E.F. Codd b c đ u mô t mô hình quan h vào năm 1970. Mô hìnhế ướ ầ ả ẹ quan h là s n l c nh m đ n gi n hóa c u trúc CSDL. Nó bi u di n m i dệ ự ỗ ự ằ ơ ả ấ ể ễ ọ ữ li u d i d ng b ng hàng – c t đ n gi n.ệ ướ ạ ả ộ ơ ả B ng danh sách gi ng viênả ả H qu n tr CSDL quan h là H qu n tr CSDL trong đó m i d li u hi n thệ ả ị ệ ệ ả ị ọ ữ ệ ể ị cho ng i s d ng đ c s p x p ch t ch trong b ng s li u, m i thao tác dườ ử ụ ượ ắ ế ặ ẽ ả ố ệ ọ ữ li u đ u đ c th c hi n trên các b ng này.ệ ề ượ ự ệ ả C u trúc d li u quan hấ ữ ệ ệ Nguyên t c t ch c c a CSDL quan h là b ng, h th ng hàng – c t d ng chắ ổ ứ ủ ệ ả ệ ố ộ ạ ữ nh t. M i b ng trong CSDL là m t tên b ng duy nh t quy đ nh n i dung c aậ ỗ ả ộ ả ấ ị ộ ủ nó. B ng d c g i là ả ượ ọ h th cệ ứ . Hàng (b n ghi) trong b ng đ c g i là ả ả ượ ọ bộ, còn c t (tr ng) đ c g i là ộ ườ ượ ọ thu cộ tính. Các c t trong b ng ph i có tên riêng. S các b đ c g i là ộ ả ả ố ộ ượ ọ b n s ,ả ố s cácố thu c tính g i là ộ ọ b cậ c a b ng.ủ ả 40 M t d c tính quan tr ng n a c a m t quan h là các hàng không d c s p x pộ ặ ọ ữ ủ ộ ệ ượ ắ ế theo th t . M t hàng không đ c nh n bi t b ng v trí c a nó trong b ng. T tứ ự ộ ượ ậ ế ằ ị ủ ả ấ c các b ng ph i có m t vài c t ho c t h p các c t đ nh n di n riêng bi tả ả ả ộ ộ ặ ổ ợ ộ ể ậ ệ ệ m i hàng trong b ng. tái m t th i đi m nh t đ nh, không có hai hàng nào trongỗ ả ộ ờ ể ấ ị b ng ch a cùng giá tr trong 1 c t ho c t h p c t đó. C t này đ c g i là ả ứ ị ộ ặ ổ ợ ộ ộ ượ ọ khóa chính c a b ng. Ví d , trong b ng sinh viên, S H S là khóa chính c a phânủ ả ụ ả Ố Ồ Ơ ủ bi t duy nh t m i sinh viên. Trong m t b ng m i hàng khác v i t t c các hàngệ ấ ỗ ộ ả ỗ ớ ấ ả khác đ c g i là h th c nh trong toán h c.ượ ọ ệ ứ ư ọ M t ộ mi nề là m t vùng ch a đ các thu c tính l y giá tr c th . Ví d , mi nộ ứ ể ộ ấ ị ụ ể ụ ề cho thu c tính ộ MÃ S là t p h p các mã s c a nhà cung c p h p pháp.Ố ậ ợ ố ủ ấ ợ M t t p h p giá tr xu t hi n trong m t c t tái m t th i đi m nh t đ nh là m tộ ậ ợ ị ấ ệ ộ ộ ộ ờ ể ấ ị ộ t p con c a mi n đó.ậ ủ ề B ng NHÀ CUNG C Pả Ấ C u trúc d li u c a m t H Qu n tr CSDL quan hấ ữ ệ ủ ộ ệ ả ị ệ Bi u di n các thông tin khuy t thi uể ễ ế ế V n đ khuy t thi u thông tin x y ra r t ph bi n trong th c t . Ví d , 1ấ ề ế ế ả ấ ổ ế ự ế ụ ng i không bi t ngày th o lu n khi ch a đ c công b . Trong m t H Qu nườ ế ả ậ ư ượ ố ộ ệ ả tr CSDL h th c, thông tin khuy t thi u đ c bi u di n b i giá tr NULL trongị ệ ứ ế ế ượ ể ễ ở ị b ng giá tr . N u 1 hàng có giá tr NULL trong c t t c là 1 thu c tính c th c aả ị ế ị ộ ứ ộ ụ ể ủ hàng đó khuy t thi u. NULL không đ ng nghĩa v i v i tr ng ho c 0.ế ế ồ ớ ớ ố ặ 41 Bi u di n các m i quan h trong m t H Qu n tr CSDLể ễ ố ệ ộ ệ ả ị quan hệ Đi m khác nhau c b n trong mô hình quan h và các mô hình d li u đ c pể ơ ả ệ ữ ệ ề ậ tr c là các ch d n rõ ràng nh quan h cha – con trong mô hình phân c p bướ ỉ ẫ ư ệ ấ ị bác b trong mô hình quan h . Tuy nhiên, các quan h này v n t n t i trong môỏ ệ ệ ẫ ồ ạ hình quan h . M c dù v y, các m i quan h này đ c bi u di n b ng các giáệ ặ ậ ố ệ ượ ể ễ ằ tr d li u ph bi n l u tr trong hai hay nhi u b ng. M i quan h đ c bi uị ữ ệ ổ ế ư ữ ề ả ọ ệ ượ ể di n theo cách th c này.ễ ứ 1 c t trong 1 b ng v i các giá tr g n v i khóa chính trong các b ng khác đ cộ ả ớ ị ắ ớ ả ượ g i là ọ khóa phụ. 1 khóa chính và m t khóa ph t o ra m i liên k t cha – conộ ụ ạ ố ế trong các b ng ch a chúng.ả ứ Quan h cha – con trong mô hình quan hệ ệ Cũng nh t h p các c t đ c dùng nh khóa chính trong b ng, khóa ph cũngư ổ ợ ộ ượ ư ả ụ đ c coi n 1 t h p các c t. S c a c t và ki u d li u c a khóa nh t thi tượ ư ổ ợ ộ ố ủ ộ ể ữ ệ ủ ấ ế ph i gi ng nhau. 1 b ng có th ch a h n 1 khóa ph n u liên k t v i h n 1ả ố ả ể ứ ơ ụ ế ế ớ ơ b ng.ả B ng GI NG VIÊNả Ả 42 B ng PH I H Pả Ố Ợ Quan h cha – con trong mô hình quan hệ ệ Trong b ng GI NG VIÊN, mã s gi ng viên (I_CODE) là khóa chính, trongả Ả ố ả b ng ph i h p, I_CODE là khóa ph . Ch có mã s gi ng viên trong b ng gi ngả ố ợ ụ ỉ ố ả ả ả viên là có th truy nh p vào b ng ph i h p.ể ậ ả ố ợ 43 Đ i s quan hạ ố ệ Mô hình quan h d a trên nguyên lý c a đ i s quan h . Đ i s quan h là t pệ ự ủ ạ ố ệ ạ ố ệ ậ h p các toán t th c hi n trên quan h . M i toán t s d ng m t ho c hai quanợ ử ự ệ ệ ỗ ử ử ụ ộ ặ h làm input (đ u vào) đ t o ra các quan h m i, g i là output (đ u ra)ệ ầ ể ạ ệ ớ ọ ầ Các toán t s d ng trong đ i s quan hử ử ụ ạ ố ệ 8 toán t quan h đ c đ nh danh. Nh ng bi u di n t ng tr ng c a li t kêử ệ ượ ị ữ ể ễ ượ ư ủ ệ tóm t t c a chúng đ c thâu g n trong các ph n sau:ắ ủ ượ ọ ầ PHÉP CH NỌ Phép ch n tách các b d li u c th hay hàng ra kh i m t quan h cho tr cọ ộ ữ ệ ụ ể ỏ ộ ệ ướ d a trên 1 đi u ki n nào đó.ự ề ệ Phép ch n tách các b d li u hay hàngọ ộ ữ ệ Ví d , 1 b ng sinh viên có thu c tính ROLLNO (s h s ), STUDNAME (tênụ ả ộ ố ồ ơ sinh viên), AGE (tu i) và GENDER (gi i tinh). Đi u ki n đ tách d li u làổ ớ ề ệ ể ữ ệ nh ng sinh viên tu i trên 25. K t qu nh sau:ữ ổ ế ả ư Ví d c a phép ch nụ ủ ọ 44 PHÉP CHI UẾ Phép chi u tách d li u nh ng thu c tính ho c c t nh t đ nh kh i quan h choế ữ ệ ữ ộ ặ ộ ấ ị ỏ ệ tr c.ướ Phép chi u tách thu c tính ho c c tế ộ ặ ộ Ví d , n u ch tách tên và tu i c a sinh viên, k t qu s nh sau (coi nh b ngụ ế ỉ ổ ủ ế ả ẽ ư ư ả sinh viên ch có 6 b d li u)ỉ ộ ữ ệ Ví d c a phép chi uụ ủ ế PHÉP NHÂN Phép nhân xây d ng quan h m i d a trên hai quan h nh t đ nh. Nó bao g mự ệ ớ ự ệ ấ ị ồ t t c các t h p có th c a các b d li , m i b t m t trong hai quan h .ấ ả ổ ợ ể ủ ộ ữ ệ ỗ ộ ừ ộ ệ Ví d c a phép nhânụ ủ 45 Cho t ng x ng, hai b ng c n có nh ng thu c tính chungươ ứ ả ầ ữ ộ Phép nhân t o ra tích Cartesian gi a hai b ng. Ví d , theo dõi hai b ng sau:ạ ữ ả ụ ả B ng GI NG VIÊNả Ả B ng PH I H Pả Ố Ợ Tích Cartesian c a các b ng này s là t t c nh ng t h p kh năng c a các bủ ả ẽ ấ ả ữ ổ ợ ả ủ ộ d li u.ữ ệ 46 Tích Cartesian c a b ng gi ng viên và b ng ph i h pủ ả ả ả ố ợ PHÉP H PỢ Phép h p xây d ng quan h m i t các b xu t hi n trong 1 trong 2 quan h cợ ự ệ ớ ừ ộ ấ ệ ệ ụ th .ể Phép h pợ Đ phép h p t ng x ng, hai b ng c n có chung t p thu c tính (t p h p cácể ợ ươ ứ ả ầ ậ ộ ậ ợ c t có cùng ki u d li u).ộ ể ữ ệ Xem xét hai b ng A và B. A g m các s h s và tên c a t t c các sinh viênả ồ ố ồ ơ ủ ấ ả h c chuyên ngành Toán. Các b ng này t ng thích vì có th á d ng đ c phépọ ả ươ ể ụ ượ h p.ợ 47 AB A – B Ví d c a phép h pụ ủ ợ PHÉP GIAO Phép giao xây d ng quan h g m các b d li u cùng xu t hi n trong 2 quanự ệ ồ ộ ữ ệ ấ ệ h .ệ Phép giao Xem xét 2 b ng A và B. Nancy đang theo h c cùng lúc 2 ngành. Vì th , tên c aả ọ ế ủ cô y xu t hi n trong c hai b ng. Phép giao c a 2 b ng tách 1 hàng chung choấ ấ ệ ả ả ủ ả c hai b ng. PHÉP GIAO có th áp d ng khi các b ng t ng thích nhau trongả ả ể ụ ả ươ phép h p.ợ 48 Ví d c a PHÉP GIAOụ ủ PHÉP TRỪ Phép tr xây d ng quan h gi a các b d li u xu t hi n trong quan h thừ ự ệ ữ ộ ữ ệ ấ ệ ệ ứ nh t mà không xu t hi n trong quan h th hai.ấ ấ ệ ệ ứ PHÉP TRỪ Phép tr áp d ng cho các b ng t ng thích nhau trong phép h p. trong tr ngừ ụ ả ươ ợ ườ h p b ng A và B, toán t “A TR B” tách t t c các hàng thu c v A chợ ả ử Ừ ấ ả ộ ề ứ không thu c v B.ộ ề A-B Ví d cho PHÉP TRụ Ừ PHÉP K T N IẾ Ố Phép k t n i xây d ng quan h t hai quan h c th . Quan h này g m t t cế ố ự ệ ừ ệ ụ ể ệ ồ ấ ả các t p h p có th c a các b d li u, m i b t 1 quan h th a mãn đi uậ ợ ể ủ ộ ữ ệ ỗ ộ ừ ệ ỏ ề ki n.ệ Ví d , cho 2 b ng X và Y. B ng X g m s h s c a sinh viên và mã môn h cụ ả ả ồ ố ồ ơ ủ ọ h đăng ký. B ng Y g m mã s c a các gi ng viên và mã môn h c h d y.ọ ả ồ ố ủ ả ọ ọ ạ N u c n t h p c a c a sinh viên h c V t lý và gi ng viên môn V t lý, chúngế ầ ổ ợ ủ ủ ọ ậ ả ậ ta ph i th c hi n phép k t n i. Phép k t n i đòi h i ph i có các thu c tínhả ự ệ ế ố ế ố ỏ ả ộ gi ng nhau.ố 49 PHÉP K T N IẾ Ố Bi u đ sau đây minh h a cho phép k t n i gi a b ng X và Y.ể ồ ọ ế ố ữ ả X Y PHÉP K T N IẾ Ố Ví d c a PHÉP K T N Iụ ủ Ế Ố 50 PHÉP CHIA Phép chia s d ng 2 quan h và xây d ng quan h m i g m giá tr c a 1 thu cử ụ ệ ự ệ ớ ồ ị ủ ộ tính t 1 quan h , g n v i m i giá tr trong quan th kia. PHÉP CHIA ng c l iừ ệ ắ ớ ọ ị ệ ượ ạ v i PHÉP NHÂNớ PHÉP CHIA Quan sát tr ng h p sau:ườ ợ Nhân công Thành phố K t qu phép chiaế ả Chia Ví d c a PHÉP CHIAụ ủ 51 ng d ng c a H Qu n tr CSDL quan hỨ ụ ủ ệ ả ị ệ H Qu n tr CSDL quan h đ c s d ng trong:ệ ả ị ệ ượ ử ụ  Đ t vé máy bay ho c tàu h aặ ặ ỏ  ng d ng trong ngành ngân hàngỨ ụ  Công nghi p s n xu tệ ả ấ  X lý đ t l nhử ặ ệ  H th ng qu n lý b nh vi nệ ố ả ệ ệ  H th ng qu n lý th vi nệ ố ả ư ệ  H th ng qu n lý khách s nệ ố ả ạ Nh ng s n ph m c a H Qu n tr CSDL quan h ph bi n ngày nay:ữ ả ẩ ủ ệ ả ị ệ ổ ế  Sybase  Oracle  Microsoft SQL Server  Ingress  DB2 52 Tóm t tắ Trong bài này, h c viên n m đ c:ọ ắ ượ  Mô hình quan h đ c chia thành:ệ ượ • Mô hình quan h d a trên đ i t ngệ ự ố ượ • Mô hình quan h d a trên m u tinệ ự ẩ  K năng v gi n đ th c th - quan hỹ ẽ ả ồ ự ể ệ • Th c th ký hi u b ng hình ch nh tự ể ệ ằ ữ ậ • Quan h ký hi u b ng hình thoiệ ệ ằ • Thu c tính ký hi u b ng hình elipộ ệ ằ  Quan h bao g m nhi u-nhi u, m t-nhi u, m t-m t đ u đ c th hi nệ ồ ề ề ộ ề ộ ộ ề ượ ể ệ b ng bi u tr ng.ằ ể ư  Th c th y u bi u hi n b ng hình h p hai đ ngự ể ế ể ệ ằ ộ ườ  T p th c th con n i v i t p th c th cha b ng 1 quan h cô danh, đánhậ ự ể ố ớ ậ ự ể ằ ệ d u b ng thanh ngang trên đ uấ ằ ầ  Trong mô hình quan h , d li u th hi n b ng b ng (quan h ) c a cácệ ữ ệ ể ệ ằ ẳ ệ ủ hàng (b d li u) và các c t (thu c tính)ộ ữ ệ ộ ộ  S các b g i là b n s c a b ng, s các thu c tính g i là b c c aố ộ ọ ả ố ủ ả ố ộ ọ ậ ủ b ng.ả  1 thu c tính (ho c t p thu c tính) là duy nh t đ i v i b d li u g i làộ ặ ậ ộ ấ ố ớ ộ ữ ệ ọ khóa chính  Thông tin khi m khuy t đ c th hi n b ng NULL trog b ngế ế ượ ể ệ ằ ả  Khóa ph là m t c t g n v i khóa chính c a b ng khác.ụ ộ ộ ắ ớ ủ ả  Mô hình quan h d a trên nguyên lý đ i s quan hệ ự ạ ố ệ  8 toán t c a quan h là, phép ch n, phép chi u, phép h p, phép giao,ử ủ ệ ọ ế ợ phép nhân, hép chia, phép tr , phép kêt n i.ừ ố 53 Bài 1C: Ph i h pố ợ 54 Byte ki n th cế ứ Trong ph n này, chúng ta s nghiên c u v :ầ ẽ ứ ề  Mô hình m ng và mô hình phân c pạ ấ  Qu n tr d li uả ị ữ ệ Mô hình m ng và mô hình phân c pạ ấ Trong mô hình m ng, d li u th hi n d i d ng các b n ghi. Nh ng b n ghiạ ữ ệ ể ệ ướ ạ ả ữ ả này liên h v i nhau b ng các đ ng d n. M i b n ghi g m có các tr ng vàệ ớ ằ ườ ẫ ỗ ả ồ ườ m i tr ng gòm 1 giá tr d li u. M i b n ghi trong mô hình m ng t ng tỗ ườ ị ữ ệ ỗ ả ạ ươ ự nh 1 th c th trong mô hình E/R. M i tr ng là m t thu c tính và m i đ ngư ự ể ỗ ườ ộ ộ ỗ ườ d n gi ng nh 1 quan h . 1 đ ng d n liên k t 2 b n ghi.ẫ ố ư ệ ườ ẫ ế ả Ví d , tài kho n c a m t khách hàng trong CSDL ngân hàng đ c th hi nụ ả ủ ộ ượ ể ệ trong mô hình m ng v i 2 b n ghi sau:ạ ớ ả  KHÁCH HÀNG • Tên • Đ a chị ỉ • Thành phố  TÀI KHO NẢ • S tài kho nố ả • K t toánế Các tr ng trong m i b n ghi KHÁCH HÀNG s là tên, đ a ch và thành ph .ườ ỗ ả ẽ ị ỉ ố T ng t , các tr ng trong m i b n ghi TÀI KHO N là s tài kho n và k t toán.ươ ự ườ ỗ ả Ả ố ả ế Gi n đ c u trúc d li u đ c dùng đ thi t k mô hình m ng. L c đ c u trúcả ồ ấ ữ ệ ượ ể ế ế ạ ượ ồ ấ d li u t ng t v i l c đ E/R. Nó đ c dùng đ xác đ nh c u truc logic c aữ ệ ươ ự ớ ượ ồ ượ ể ị ấ ủ CSDL. Bi u đ sau bi u di n b n ghi KHÁCH HÀNG, b n ghi TÀI KHO N vàể ồ ể ễ ả ả Ả m i liên h gi a chúngố ệ ữ Gi n đ c u trúc d li uả ồ ấ ữ ệ Bi u đ trên th hi n r ng khách hàng tên Mike có 568 trong ngân hàng.ể ồ ể ệ ằ 55 Nh mô hình m ng, mô hình phân c p cũng g m nhi u b n ghi. M i b n ghi g mư ạ ấ ồ ề ả ỗ ả ồ các tr ng, hai b n ghi liên k t b ng đ ng d n. Tuy nhiên, trong mô hình phânườ ả ế ằ ườ ẫ c p, các b n ghi đ c t ch c b ng c u trúc cây. Gi n đ c u trúc cây bi u di nấ ả ượ ổ ứ ằ ấ ả ồ ấ ể ễ thi t k c a mô hình phân c p, bao g m các h p và các đ ngế ế ủ ấ ồ ộ ườ Đ c ví d trên v i b n ghi KHÁCH HÀNG và TÀI KHO N. Bi u đ sau th hi nọ ụ ớ ả Ả ể ồ ể ệ l c đ c u trúc cây g m b n ghi KHÁCH HÀNG và TÀI KHO N và liên k tượ ồ ấ ồ ả Ả ế gi a chúng.ữ L c đ c u trúc câyượ ồ ấ Bi u đ trên bi u di n khách hàng tên Mike có tà kho n 568, Tim có tài kho n 749ể ồ ể ễ ả ả và 114, Mitchell có tài kho n 254.ả Th y r ng các b n ghi đ c t ch c d i d ng cây v i 1 r . R là m t đi m phânấ ằ ả ượ ổ ứ ướ ạ ớ ễ ễ ộ ể nhánh hình th c. CSDL phân c p là t p h p các cây v i các r , t p h p này t oứ ấ ậ ợ ớ ễ ậ ợ ạ thành r ng.ừ Ch có quan h m t-m t và quan h m t-nhi u có th t n t i gi a nút cha và nútỉ ệ ộ ộ ệ ộ ề ể ồ ạ ữ con. Qu n tr CSDLả ị Nhà qu n tr CSDL đóng vai trò nh trung gian gi a d li u l u trong CSDL và truyả ị ư ữ ữ ệ ư v n báo cáo v i h CSDL. Nhà qu n tr CSDL có các nhi m v sau:ấ ớ ệ ả ị ệ ụ  T ng tác v i ng i qu n lý t p tin: Nhà qu n tr CSDL d ch ngôn ngươ ớ ườ ả ệ ả ị ị ữ qu n tr CSDL sang các l nh đ i v i h th ng têp tin c p th p. Đi uả ị ệ ố ớ ệ ố ấ ấ ề này là c n thi t vì d li u l u trong đĩa c ng s d ng h th ng t p tinầ ế ữ ệ ư ổ ứ ử ụ ệ ố ệ cung c p b i h đi u hành. Vì v y, nhà qu n tr CSDL thao tác v i l uấ ở ệ ề ậ ả ị ớ ư tr , khôi ph c và c p nh t d li uữ ụ ậ ậ ữ ệ 56  Duy trì s nh t quán: nhi u h n ch đ c ch rõ cho toàn b CSDL đự ấ ề ạ ế ượ ỉ ộ ể d m b o giá tr d li u trong CSDL là h p l . Ví d , trong CSDL c a 1ả ả ị ữ ệ ợ ệ ụ ủ tr ng đ i h c, sinh viên có th đăng ký t i đa là 4 môn. N u s mônườ ạ ọ ể ố ế ố v t quá 4, CSDL s báo l i. H n ch này đ c đ nh rõ b i Nhà qu nượ ẽ ỗ ạ ế ượ ị ở ả tr CSDL. Trách nhi m c a ng i qu n lý CSDL là ki m tra nh ng h nị ệ ủ ườ ả ể ữ ạ ch này có b vi ph m hay không. N u có, ng i qu n lý CSDL c n cóế ị ạ ế ườ ả ầ nh ng bi n pháp thích h p.ữ ệ ợ  Duy trì b o m t: gi i h n b o m t nh h n ch truy c p vào nh ngả ậ ớ ạ ả ậ ư ạ ế ậ ữ vùng khác nhau c a CSDL đ c ch rõ b i nhà qu n tr CSDL. Ng iủ ượ ỉ ở ả ị ườ qu n lý CSDL c n đ m b o tuân th nh ng gi i h n này.ả ầ ả ả ủ ữ ớ ạ  Quy trình thi hành d phòng và khôi ph c: h CSDL có th b l i b t cự ụ ệ ể ị ỗ ấ ứ khi nào do l i ngu n, l i ph n m m ho c s c đĩa. Ng i qu n lýỗ ồ ỗ ầ ề ặ ự ố ườ ả CSDL ch u trách nhi m tìm ra các l i và ph c h i CSDL t i n i b l i.ị ệ ỗ ụ ồ ạ ơ ị ỗ Đ làm đ c đi u này, ng i qu n lý CSDL c n ti n hành d phòng vàể ượ ề ườ ả ầ ế ự khôi ph c.ụ  Ki m tra đ ng th i: CSDL th ng đ c s d ng b i nhieuf ng i cùngể ồ ờ ườ ượ ử ụ ở ườ lúc. Đi u này có th gây ra vi c d li u thi u nh t quán khi t t cề ể ệ ữ ệ ế ấ ấ ả ng i s d ng cùng c p nh t d li u m t lúc. Ng i qu n lý CSDLườ ử ụ ậ ậ ữ ệ ộ ườ ả c n tránh tình tr ng này b ng cách ki m soát s t ng tác gi a nh ngầ ạ ằ ể ự ươ ữ ữ ng i s d ng.ườ ử ụ 57 L i c a chuyên giaờ ủ Trong ph n này, chúng ta h c v cách luy n t p t i u đ bi u th các m iầ ọ ề ệ ậ ố ư ể ể ị ố quan h trong các m i quan h , k năng v l c đ E/R ch a h th c nh phân,ệ ố ệ ỹ ẽ ượ ồ ứ ệ ứ ị và nh ng câu h i th ng g p v h CSDL và mô hình E/R.ữ ỏ ườ ặ ề ệ Luy n t p ệ ậ Bi u th các m i quan h trong các m i quan hể ị ố ệ ố ệ Mô hình E/R có 1 nh c đi m là chúng ta không th bi u th các m i quan hượ ể ể ể ị ố ệ trong các m i qua h . Ví d , v i 1 CSDL ch a thông tin v nhân viên. M i nhânố ệ ụ ớ ứ ề ỗ viên làm m t ph n vi c c th s d ng máy móc khác nhau. L c đ E/R trongộ ầ ệ ụ ể ử ụ ượ ồ tr ng h p này nh sauườ ợ ư 58 L c đ E/R mô t các m i quan h trong các m i quan hượ ồ ả ố ệ ố ệ Quan h gi a WORKS (công vi c) và USE (s d ng) có th liên k t nh ngệ ữ ệ ử ụ ể ế ư phái thay đ i c u trúc logic c a CSDL. L c đ E/R tr c đó có th thay đ iổ ấ ủ ượ ồ ướ ể ổ đ c nh phép g p. Phép g p có th xem nh s rút g n trong đó ta s d ngượ ờ ộ ộ ể ư ự ọ ử ụ m i quan h nh th c th b c cao h n. Vì th , trong ví d tr c, chúng ta cóố ệ ư ự ể ậ ơ ế ụ ướ th coi th c th EMPLOYEE (nhân công) và PROJECT (d án) cùng v i th cể ự ể ự ớ ự th WORKS nh m t th c th b c cao h n. Nh ng th c th này cũng gi ngể ư ộ ự ể ậ ơ ữ ự ể ố nh các th c th khác. Bi u đ sau v l c đ E/R s d ng phép g p.ư ự ể ể ồ ẽ ượ ồ ử ụ ộ 59 L c đ E/R v i phép g pượ ồ ớ ộ Th thu tủ ậ S d ng quan h tam phânử ụ ệ Chúng ta có th đ n gi n l c đ E/R có ch a quan h nh phân b ng cách sể ơ ả ượ ồ ứ ệ ị ằ ử d ng l c đ E/R có ch a quan h tam phân. Quan h tam phân là m i quan hụ ượ ồ ứ ệ ệ ố ệ gi a 3 th c th . Ví d , ngân hàng New Edge gi CSDL v t t c các kháchữ ự ể ụ ữ ề ấ ả hàng. Qu n tr CSDL, Mary Peterson, mu n d ng l c đ E/R cho tr ng h pả ị ố ự ượ ồ ườ ợ sau: 1 khách hàng có th có nhi u tài kho n. các tài kho n này có th nh ng chiể ề ả ả ể ở ữ nhánh khác nhau c a ngân hàng.ủ 60 Tình hu ng có th đ c mô t b i s d ng 2 quan h nh phân nh trong l cố ể ượ ả ở ử ụ ệ ị ư ượ đ sau:ồ L c đ E/R s d ng quan h nh phânượ ồ ử ụ ệ ị L c đ E/R trên có th chuy n thành l c đ E/R sau s d ng quan h tamượ ồ ể ề ượ ồ ử ụ ệ phân 61 L c đ E/R s d ng quan h tam phânượ ồ ử ụ ệ Trong l c đ này, quan h tam phân l y tên t ch cái đ u c a m t th c th .ượ ồ ệ ấ ừ ữ ầ ủ ộ ự ể Ví d , C t CUSTOMER (khách hàng), A t ACCOUNT (k toán), B tụ ừ ừ ế ừ BRANCH (chi nhánh) quan sát th y l c đ E/R trên đ m gi n h n so v i l cấ ượ ồ ơ ả ơ ớ ượ đ s d ng quan h nh phân.ồ ử ụ ệ ị Các câu h i th ng g pỏ ườ ặ  L c đ E/R cho 1 doanh nghi p có th đ c thi t k b ng nhi u cách.ượ ồ ệ ể ượ ế ế ằ ề Nh ng tiêu chí nào c n đ c xem xét khi đ a ra quy t đ nhữ ầ ượ ư ế ị • S d ng quan h nh th c hay tam th cử ụ ệ ị ứ ứ • S d ng thu c tính hay th c thử ụ ộ ự ể • S d ng phép g pử ụ ộ • S d ng th c th th ng hay th c th y uử ụ ự ể ườ ự ể ế • S d ng th c th hay quan hử ụ ự ể ệ 62  Nh ng nh c đi m c a vi c s d ng h CSDL là gì?ữ ượ ể ủ ệ ử ụ ệ Nh ng nh c đi m c a s d ng h CSDL là:ữ ượ ể ủ ử ụ ệ • L i h th ng: N u máy tính l u tr CSDL b h ng, t t c ng iỗ ệ ố ế ư ữ ị ỏ ấ ả ườ s d ng CSDL s ph i ch cho đ n khi máy tính ho t đ ng bìnhử ụ ẽ ả ờ ế ạ ộ th ng tr l i. Thêm n a, n u ph n m m ng d ng có nhườ ở ạ ữ ế ầ ề ứ ụ ả h ng t i CSDL b l i, CSDL có th b phá h y lâu dài. Vì v y,ưở ớ ị ỗ ể ị ủ ậ khi h CSDL đ c s d ng trong m t t ch c, t t c các ph nệ ượ ử ụ ộ ổ ứ ấ ả ầ m m tác đ ng tr c ti p lên CSDL c n đ c xác đ nh rõ. Ti p đó,ề ộ ự ế ầ ượ ị ế c n th ng xuyên b o d ng đ đ m b o t t c các ph n m mầ ườ ả ưỡ ể ả ả ấ ả ầ ề khôngcó sai sót. M t t ch c không s d ng h CSDL thì khôngộ ổ ứ ử ụ ệ g p ph i các s c h th ng vì các d li u và ph n m m b phânặ ả ự ố ệ ố ữ ệ ầ ề ị tán. • Xung đ t trong t ch c: S d ng CSDL chung có th d n đ nộ ổ ứ ử ụ ể ẫ ế xung đ t trong t ch c. M t s ng i s d ng không mu n m tộ ổ ứ ộ ố ườ ử ụ ố ấ quy n ki m soát đ i v i d li u. Chia s d li u còn gây ra cácề ể ố ớ ữ ệ ẻ ữ ệ v n đ khác. Ví d , m t nhóm ng i s d ng có th gây h i choấ ề ụ ộ ườ ử ụ ể ạ d li u c a nhóm khác.ữ ệ ủ • S c c a k ho ch phát tri n: m t d án phát tri n ph n m mự ố ủ ế ạ ể ộ ự ể ầ ề trong 1 t ch c có th g p s c vì m t s lý do. Ví d , l i íchổ ứ ể ặ ự ố ộ ố ụ ợ c a h CSDL không thuy t ph c đ c Ban qu n tr ho c th iủ ệ ế ụ ượ ả ị ặ ờ gian hoàn thi n c a d án dài h n cho phép.ệ ủ ự ơ • Yêu c u ngu n nhân l c trình đ cao: vi c đ a h CSDL vàoầ ồ ự ộ ệ ư ệ ho t đ ng c n nhân viên trình đ cao đ có th ki m soát CSDL.ạ ộ ầ ộ ể ể ể Chi phí chung cho nhân công s b đ y cao vì chi phí cho banẽ ị ẩ qu n tr CSDL là kho n chi phí lâu dài.ả ị ả • Chi phí chung : Phí t n cho vi c s d ng CSDL là r t l n. nhuổ ệ ử ụ ấ ớ c u v CSDL trong t ch c đòi joir ph i đ u t cho c ph nầ ề ổ ứ ả ầ ư ả ầ m m và ph n c ng. Thêm n a, chi phí v n hành cũng s giaề ầ ứ ữ ậ ẽ tăng. Ví d , công vi c liên quan đ n h qu n tr CSDL di n raụ ệ ế ệ ả ị ễ ch m h n so v i công vi c không c n H qu n tr CSDL.ậ ơ ớ ệ ầ ệ ả ị  Vai trò là gì và chúng đ c bi u di n th nào trong l c đ E/R?ượ ể ễ ế ượ ồ Vai trò là ch c năng m t th c th th c hi n trong m t m i quan h . Vaiứ ộ ự ể ự ệ ộ ố ệ trò th ng không đ c ch ra trên l c đ E/R. Tuy nhiên, chúng c nườ ượ ỉ ượ ồ ầ đ c ch rõ khi c n làm sáng t các quan h . Chúng ta có th ch d n cácượ ỉ ầ ỏ ệ ể ỉ ẫ vai trò trên l c đ E/R b ng cách ghi tên trên các đ ng d n n i cácượ ồ ằ ườ ẫ ố th c th và quan h . Ví d , trong l c đ E/R d i đây TEAMự ể ệ ụ ượ ồ ướ LEADER (tr ng nhóm) và TEAM MEMBER (thành viên nhóm) làưở nh ng ch d n vai trò gi a th c th EMPLOYEE (nhân viên) và quan hữ ỉ ẫ ữ ự ể ệ WORK-FOR (làm vi c cho).ệ 63 L c đ E/R ch d n vai tròượ ồ ỉ ẫ  Vì sao mô hình quan h l i ph bi n h n mô hình m ng l i và mô hìnhệ ạ ổ ế ơ ạ ướ phân c p?ấ Mô hình quan h không s d ng con tr ho c đ ng d n nh mô hìnhệ ử ụ ỏ ặ ườ ẫ ư m ng l i và mô hình phân c p. Thay vào đó, mô hình quan h nh n d ngạ ướ ấ ệ ậ ạ các b n ghi s d ng giá tr l u trong đó. Đi u đó cho phép s d ng các toánả ử ụ ị ư ề ử ụ t trong mô hình quan h .ử ệ  Nh ng nhi m v chính c a nhà qu n tr CSDL là gì?ữ ệ ụ ủ ả ị Nhi m v chính c a nhà qu n tr CSDL là:ệ ụ ủ ả ị • Đ nh nghĩa s đ : Nhà qu n tr CSDL t o ra các s đ CSDl b ngị ơ ồ ả ị ạ ơ ồ ằ cách vi t đ nh nghĩa cho c u truc logic c a CSDL. Nh ng đ nh nghĩaế ị ấ ủ ữ ị này sau đó s đ c chuy n thành các b ng trong CSDL.ẽ ượ ể ả • Đ nh nghĩa c u trúc b nh và ph ng pháp truy nh p: nhà qu n trị ấ ộ ớ ươ ậ ả ị CSDL t o ra c u trúc b nh và ph ng pháp truy nh p b ng cáchạ ấ ộ ớ ươ ậ ằ vi t đ nh nghĩa cho chúng. Nh ng đ nh nghĩa này sau đó đ cế ị ữ ị ượ chuy n thành c u trúc b nh và ph ng pháp truy nh p.ể ấ ộ ớ ươ ậ • Ch nh s a s đ và t ch c v t lý: Nhà qu n tr CSDL ch nh s a sỉ ử ơ ồ ổ ứ ậ ả ị ỉ ử ơ đ d li u và b nh v t lý khi c n thi t. Vi c này đ c th c hi nồ ữ ệ ộ ớ ậ ầ ế ệ ượ ự ệ nh vi t các đ nh nghĩa s d ng b i trình biên d ch ngôn ng đ nhờ ế ị ử ụ ở ị ữ ị nghĩa d li u hay b nh d li u và trình biên d ch ngôn ng đ nhữ ệ ộ ớ ữ ệ ị ữ ị nghĩa đ thay đ i.ể ổ • C p quy n truy nh p d li u: Nhà qu n tr CSDL c n ch rõ quy nấ ề ậ ữ ệ ả ị ầ ỉ ề h n s d ng cho m i ng i s d ng. Đi u đó giúp ki m soát s sạ ử ụ ỗ ườ ử ụ ề ể ự ử d ng CSDL, đ ng th i h n ch vi c truy c p vào m t s vùng c aụ ồ ờ ạ ế ệ ậ ộ ố ủ CSDL. • Ch rõ nh ng ràng bu c v tính nh t quán: c n ch rõ s ràng bu cỉ ữ ộ ề ấ ầ ỉ ự ộ v nh t quán đ i v i CSDL. Nh ng ràng bu c này đ c l u trong 1ề ấ ố ớ ữ ộ ượ ư c u trúc h th ng đ c bi t.ấ ệ ố ặ ệ 64 Luy n t pệ ậ 1. Ng i s d ng h qu n tr CSDL nào tham gia thi t k và b o trì CSDL và b oườ ử ụ ệ ả ị ế ế ả ả m t CSDL?ậ 2. M c cao nh t rong c u trúc c a 1 h qu n tr CSDL là m c __________.ứ ấ ấ ủ ệ ả ị ứ 3. Thành ph n nào c a h qu n tr CSDL x lý thao tác nh p và xu t v t lý v iầ ủ ệ ả ị ử ậ ấ ậ ớ d li u?ữ ệ 4. M t ______________ là m t đ c đi m c a m t th c th cho s n.ộ ộ ặ ể ủ ộ ự ể ẵ 5. Toán t quan h nào sau đây tách b d li u hay hàng c th ra kh i quan hử ệ ộ ữ ệ ụ ể ỏ ệ cho tr c, d i 1 đi u ki n nào đó?ướ ướ ề ệ a. Phép chi uế b. Phép ch nọ c. Phép k t n iế ố d. Phép chia 6. _____________ là s rút g n trong đó ta s d ng m i quan h nh th c th b cự ọ ử ụ ố ệ ư ự ể ậ cao h n.ơ 7. M t khách hàng có th có nhi u tài kho n trong m t ngân hàng nh ng m t tàiộ ể ề ả ộ ư ộ kho n ch có th dùng cho 1 khách hàng. Đây là quan h ____________.ả ỉ ể ệ 8. Đúng hay sai? T p th c th con t n t i ngay c khi đ c l p v i t p th c th cha.ậ ự ể ồ ạ ả ộ ậ ớ ậ ự ể 65 9. N i toán t quan h v i đúng mô t :ố ử ệ ớ ả Toán t quan hử ệ Mô tả 1. Phép chi uế A. Tách các thu c tính hay hàng cộ ụ th kh i quan h cho tr cể ỏ ệ ướ 2. Phép chia B. S d ng hai quan h đ t o quanử ụ ệ ể ạ h m i ch a giá tr c a 1 quanệ ớ ứ ị ủ h mà g n v i giá tr c a quanệ ắ ớ ị ủ h kia.ệ 3. Phép k t n iế ố C. Dùng hai quan h đ t o quan hệ ể ạ ệ m i ch a t t c các k t h p cóớ ứ ấ ả ế ợ th c a các b , m i b t m tể ủ ộ ỗ ộ ừ ộ trong hai quan h .ệ 4. Phép nhân D. S d ng hai quan h đ t o quanử ụ ệ ể ạ h m i ch a t t c các k t h pệ ớ ứ ấ ả ế ợ có th c a các b , m i b t 1ể ủ ộ ỗ ộ ừ quan h sao cho th a mãn đi uệ ỏ ề ki n c th .ệ ụ ể 10. Trong mô hình nào d li u đ c bi u di n d i d ng cây?ữ ệ ượ ể ễ ướ ạ 11. V l c đ E/R cho tr ng h p sau:ẽ ượ ồ ườ ợ M t t ch c có hai lo i nhân viên, nh n l ng ho c nh n ti n công. C haiộ ổ ứ ạ ậ ươ ặ ậ ề ả lo i đ u có nh ng đ c tính chung là mã nhân viên, tên và đ a ch . Tuy nhiên,ạ ề ữ ặ ị ỉ nhân viên nh n l ng có nh ng đ c tính kèm theo là l ng c b n, ph c p vàậ ươ ữ ặ ươ ơ ả ụ ấ tr c p y t . Nhân viên làm công óc nh ng đ c tính riêng là ti n công theo ngàyợ ấ ế ữ ặ ề và ti n công làm ngoài gi .ề ờ 66 Bài 1D: Th c hànhự 67 Bài t pậ Bài 1: New Era là m t công ty ch t o máy có hai ngu n cung ng. Nhà cung ng thộ ế ạ ồ ứ ứ ứ nh t đ ng ý thanh toán tín d ng, nhà cung ng th hai ch cho phép chi tr b ngấ ồ ụ ứ ứ ỉ ả ằ ti n m t tr c khi giao hàng. Công ty mu n l u tr thông tin v hai nhà cungề ặ ướ ố ư ữ ề ng m t cách riêng r . Đ i v i nhà cung ng thanh toán qua tín d ng, “creditứ ộ ẽ ố ớ ứ ụ period” (th i h n tín d ng) và “credit limit” (m c tín d ng) c n đ c ghi l i.ờ ạ ụ ứ ụ ầ ượ ạ Đ i v i nhà cung ng thanh toán ti n m t, “date of payment” (ngày thanh toán)ố ớ ứ ề ặ c n đ c ghi l i.ầ ượ ạ John là qu n tr viên CSDL t i New Era. Anh c n v l c đ E/R th hi n tìnhả ị ạ ầ ẽ ượ ồ ể ệ hu ng trên.ố Bài 2: Ron Floyd là qu n tr viên CSDL m i vào làm ngân hàng Standard. Ban qu nả ị ớ ở ả tr c a ngân hàng mu n vi tính hóa các ho t đ ng ngân hàng. Theo chính sáchị ủ ố ạ ộ c a c a ngân hàng, m t khách hàng có th có nhi u tài kho n nh ng m t tàiủ ủ ộ ể ề ả ư ộ kho n không th chung cho nhi u khách hàng. B c đ u thi t k CSDL, Ronả ể ề ướ ầ ế ế đ c yêu c u t o l c đ E/R th hi n quan h gi a khách hàng và tài kho nượ ầ ạ ượ ồ ể ệ ệ ữ ả c a h .ủ ọ Bài 3: Red Sky Systems là m t công ty IT m i thành l p. Công ty chuyên th c hienj cácộ ớ ậ ự d án ph n m m cho khách hàng. Công ty duy trì 1 CSDL g m b n ghi v cácự ầ ề ồ ả ề nhân viên và d án. M i thông tin liên quan đ n nhân viên l u trong 1 b ng cóự ọ ế ư ả tên là Employee (nhân viên). Thông tin v d án l u trong b ng có tên Projectề ự ư ả (d án). M t b ng khác có tên là Assignment (phân công) l u tr thông tin vự ộ ả ư ữ ề d án nào đ c giao cho nhân viên nào. Ba b ng đó nh sau:ự ượ ả ư EMPLOYEE 68 PROJECT ASSIGMENT Chris là qu n tr viên CSDL t i Red Sky Systems. Anh mu n ch ra các đi u sau:ả ị ạ ố ỉ ề 1. T t c chi ti t v nhân viên trong b ph n tài chínhấ ả ế ề ộ ậ 2. Tên và tuôit c a nhân viên.ủ 3. Tên d án, tên nhân viên và b ph n làm vi c c a t t c các nhân viênự ộ ậ ệ ủ ấ ả 4. Tên c a các nhân viên d i 25 tuôit và có mã nhân viên l n h n 100.ủ ướ ớ ơ Ch ra cách đ th c hi n các nhi m v trên và k t qu c a chúng.ỉ ể ự ệ ệ ụ ế ả ủ 69 Bài 4: Jack là ch m t c a hàng bách hóa. Anh có nh ng khách hàng th ng xuyênủ ộ ử ữ ườ mua rau qu , đ ng th i cũng có nh ng ng i cung c p rau qu th ng xuyên.ả ồ ờ ữ ườ ấ ả ườ Anh đ t mã khách hàng và mã cung c p cho nh ng khách hàng và nhà cung c pặ ấ ữ ấ th ng xuyên c a mình đ đ n gi n hóa vi c kinh doanh. Jack t o m t b ngườ ủ ể ơ ả ệ ạ ộ ả đ l u các b n ghi v khách hàng th ng xuyên và m t hàng h mua. Anh cũngể ư ả ề ườ ặ ọ l p m t b ng khác đ l u các b n ghi v nh ng ngu n cung ng th ng xuyênậ ộ ả ể ư ả ề ữ ồ ứ ườ và s n ph m mà h cung c p. Jack c n t o 1 b ng th 3, Customer-Supplierả ẩ ọ ấ ầ ạ ả ứ (khách hàng-nhà cung c p) bi u di n các b n ghi v khách hàng th ng xuyênấ ể ễ ả ề ườ và s n ph m h mua cùng v i ngu n cung c p m t hàng đó. Ch ra cách đả ẩ ọ ớ ồ ấ ặ ỉ ể Jack có th t o b ng th 3 và k t qu c a nó.ể ạ ả ứ ế ả ủ Chú ý: S d ng b n ghi Customer (khách hàng) và b n ghi Supplier (Nhà cungử ụ ả ả c p) đ gi i bài t p.ấ ể ả ậ B n ghi Customerả B n ghi Supplierả 70 Bài t p v nhàậ ề 1. Khái ni m nào sau đây đ nh nghĩa liên k t gi a các th c th ?ệ ị ế ữ ự ể a. L c đ E/Rượ ồ b. T p th c th chaậ ự ể c. Quan hệ d. Thu c tínhộ 2. Khái ni m nào d i đây th hi n đ c tính c a 1 th c th ?ệ ướ ể ệ ặ ủ ự ể a. T p th c th conậ ự ể b. Thu c tínhộ c. L c đ E/Rượ ồ d. T p th c th chaậ ự ể 3. Ki u quan h nào sau đây đ c th hi n n u 1 sinh viên đăng ký 2 mônể ệ ượ ể ệ ế h c cùng 1 lúc?ọ a. M t – m tộ ộ b. Nhi u – m tề ộ c. M t – nhi uộ ề d. Nhi u – nhi uề ề 4. Trong mô hình nào d i đây d li u đ c bi u di n d i d ng cây?ướ ữ ệ ượ ể ễ ướ ạ a. Mô hình phân c pấ b. Mô hình quan hệ c. Mô hình th c th - quan hự ể ệ d. Mô hình m ng l iạ ướ 5. Toán t quan h nào đ c dùng đ tách m t c t ra kh i quan h choử ệ ượ ể ộ ộ ỏ ệ tr c?ướ a. Phép ch nọ b. Phép nhân c. Phép chia d. Phép chi uế 71 6. Ai là ng i th c hi n nhi m v thay th kh i d li uườ ự ệ ệ ụ ế ố ữ ệ a. Qu n tr viên CSDLả ị b. Ng i qu n lý fileườ ả c. Ng i qu n lý đĩaườ ả ổ d. Ng i qu n lý CSDLườ ả 7. Giai đo n cu i cùng c a chu kỳ phát tri n CSDL?ạ ố ủ ể a. Xác đ nh yêu c uị ầ b. Đánh giá và b o trì CSDLả c. Thi t k khái ni mế ế ệ d. Th c thiự 8. Nh c đi m c a ph ng pháp truy n th ng trong x lý d li u?ượ ể ủ ươ ề ố ử ữ ệ a. D li u nh t quánữ ệ ấ b. Gi v ng tiêu chu nữ ữ ẩ c. Nh ng h n ch trong b o m tữ ạ ế ả ậ d. G p đôi s l ng d li u c n thi tấ ố ượ ữ ệ ầ ế 9. Th c th ph thu c là:ự ể ụ ộ a. Th c th y uự ể ế b. Th c th th ng ự ể ườ c. Th c th conự ể d. Th c th chaự ể 10. khái ni m nào sau đây th hi n vùng ch a c a d li u t đó 1 ho cệ ể ệ ứ ủ ữ ệ ừ ặ nhi u thu c tính l y giá tr th c c a nó?ề ộ ấ ị ự ủ a. Quan hệ b. Th c thự ể c. Mi nề d. B ngả 72 Bài 2A: Thi t k CSDL logicế ế Trong bài này, chúng ta nghiên c u:ứ  V l c đ E/R cho các b n trong quan h v i các chi ti t:ẽ ượ ồ ả ệ ớ ế • Th c th th ngự ể ườ • Thu c tínhộ • Quan hệ • Th c th y uự ể ế • Th c th con và th c th chaự ể ự ể  Phân bi t các khóaệ  Đ nh nghĩa Chuyên bi t hóa và T ng quát hóa ị ệ ổ 73 Mô hình khái ni mệ Mô hình khái ni m ph n ánh các th c th và quan h c a chúng d a trên nh ng yêuệ ả ự ể ệ ủ ự ữ c u v x lý d li u c a t ch c. Đ phát tri n m t CSDL th a mãn nhu c uầ ề ử ữ ệ ủ ổ ứ ể ể ộ ỏ ầ thông tin c trong hi n t i l n t ng lai, tr c h t chúng ta c n thi t k m t môả ệ ạ ẫ ươ ươ ế ầ ế ế ộ hình khái ni m cho CSDL.ệ Thi t k mô hình khái ni m không liên quan t i giai đo n th c thi và v n hành c aế ế ệ ớ ạ ự ậ ủ CSDL. Mô hình khái ni m có th ánh x t i mô hình quan h , phân c p hay m ngệ ể ạ ớ ệ ấ ạ l i. Nó đ c l p v i t ng ng d ng đ n l , h qu n tr CSDL, ph n c ng và bướ ộ ậ ớ ừ ứ ụ ơ ẻ ệ ả ị ầ ứ ộ nh v t lý c a d li u.ớ ậ ủ ữ ệ Phân tích d li u là b c đ u tiên trong thi t k mô hình hái ni m, b t đ u v i thuữ ệ ướ ầ ế ế ệ ắ ầ ớ th p thông tin v d li u. B c này th ng bao g m m t b n đi u tra ho c m tậ ề ữ ệ ướ ườ ồ ộ ả ề ặ ộ ph ng pháp t ng t đ có đ c m t danh sách d li u mà t ch c c n. Cácươ ươ ự ể ượ ộ ữ ệ ổ ứ ầ bi u m u, hóa đ n, báo cáo là nh ng đi m kh i đ u đ thu th p d li u. B cể ẫ ơ ữ ể ở ầ ể ậ ữ ệ ướ ti p theo là ki m tra suqj v n hành và x lý d li u và lo i b các d li u trùng l pế ể ậ ử ữ ệ ạ ỏ ữ ệ ặ ho c không h p lý.ặ ợ Phân tích d li u bao g m nh n bi t các th c th , thu c tính c a chúng và m iữ ệ ồ ậ ế ự ể ộ ủ ố quan h gi a các th c th d a trên d li u thu th p đ c.ệ ữ ự ể ự ữ ệ ậ ượ Sau khi hoàn thành phân tích d li u, chúng ta v l c đ th c th - quan h . L cữ ệ ẽ ượ ồ ự ể ệ ượ đ t ng quan v thi t k , d dàng truy n đ t ý t ng cho ng i s d ng. Ánh xồ ổ ề ế ế ễ ề ạ ưở ườ ử ụ ạ c a v t th c cho các bi u t ng c a th c th - quan h là ch quan. Thôngủ ậ ự ể ượ ủ ự ể ệ ủ th ng, nh ng đ i t ng ban đ u là thu c tính, sau khi duy t l i thi t k s trườ ữ ố ượ ầ ộ ệ ạ ế ế ẽ ở thành th c th . Vì v y, không có quy lu t rõ ràng đ nh n bi t m t đ i t ng làự ể ạ ậ ể ậ ế ộ ố ượ th c th , thu c tính hay quan h .ự ể ộ ệ Ánh x l c đ th c th - quan h t i b ngạ ượ ồ ự ể ệ ớ ả CSDL phù h p v i l c đ E/R có th đ c bi u di n b i t p h p các b ng trongợ ớ ượ ồ ể ượ ể ễ ở ậ ợ ả h th ng quan h . Hãy xem xét s ánh x c a l c đ th c th - quan h t i b ngệ ố ệ ự ạ ủ ượ ồ ự ể ệ ớ ả trong quan h v i:ệ ớ  Th c th th ngự ể ườ  Thu c tínhộ  Quan hệ  Th c th y uự ể ế  Th c th cha và th c th conự ể ự ể 74 Th c th th ngự ể ườ C n nh c l i r ng th c th th ng không ph thu c. Chúng có th t n t i đ c l pầ ắ ạ ằ ự ể ườ ụ ộ ể ồ ạ ộ ậ v i các th c th khác. Chúng là m t “kh i h p nh t” c a CSDL. M i th c thớ ự ể ộ ố ợ ấ ủ ỗ ự ể th ng ánh x t i 1 b ng. Ví d , quan sát l c đ E/R d i đây:ườ ạ ớ ả ụ ượ ồ ướ Th c th th ngự ể ườ Th c th th ng STUDENT (sinh viên) và BOOKS (sách) ánh x t i 2 b ng riêngự ể ườ ạ ớ ả bi t.ệ Thu c tínhộ M i đ c tính ho c thu c tính th hi n trong l c đ E/R ánh x t i m t thu c tínhỗ ặ ặ ộ ể ệ ượ ồ ạ ớ ộ ộ c a b ng t ng ng. Đ c tính ho c thu c tính c a STUDENT và BOOKS ánh xủ ả ươ ứ ặ ặ ộ ủ ạ t i thu c tính c a b ng thích h p.ớ ộ ủ ả ợ Thu c tínhộ 75 Khóa chính c a b ng đ c xác đ nh là khóa c a l c đ E/R, ROLL_NO (s hủ ả ượ ị ủ ượ ồ ố ồ s ) và CODE (mã s ). Ghi nh r ng khóa ph i xác đ nh đ c duy nh t m i b dơ ố ớ ằ ả ị ượ ấ ỗ ộ ữ li u trong b ng.ệ ả Quan hệ Ánh x c a quan h d a vào ki u quan h , đ c nói đ n trong ph n tr c. M iạ ủ ệ ự ể ệ ượ ế ầ ướ ỗ ki u d li u ánh x t i các b ng theo m t cách th c khác nhau trong h qu n trể ữ ệ ạ ớ ả ộ ứ ệ ả ị CSDL h th ng.ệ ố Nguyên lý quan tr ng nh t là t o các b ng sao cho thông tin t th gi i th c đ cọ ấ ạ ả ừ ế ớ ự ượ l u tr và ph c h i theo cách t i u; theo đó, s l ng b ng ít nh t , s l ngư ữ ụ ồ ố ư ố ượ ả ấ ố ượ thu c tính ít nh t. trong h th ng quan h , phép k t n i ph c h i t t c thông tinộ ấ ệ ố ệ ế ố ụ ồ ấ ả b ng cách k t h p hai hay nhi u b ng.ằ ế ợ ề ả Quan h m t – m tệ ộ ộ Trong quan h m t – m t, m i th hi n th c th có th liên k t v i ch 1 th hi nệ ộ ộ ỗ ể ệ ự ể ể ế ớ ỉ ể ệ c a th c th liên quan.ủ ự ể Ví d , cho r ng m t sinh viên ch làm m t đ tài và không sinh viên nào khác làmụ ằ ộ ỉ ộ ề cùng đ tài. Nh v y, đây là m i quan h m t – m t gi sinh viên và đ tài.ề ư ậ ố ệ ộ ộ ữ ề Chúng ta bi u di n quan h gi a hai th c th ể ễ ệ ữ ự ể Student (Sinh viên ) và Project (đề tài) d i d ng l c đ E/R nh sau:ướ ạ ượ ồ ư Quan h m t - m tệ ộ ộ Ki u quan h này có th phân tích b ng nhi u cách. M t cách là phân tích nhể ệ ể ằ ề ộ ư trong quan h m t – nhi u b ng cách gi khóa ph trong m t trong hai b ng. cáchệ ộ ề ằ ữ ụ ộ ả khác là h p nh t hai b ng thành m t b ng đ truy c p nhanh h n. Ví d , n u truyợ ấ ả ộ ả ể ậ ơ ụ ế v n yêu c u d li u t hai b ng ấ ầ ữ ệ ừ ả Student và Project, cách t t nh t là h p nh t haiố ấ ợ ấ b ng đ c i thi n ho t đ ng truy v n.ả ể ả ệ ạ ộ ấ 76 Quan h m t – nhi uệ ộ ề Trong quan h m t – nhi u, m t th hi n c a m t th c th có th liên k t h n 1ệ ộ ề ộ ể ệ ủ ộ ự ể ể ế ơ th hi n c a th c th liên quan.ể ệ ủ ự ể Ví d , m t phòng có nhi u h n m t nhân viên.ụ ộ ề ơ ộ 77 Chúng ta bi u di n quan h gi a nhân viên và phòng theo d ng l c đ E/R nhể ễ ệ ữ ạ ượ ồ ư sau: Ánh x quan h m t – nhi uạ ệ ộ ề Dept_ID (ký hi u phòng) c a m t nhân viên có th l u tr trong b ng ệ ủ ộ ể ư ữ ả Employee nh trên. Ví th , ư ể Dept_ID trong b ng ả Employee là khóa ph trong b ng ụ ả Employee. Quan h nhi u – nhi uệ ề ề Quan sát l c đ sau:ượ ồ Quan h nhi u – nhi uệ ề ề 78 M t sinh viên có th m n nhi u quy n sách, m t quy n sách có th m n b iộ ể ượ ề ể ộ ể ể ượ ở nhi u sinh viên. Quan h ISSUES (cho m n) liên quan đ n c sinh viên và sách.ề ệ ượ ế ả ISSUES cũng có nhi u thu c tính riêng bi t, ví d , ngày m n sách và ngày trề ộ ệ ụ ượ ả sách. Vì th , chúng ta c n hi u r ng thu c tính không ch thu c v duy nh t m tế ầ ể ằ ộ ỉ ộ ề ấ ộ th c th . Chúng còn thu c v m i quan h . m i quan h ISSUES là quan h nhi uự ể ộ ề ố ệ ố ệ ệ ề – nhi u.ề B ng ả ISSUE ph i bao g m khóa chính c a c hai b ng ả ồ ủ ả ả STUDENT và BOOKS (ROLL_NO và CODE). Đây là khóa ph c a b ng ụ ủ ả ISSUE, giúp n i hai b ngố ả STUDENT và BOOKS. Ánh x quan hạ ệ Nh l i phép k t n i nói đ n trong đ i s quan h . N u m t ng i s d ng mu nớ ạ ế ố ế ạ ố ệ ế ộ ườ ử ụ ố bi t cu n sách nào đ c m n b i sinh viên nào và vào ngày nào, chúng ta có thế ố ượ ượ ở ể s d ng khóa ph trong b ng ISSUE đ k t n i c ba b ng. K t qu thu đ c làử ụ ụ ả ể ế ố ả ả ế ả ượ b n mô t hoàn ch nh c a vi c cho m n sách nh sau:ả ả ỉ ủ ệ ượ ư B ng k t n iả ế ố Khóa chính c a b ng ủ ả ISSUE là gì? Có hai kh năng. Th nh t là k t h p hai khóaả ứ ấ ế ợ ph (ụ ROLL_NO và CODE) n u s k t h p nh n d ng duy nh t đ c m i hàngế ự ế ợ ậ ạ ấ ượ ọ trong b ng. Khóa này đ c xem nh khóa ph c h p, t o b i nhi u h n m t thu cả ượ ư ứ ợ ạ ở ề ơ ộ ộ tính. Kh năng th hai là t o m t thu c tính m i cho khóa chính, ví dả ứ ạ ộ ộ ớ ụ ISSUENUM. 79 Chúng ta có th bi u di n ki u quan h gi a hai th c th trong l c đ th c th -ể ể ễ ể ệ ữ ự ể ượ ồ ự ể quan h b ng nh ng ký hi u t ng tr ng. M t th c th có th k t h p v i m t,ệ ằ ữ ệ ượ ư ộ ự ể ể ế ợ ớ ộ nhi u ho c không k t h p v i th c th khác.ề ặ ế ợ ớ ự ể Th c th y uự ể ế Th c th y u là th c th t n t i ph thu c vào th c th khác. Ví d , nh ng phự ể ế ự ể ồ ạ ụ ộ ự ể ụ ữ ụ thu c c a m t nhân viên.ộ ủ ộ Th c th y uự ể ế 80 Trong ví d trên, xhungs ta có th c th y u là DEPENDENT (ph thu c) ph thu cụ ự ể ế ụ ộ ụ ộ vào th c th EMPLOYEE (nhân viên). Th c th DEPENDENT có th đ c ánh xự ể ự ể ể ượ ạ t i các b ng riêng bi t nh sauớ ả ệ ư Th c th y u ánh x t i b ngự ể ế ạ ớ ả T p th c th con và t p th c th chaậ ự ể ậ ự ể T p th c th con là t p con c a m t th c th khác. T p th c th con luôn phậ ự ể ậ ủ ộ ự ể ậ ự ể ụ thu c vào t p th c th cha đ t n t i.ộ ậ ự ể ể ồ ạ T p th c th con và t p th c th chaậ ự ể ậ ự ể M i ki u th c th ( th c th con và th c th cha) ánh x t i m t b ng riêng bi t.ỗ ể ự ể ự ể ự ể ạ ớ ộ ả ệ Ví d :ụ EMPLOYEE (nhân viên) 81 HOURLY EMPLOYEE SALARIED EMPLOYEE (nhân viên làm theo gi )ờ (nhân viên làm h ng l ng)ưở ươ Ánh x th c th con và th c th chaạ ự ể ự ể Khóa chính c a th c th cha là khóa ph c a th c th con. Nó t o ra m t đ ngủ ự ể ụ ủ ự ể ạ ộ ườ d n gi a hai th c th . Khóa ph c a th c th con cung đ ng th i là khóa chínhẫ ữ ự ể ụ ủ ự ể ồ ờ c a nó. Thu c tính đ c mã hóa n m trong b ng EMPLOYEE ch ra th c th con.ủ ộ ượ ằ ả ỉ ự ể Ví d , “S” cho nhân viên làm h ng l ng, “H” cho nhân viên làm theo gi .ụ ưở ươ ờ HOURLY EMPLOYEE SALARIED EMPLOYEE C u trúc b ng v i thu c tính đ c mã hóaấ ả ớ ộ ượ Th thu t trong thi t k CSDL logicủ ậ ế ế Thu c tínhộ Không t o thêm nh ng thu c tính không c n thi t. M t thu c tính ph i đáp ng baạ ữ ộ ầ ế ộ ộ ả ứ m c đích:ụ  Nh n d ng th c th ch ậ ạ ự ể ủ  Rút ra th c th khácự ể  D n gi n hóa mô t c a m t th c thơ ả ả ủ ộ ự ể 82 SALES (bán hàng) Thu c tính c a m t b ngộ ủ ộ ả N u các th c th có chung nhi u thu c tính, ti n hành h p nh t các th c th . L uế ự ể ề ộ ế ợ ấ ự ể ư ý r ng m c tiêu chính khi thi t k CSDL là t i thi u s l ng b ng v i t i thi uằ ụ ế ế ố ể ố ượ ả ớ ố ể s l ng thu c tính.ố ượ ộ H p nh t th c th có thu c tính chungợ ấ ự ể ộ Khóa M t H Qu n tr CSDL quan h s d ng đ nh ch k t h p, nh n d ng và xác đ nhộ ệ ả ị ệ ử ụ ị ỉ ế ợ ậ ạ ị v trí các hàng b ng giá tr . Đ a ch v t lý là vô hình đ i v i ng i s d ng. Vì th ,ị ằ ị ị ỉ ậ ố ớ ườ ử ụ ế h th ng quan h yêu c u các khóa ph i nh n d ng duy nh t đ c các hàng trongệ ố ệ ầ ả ậ ạ ấ ượ b ng.ả Có nhi u lo i khóa khác nhau:ề ạ  Khóa chính  Khóa phụ  Khóa ch nọ  Khóa thay đ iổ  Khóa ph c h pứ ợ 83 B t c thu c tính nào (hay t p h p thu c tính) xác đ nh duy nh t m t hàng trongấ ứ ộ ậ ợ ộ ị ấ ộ b ng là m t l a ch n cho khóa chính c a b ng. Thu c tính nh v y g i là ả ộ ự ọ ủ ả ộ ư ậ ọ khóa ch n. ọ m t trong nh ng khóa ch n đ c dùng làm khóa chính, d a vào m c đ phộ ữ ọ ượ ự ứ ộ ổ bi n, m c đ s d ng. Thu c tính nào là l a ch n cho khóa chính nh ng khôngế ứ ộ ử ụ ộ ự ọ ư tr thành khóa chính đ c g i là ở ượ ọ khóa thay đ iổ . Khi khóa xác đ nh duy nh t cácị ấ hàng trong b ng đ c t o nên b i nhi u thu c tính g i là ả ượ ạ ở ề ộ ọ khóa ph c h pứ ợ . Khóa ph luôn luôn bi u di n quan h .ụ ể ễ ệ C n ph i hi u r ng khóa chính là cách duy nh t đ xác đ nh các hàng trong b ng.ầ ả ể ằ ấ ể ị ả Vì v y, giá tr NULL không đ c phép làm khóa chính. N u làm nh v y, s r tậ ị ượ ế ư ậ ẽ ấ khó đ xác đ nh đ c duy nh t các hàng.ể ị ượ ấ Quan sát b ng VEHICLE (ph ng ti n giao thông) sau:ả ươ ệ Khóa ch n, khóa chính và khóa thay đ iọ ổ Trong b ng trên, ả ENGINE# và REGN# là duy nh t m i b d li u. Vì th ,ấ ở ỗ ộ ữ ệ ế chúng đ u là khóa ch n. N u ề ọ ế ENGINE# đ c ch n là khóa chính, ượ ọ REGN# s làẽ khóa thay đ i.ổ Khóa có th đ n gi n ho c ph c h p. Khóa đ n gi n t o nên b i 1 thu c tính.ể ơ ả ặ ứ ợ ơ ả ạ ở ộ Khóa ph c h p, ng c l i, g m hai ho c nhi u thu c tính.ứ ợ ượ ạ ồ ặ ề ộ Quan sát b ng ả Accounts (tài kho n)ả Trong ví d trên, n u ch có m t giao d ch đ c ti n hành đ i v i m t tài kho nụ ế ỉ ộ ị ượ ế ố ớ ộ ả t i m t th i đi m. chúng ta có th chon AccountNumber (s tài kho n),ạ ộ ờ ể ể ố ả TransactionDate (ngày giao d ch), TransactionTime (gi giao d ch) làm khóa ph cị ờ ị ứ h p.ợ 84 Th c thự ể M t s thu c tính đòi h i thu c tính nâng cao đ xác đ nh tính ch t trong quá trìnhộ ố ộ ỏ ộ ể ị ấ thi t k CSDL và tr thành th c th . Chúng ta có th t o th c th m i đ bi uế ế ở ự ể ể ạ ự ể ớ ể ể di n các nhóm thu c tính l p l i nhi u l n. Ví d , thu c tính “ address” (đ a ch )ễ ộ ặ ạ ề ầ ụ ộ ị ỉ có th l y các thu c tính nâng cao nh “block” (khu nhà), “street” (đ ng), “city”ể ấ ộ ư ườ (thành ph ), “state” (bang) và “pin” (mã s cá nhân). Trong tr ng h p này, thu cố ố ườ ợ ộ tính “address” tr thành th c th nh trong ví d d i đây:ở ự ể ư ụ ướ Thu c tính có th tr thành th c thộ ể ở ự ể Th c th conự ể Xem ví d sau. Th c th PLANT (phân x ng) có các thu c tính th hi n trongụ ự ể ưở ộ ể ệ l c đ sau. Tuy nhiên, m t vài thu c tính không áp d ng đ c cho t t c cácượ ồ ộ ộ ụ ượ ấ ả phân x ng. Ví d , thu c tính “pressure” (áp su t) ch áp d ng cho phân x ngưở ụ ộ ấ ỉ ụ ưở h i n c. trong tr ng h p này, t t c các phân x ng không s d ng h i n cơ ướ ườ ợ ấ ả ưở ử ụ ơ ướ có giá tr NULL trong c t “pressure”. M t cách hi u qu là thay th thu c tínhị ộ ộ ệ ả ế ộ b ng th c th con. Đây là ph ng th c ằ ự ể ươ ứ chuyên bi t hóaệ . Chuyên bi t hóa là k t qu c a vi c l y t p con c a m t th c th b c cao h n đệ ế ả ủ ệ ấ ậ ủ ộ ự ể ậ ơ ể t o thành t p th c th b c th p h n. Trong ví d này, PLANT là t p th c th b cạ ậ ự ể ậ ấ ơ ụ ậ ự ể ậ cao h n, trong khi HYDRO (khí Hydro), STEAM (h i n c) và NUCLEAR (h tơ ơ ướ ạ nhân) là các t p th c th b c th p h n.ậ ự ể ậ ấ ơ 85 Chuyên bi t hóaệ Quan sát s đ i l p c a ví d trên. Hai th c th , SAVING – ACCOUNT (tài kho nự ố ậ ủ ụ ự ể ả ti t ki m) và CURRENT – ACCOUNT (tài kho n vãng lai), có nh ng thu c tínhế ệ ả ữ ộ chung. Trong tr ng h p này, l a ch n t t h n là t o m t th c th cha đ đ nườ ợ ự ọ ố ơ ạ ộ ự ể ể ơ gi n hóa đa quy chi u. Đi u đó g i là ả ế ề ọ t ng quát hóaổ . T ng quát hóa là k t qu c a vi c dùng t h

Các file đính kèm theo tài liệu này:

  • pdfThietkeCosodulieuquanhetailieuhuongdan.pdf