Microsoft Access 2000 Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu

Ch         ng I:

                   T NG QUAN V C                   S     D      LI U
1.1. Khái ni m v c         s d     li u
1.1.1. M           u
           s d li u là t p h p d li u         c s p x p theo m t vài c tính logic nào
  ó,      c t ch c có c u trúc,      c l u tr trên nh ng d li u l u tr thông tin m t
cách ng th i và có ch n l c cho nhi u ng i dùng khác nhau và cho nhi u m c
  ích s d ng khác nhau. Các lo i c s d li u           n hình là m t danh b       n tho i,
       n bách khoa, các t p h s , danh sách chuy n th qua b u           n.
      Các c s d li u v th ng m i th ng mang các thông tin v nhân viên,
     ng b ng c a nhân viên, danh sách khách hàng, a ch , s th tín d ng, s tài
kho n và các thông tin v s n ph m. M t c s d li u               c s d ng trong tr ng
    ih c     ghi danh sách a ch c a nhân viên, công tác các l p h c và các thông
tin v gi ng d y. M t c quan b t          ng s n l u gi các n i dung thông tin v b t
    ng s n nh quy ho ch nhà c a, giá bán và các chi ti t khác v nhà.
          tv n     quan tr ng trong công tác tin h c hóa khâu qu n lý là chúng ta ph i
bi t cách thi t k và t ch c c s d li u (CSDL). V y c s d li u là gì ? Cách
ho t ng c a chúng ra sao? Ta ph i dùng công c gì             khai thác thông tin trên c
     d li u ? ... Nh ng ví d sau ây s giúp b n ph n nào hi u v v n            ó.
       a. Ví d 1:
          t Công Ty mu n th c hi n vi c qu n lý hóa         n khách hàng. Công ty ã
phân tích và thi t k c s d li u cho khâu qu n lý này, k t qu g m các thông tin
sau:
       - Danh m c khách hàng bao g m các thông tin: Mã khách hàng (MAKH), H
         và tên khách hàng (TENKH), a ch khách hàng (DIACHIKH),              n v khách
         hàng (DONVIKH).
       - Danh m c kho bao g m các thông tin: Mã kho (MAKHO), tên kho (Tenkho),
           a ch kho (DIACHIKHO).
       - Danh m c hóa          n bao g m các thông tin: S hóa            n khách hàng
         (SOHD), Ngày nh p xu t hóa        n (NGAYHD), lo i hóa      n là nh p hay xu t
         (LOAIHD), mã khách hàng (MAKH), mã kho (MAKHO), tr giá hóa                     n
         (TRIGIA)
               Công ty c n qu n lý trên m i s hóa         n nh ng thông tin v khách
           hàng, kho hàng, lo i hóa n, tr giá hóa n.
       b. Ví d 2:
               Xét ho t     ng qu n lý h s và tính l ng cho nhân viên trong m t
        công ty, ng i ta c n các thông tin sau:
       -       s Nhân Viên ta c n bao g m các thông tin: H tên nhân viên, phái,
            ngày tháng n m sinh, mã n v ,mã ch c v , mã b c.
       -    Danh m c ch c v bao g m các thông tin: Mã ch c v , tên ch c v .
       -    Danh m c     n v bao g m các thông tin: Mã       n v , tên   n v.
       -    Danh m c h s bao g m các thông tin: Mã ng ch, mã b c, h s l              ng,
            di n gi i v h s l ng.

DÞch vô Tin häc TÊn Ph-íc                                                    Trang     1
Microsoft Access 2000 Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu

        c. Ví d 3:
       Xét các ho t ng mua bán c a m t công ty th ng nghi p. Các thông tin c n
ch a g m có:
       - Danh sách các m t hàng.
       - Danh sách các c a hàng.
       - Danh sách các nhân viên t ng c a hàng.
       - Danh sách các i lý.
       - Danh sách các nhà cung c p.
       - V.v....
       Nhân viên c a hàng ch theo dõi các thông tin v các m t hàng (mã hàng, tên
hàng,      n v tính,...) mà không c n ph i bi t ai là nhà cung c p các m t hàng cho
công ty c a h .
        d. Ví d 4:
        Xét các các ho t      ng ào t o trong m t tr ng      i h c. Các thông tin c n
ch a g m có:
       - Danh sách các b môn trong tr ng.
       - H s lý l ch c a t ng sinh viên.
       - H s lý l ch c a cán b gi ng d y (CBGD) và công vi c c a h (bao g m các
    môn liên quan và các môn h có gi ng d y).
       - Danh sách các môn h c ng v i t ng môn
       - Quá trình h c t p và k t qu   t     c c a t ng sinh viên.
       - V.v...
       Trong công tác qu n lý ng i ta th ng chia ra nhi u phòng ban ch ng h n
nh phòng tài v , phòng t ch c, phòng ào t o... M i m t phòng ban có nhi m v
riêng và không c n ph i quan tâm gì n các phòng ban khác. Ví d : phòng t ch c
qu n lý h s lý l ch c a CBGD mà không quan tâm n h s lý l ch c a sinh viên;
còn phòng ào t o l i theo dõi quá trình h c t p c a sinh viên mà không c n bi t chi
ti t công vi c c a CBGD.
        1.1.2. Thu t ng :
          u dùng t “xí nghi p” (enterprise) nh là m t thu t ng chung            ch
   i x y ra nh ng ho t     ng th ng m i, ho c khoa h c, k thu t, ho c các ho t
  ng khác có qui mô      l n, và gi s xí nghi p này      c tin h c hóa, ta có nh n
xét nh sau:
              Các thông tin     c ch a trên các b nh ngoài nh m t kho d li u.
Kho này không quan tâm n d li u vào và d li u ra mà ch g m các d li u liên
quan ho t ng c a xí nghi p.
              Chúng ta      c m t b ch ng trình ng d ng truy xu t.
                m i l nh v c c a xí nghi p có m t nhóm ng i dùng m t ph n nh
  a kho d li u nói trên mà không quan tâm n c u trúc bên trong. H c ng không
chú ý n các d li u khác có trong kho không liên quan n ho t ng c a mình.
Ngh a là m i ng i s d ng ch          c nhìn vào kho d li u nh qua m t cái khung
và h c m t ng nh kho d li u ch dành cho h mà thôi.
        1.1.3.   nh ngh a c     s d     li u:
           s d li u (Database) là m t t p h p các d li u có c u trúc    c ghi trên
   nh    ngoài c a máy tính v các i t ng và các ho t        ng trong th gi i th c

DÞch vô Tin häc TÊn Ph-íc                                                Trang     2
Microsoft Access 2000 Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu

  a m t xí nghi p (nói chung) và      c các h     ng d ng c a xí nghi p này s d ng
   t cách có ch n l c và úng lúc.
1.2. H qu n tr CSDL (Database Management System – DBMS):
       Trong m t h th ng t ch c, CSDL           c thi t k ch t ch thì làm th nào ta
có th khai thác      c d li u trong h th ng CSDL ó?         làm     c    u ó ta ph i
thông qua m t h qu n tr CSDL (DBMS). Hi n nay có r t nhi u DBMS                c s
   ng nh FOXPRO FOR DOS, ORACLE, MICROSOFT VISUAL FOXPRO,
Microsoft Access,... Vi c ch n h c s d li u nào trong công tác qu n lý là tùy
thu c vào nhi u y u t khác nhau. Tài li u này s d ng DBMS Microsoft Access
2000 trong vi c t ch c, l u tr , qu n lý và khai thác c s d li u.
1.3.    n ch c a cách qu n lý d             li u c     i n (t p tin d      li u không
   u trúc)
- D x y ra tình tr ng d li u b trùng l p, phân tán, thi u nh t quán:
          + D th a và lãng phí: Trong ph n l n các h th ng không t ch c d li u
thành CSDL, m i l nh v c ng d ng trong cùng m t xí nghi p l i có nh ng t p tin
d li u riêng v cùng m t thông tin.            u ó d n n s d th a áng k v d li u
   u tr và k t qu c a nó là s lãng phí b nh .
          Ví d : trong tr ng       i h c, k t qu h c t p c a sinh viên       c l u phòng
  ào t o, ng th i c ng            c l u phòng tài v         c n c vào ó mà xét i m rèn
luy n và phát h c b ng cho sinh viên.
          + D li u không        ng b : Th ng x y ra tr ng h p nhi u ng i cùng thao
tác trên cùng m t thông tin v m t i t ng c a th gi i th c. N u i t ng này l i
       c miêu t thành hai m c riêng bi t thì khi có s thay i, 2 m c này th ng b
    p nh t không ng th i ho c m t m c b quên không c p nh t. Khi ó s x y ra s
không nh t quán trong miêu t thông tin c a xí nghi p.
          Ví d :
                1. K t qu h c t p c a m t sinh viên ã b gi m sút, do ó em này áng
                    lý không còn       c nh n h c b ng n a. Nh ng phòng tài v không
                       p nh t k p th i thông tin trên, nên v n ti p t c phát h c b ng cho
                    em.
                2. Cùng ti t h c l i có hai giáo viên có l ch gi ng d y
- Ch ng trình ng d ng làm ch nh ng cách t ch c s li u nên b ph thu c d
li u. H n n a, phí t n        vi t và b o trì ch ng trình cao.
- S l ng d li u t ng nhanh.
- S chia s d li u b h n ch .
- Các m i liên h gi a nh ng thông tin không             c chú tr ng.
1.4. u         m c a CSDL:
          a. Có th gi m b t s d th a d li u l u tr :
          Khi có 2 h      ng d ng khác nhau th c ch t cùng òi h i nh ng t p d li u
nh nhau, ng i qu n tr (database manager) s h p nh t 2 t p này l i, ch l u tr
     t l n và dùng chung cho c hai h nói trên.
          b. Có th tránh        c s không nh t quán trong d li u l u tr .
              qu n tr c s d li u s cho cách b o v ch ng l i tính không nh t quán
nh v a nói.
          c. D li u l u tr có th           c dùng chung.
         Trong CSDL, các t p tin d li u          cl ul i      có th      c dùng chung cho
   t c ng d ng, cho c ch ng trình ng d ng m i.
DÞch vô Tin häc TÊn Ph-íc                                                    Trang     3
Microsoft Access 2000 Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu

        d. Có th     mb o          c s tuân th các tiêu chu n th ng nh t.
        CSDL giúp      m b o các nguyên t c v           m b o d li u c a h th ng ban
ngành c a xí nghi p (Ví d : các báo bi u trong ngành tài chính hay ngân hàng) hay
   a trung tâm tính toán. Nh v y, vi c b o trì và trao i d li u gi a các n i liên
quan s d dàng.
        e. Có th áp d ng          c các bi n pháp an toàn d li u.
        Không ph i ng i s d ng nào c ng             c truy xu t n toàn b d li u.
        Ng i qu n tr có th :
        - Ch cho phép m t s ng i nào ó               c quy n truy xu t t i m t s t p tin
nào ó thôi b ng m t m t mã ã             c ng i qu n tr nh tr c.
        - Ki m tra các ý     truy xu t n d li u m t.
        f. Có th gi         c s toàn v n d li u.
        CSDL ch         c ch a các d li u úng. Nh s qu n lý t p trung, nó cho
phép ng i qu n tr nh ra các th t c ki m tra c n thi t khi th c hi n các thao tác
   p nh t.
            ki m tra nh t là các tính ch t v giá tr (ví d : s l ng hàng bán không
th v t quá s l ng hàng ang t n). Khó ki m tra h n khi               c p n các yêu c u
mang tính c u trúc, ch ng h n không th gán hai chi c máy bay cho cùng m t
chuy n bay.
        g. Có th cân b ng          c các yêu c u      i l p nhau:
        Nh bi t       c t t c các yêu c u c a toàn b xí nghi p, ng i qu n tr có th
thi t k CSDL theo cách th c làm cho m i ng i u c m th y th a mãn.
        h. Ý ngh a c a t ng liên h gi a các lo i d li u            c n i b t.
        i. Có th    mb o          c tính    c l p cao.
1.5. Khái ni m v CSDL quan h (Relational Database)
      Ngu n g c c a mô hình c s d li u quan h           u tiên là do ti n s E.F. Codd
thi t k ã       c công b r ng rãi trên các t p chí tháng 07/1970 v i bài “Mô hình d
li u quan h cho các ngân hàng d li u l n”. Theo mô hình này, các d li u s           c
   u vào máy tính d i d ng các b ng 2 chi u g i là các quan h và gi a các b ng
    có m i liên h      c nh ngh a nh m ph n ánh m i liên k t th t s c a các i
    ng d li u bên ngoài th gi i th c. Trong mô hình này có m t s các khái ni m
    b n sau:
1.5.1. Các thành ph n c a C           s d      li u quan h :
A. Ngôn ng mô t d li u ( Data definition Language – DDL) g m:
      Mô t c u trúc c a c s d li u
      Mô t các liên h c a d li u, các lo i ràng bu c.
B. Ngôn ng s d ng d li u (Data Manipulation Language – DML) có c tính
nh ngôn ng l p trình dùng :
      Truy xu t d li u.
      C p nh t d li u.
      Khai thác d li u.
C.T     n d li u ( Data dictionary – DD): là n i t p trung l u tr v :
      Thành ph n c u trúc c a c s d li u (th c th , thu c tính, m i liên h …)
      Ch ng trình.
      Mã b o m t, th m quy n s d ng.

DÞch vô Tin häc TÊn Ph-íc                                                   Trang     4
Microsoft Access 2000 Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu




1.5.2. Khái ni m th c th :
   1. Th c th (entity) hay i t ng (object): là khái ni m       ch m t v t c th
      hay tr u t ng trong th gi i th c. Ta có th phân bi t th c th này hay th c
      th khác.
   Ví d :
          - Anh Nguy n V n A là th c th .
          - Nhân viên là m t th c th
   2. Thu c tính ( attribute): là các tính ch t c a th c th .
   Ví d : Nhân viên (Mã s , H tên, Phòng, N m sinh, a ch , M c l ng) trong ó
   Mã s , H tên, Phòng, N m sinh, a ch , M c l ng là thu c tính (tính ch t) c a
   th c th nhân viên
   3. Th c th có thu c tính chung:Thành l p t p các th c th ho c t p các i
          ng mà các thu c tính luôn ph i có.
   Ví d : T p th c th ng i có các thu c tính chung h tên, n m sinh.
           T p th c th xe máy có các thu c tính chung: s s n, s máy, hi u.




          i th c th       c xác nh b ng m t b ng, m i thu c tính c a th c th       c
xác   nh b ng m t c t c a b ng.
     - B ng (Table) hay quan h : G m có nhi u dòng và nhi u c t. Trong m t
  ng ph i có ít nh t là m t c t.
     - C t (Column) hay tr ng (Field): N m trong b ng. Trong m t b ng thì
không có hai c t trùng tên nhau. Trên m t c t ch l u m t lo i d li u. Th t tr c
sau gi a các c t trong b ng là không quan tr ng. Các thu c tính c s c a m t
tr ng là: Tên tr ng (Field name), ki u d li u (Data Type),      r ng (Field Size):
     Thí d : Ta có m t b ng l u tr thông tin v các môn h c:
            Mã môn h c              Tên môn h c          tín ch
               HH001         Hóa h c i c ng A1            3
               VL002            t lý i c ng A2            4
               TH001              s d li u                5
     Trong b ng này có 3 c t: Mã môn h c, Tên môn h c và c t S tín ch (1 tín ch
   ng       ng v i 15 ti t chu n)

DÞch vô Tin häc TÊn Ph-íc                                               Trang     5
Microsoft Access 2000 Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu


     Các thu c tính c s c a các c t này:
             t            Tên c t            Ki u d li u              r ng
      Mã môn h c     MA_MON_HOC                  Chu i                4
      Tên môn h c    TEN_MON_HOC                 Chu i               40
          tín ch        SO_TIN_CHI                 Number             Integer
      - Dòng (Row):        m ngang trong b ng. Trong m t b ng thì không có 2 dòng
trùng l p nhau v thông tin l u tr . Th t tr c sau gi a các dòng trong b ng là
không quan tr ng.
      - Khóa chính (Primary Key): Là m t ho c nhi u tr ng trong b ng mà d li u
   a các c t này b t bu c ph i có (không        c   tr ng) và ng th i ph i duy nh t
không       c phép trùng l p (tính duy nh t c a d li u). H n n a giá tr c a khóa
chính xác nh duy nh t c a các tr ng khác trong cùng m t dòng.
      - Khóa ngo i (Foreign Key): Là m t ho c nhi u tr ng trong cùng m t b ng
mà các tr ng này là khóa chính c a m t b ng khác. Do ó d li u t i các c t này
   t bu c ph i t n t i trong m t b ng khác (Tính t n t i c a d li u)
      Thí d :     l u tr và qu n lý thông tin c a các sinh viên, ta t ch c các b ng
   n gi n sau:
      + B ng môn h c: L u tr các thông tin v môn h c.
      + B ng sinh viên: L u tr thông tin c a các sinh viên (Mã s sinh viên, h tên,
ngày sinh,...).
      + B ng k t qu thi: L u tr      m thi c a t ng môn h c cho các sinh viên:




     Trong ó:
     - B ng Môn h c có c t Mã môn h c là khóa chính. Thông th ng trong mô hình
quan h      vi t g n chúng ta có th vi t b ng theo cú pháp sau:
     Mônh c(Mã môn h c,Tên môn h c,S tín ch )
     Các c t g ch d i trong b ng chính là khóa chính c a b ng.     th hi n ph
thu c hàm trong b ng Môn h c chúng ta có th vi t:
     Mã môn h c (Tên môn h c)
     Mã môn h c (S tín ch )
        ng sinh viên có c t mã s là khóa chính khi ó s th hi n:

DÞch vô Tin häc TÊn Ph-íc                                                 Trang   6
Microsoft Access 2000 Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu

     Sinh viên (Mã s , H tên, Phái, Ngày sinh,....)
     Mã s ( H tên, ngày sinh, Phái,... )
        ng k t qu thi có c t Mã s , Mã môn h c (hai c t) là khóa chính
        t qu (Mã s , Mã môn h c,       m)
     Trong b ng k t qu thi có c t Mã s là khóa ngo i và c t mã môn h c c ng là
khóa ngo i. Chúng ta có th th y r ng trong b ng k t qu thi t i c t Mã sinh viên ch
cho phép ch a các mã sinh viên có trong b ng sinh viên và c t Mã môn h c ch cho
phép ch a các Mã môn h c có trong b ng Môn h c,          u này hi n nhiên vì chúng ta
ch l u tr      m c a các sinh viên có th t s t n t i trong b ng sinh viên hay không
và môn h c ph i có trong b ng môn h c.
     Trong thí d trên, ta th y mã sinh viên trong b ng k t qu thi là (1000001) ph i
thu c trong t p h p các sinh viên trong b ng sinh viên (1000001, 1000002,
100003,...). Thông th ng s d ng ký hi u (       mô t m t ph thu c hàm t n t i.
     Thí d : b ng k t qu thi t n t i hai ph thu c hàm:
        t qu thi[Mã s ] (Sinh viên [Mã s ]
        t qu thi[Mã môn h c] (Môn h c [Mã môn h c]
1.5.3. Bài t p v C      s d      li u:
        t c a hàng bán s mu n xây d ng m t h th ng   qu n lý vi c bán hàng
  ng nh vi c cung ng hàng t các hãng cung ng. Qua tìm hi u c a hàng      c
  ch c nh sau:
          a hàng chia làm nhi u khu v c, m i khu v c bán m t lo i hàng nh t nh.
   i khu v c có m t ng i qu n lý và nhi u nhân viên làm vi c qu n lý cho khu v c
 ó. M i ng i qu n lý ch qu n lý m t khu v c, m t nhân viên ch làm vi c cho khu
  c duy nh t. Các thông tin c n l u tr v khu v c và nhân viên g m:M i khu v c
có Mã khu v c và tên.
         i nhân viên có Mã NV, h tên, m c l     ng và ngày vào làm vi c
         i m t hàng    c bán c a hàng thì do nhi u nhà cung c p, m i nhà cung
  p có th cung ng nhi u m t hàng. C a hàng ch c n theo dõi nhà cung ng nào
cung ng m t hàng gì v i giá bao nhiêu. Thông tin l u tr v nhà cung ng và m t
hàng bao g m:M t hàng có Mã s MH, tên m t hàng,       n v tính. Cung ng: Mã s ,
tên nhà cung ng, tên qu n lý (giám c), a ch ,     n tho i, fax.
      i khách hàng mu n mua hàng thì ph i l p m t n t hàng. M i n t hàng
có s c     nh     c in s n trên m u   n. M t   n t hàng có th mua nhi u m t
hàng. Thông tin v khách hàng và     n t hàng bao g m:Khách hàng (KH): Mã s ,
tên KH, a ch ,     n tho i, fax.  n  t hàng ( H): Ngày t, các m t hàng, t
mua, s l ng và      n giá.
     Yêu c u:
     1. Tìm các th hi n (th c th ) c a bài toán trên.
     2. Xây d ng mô hình k t h p cho bài toán.
     3. Chuy n mô hình k t h p sang mô hình quan h :




DÞch vô Tin häc TÊn Ph-íc                                                 Trang    7
Microsoft Access 2000 Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu

1. Các th c th trong quan h :




2. Xây d ng mô hình m i k t h p cho bài toán:




3. Chuy n mô hình k t h p sang mô hình quan h :




DÞch vô Tin häc TÊn Ph-íc                         Trang   8
Microsoft Access 2000 Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu




DÞch vô Tin häc TÊn Ph-íc                         Trang   9

Chuong 01 database

  • 1.
    Microsoft Access 2000Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu Ch ng I: T NG QUAN V C S D LI U 1.1. Khái ni m v c s d li u 1.1.1. M u s d li u là t p h p d li u c s p x p theo m t vài c tính logic nào ó, c t ch c có c u trúc, c l u tr trên nh ng d li u l u tr thông tin m t cách ng th i và có ch n l c cho nhi u ng i dùng khác nhau và cho nhi u m c ích s d ng khác nhau. Các lo i c s d li u n hình là m t danh b n tho i, n bách khoa, các t p h s , danh sách chuy n th qua b u n. Các c s d li u v th ng m i th ng mang các thông tin v nhân viên, ng b ng c a nhân viên, danh sách khách hàng, a ch , s th tín d ng, s tài kho n và các thông tin v s n ph m. M t c s d li u c s d ng trong tr ng ih c ghi danh sách a ch c a nhân viên, công tác các l p h c và các thông tin v gi ng d y. M t c quan b t ng s n l u gi các n i dung thông tin v b t ng s n nh quy ho ch nhà c a, giá bán và các chi ti t khác v nhà. tv n quan tr ng trong công tác tin h c hóa khâu qu n lý là chúng ta ph i bi t cách thi t k và t ch c c s d li u (CSDL). V y c s d li u là gì ? Cách ho t ng c a chúng ra sao? Ta ph i dùng công c gì khai thác thông tin trên c d li u ? ... Nh ng ví d sau ây s giúp b n ph n nào hi u v v n ó. a. Ví d 1: t Công Ty mu n th c hi n vi c qu n lý hóa n khách hàng. Công ty ã phân tích và thi t k c s d li u cho khâu qu n lý này, k t qu g m các thông tin sau: - Danh m c khách hàng bao g m các thông tin: Mã khách hàng (MAKH), H và tên khách hàng (TENKH), a ch khách hàng (DIACHIKH), n v khách hàng (DONVIKH). - Danh m c kho bao g m các thông tin: Mã kho (MAKHO), tên kho (Tenkho), a ch kho (DIACHIKHO). - Danh m c hóa n bao g m các thông tin: S hóa n khách hàng (SOHD), Ngày nh p xu t hóa n (NGAYHD), lo i hóa n là nh p hay xu t (LOAIHD), mã khách hàng (MAKH), mã kho (MAKHO), tr giá hóa n (TRIGIA) Công ty c n qu n lý trên m i s hóa n nh ng thông tin v khách hàng, kho hàng, lo i hóa n, tr giá hóa n. b. Ví d 2: Xét ho t ng qu n lý h s và tính l ng cho nhân viên trong m t công ty, ng i ta c n các thông tin sau: - s Nhân Viên ta c n bao g m các thông tin: H tên nhân viên, phái, ngày tháng n m sinh, mã n v ,mã ch c v , mã b c. - Danh m c ch c v bao g m các thông tin: Mã ch c v , tên ch c v . - Danh m c n v bao g m các thông tin: Mã n v , tên n v. - Danh m c h s bao g m các thông tin: Mã ng ch, mã b c, h s l ng, di n gi i v h s l ng. DÞch vô Tin häc TÊn Ph-íc Trang 1
  • 2.
    Microsoft Access 2000Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu c. Ví d 3: Xét các ho t ng mua bán c a m t công ty th ng nghi p. Các thông tin c n ch a g m có: - Danh sách các m t hàng. - Danh sách các c a hàng. - Danh sách các nhân viên t ng c a hàng. - Danh sách các i lý. - Danh sách các nhà cung c p. - V.v.... Nhân viên c a hàng ch theo dõi các thông tin v các m t hàng (mã hàng, tên hàng, n v tính,...) mà không c n ph i bi t ai là nhà cung c p các m t hàng cho công ty c a h . d. Ví d 4: Xét các các ho t ng ào t o trong m t tr ng i h c. Các thông tin c n ch a g m có: - Danh sách các b môn trong tr ng. - H s lý l ch c a t ng sinh viên. - H s lý l ch c a cán b gi ng d y (CBGD) và công vi c c a h (bao g m các môn liên quan và các môn h có gi ng d y). - Danh sách các môn h c ng v i t ng môn - Quá trình h c t p và k t qu t c c a t ng sinh viên. - V.v... Trong công tác qu n lý ng i ta th ng chia ra nhi u phòng ban ch ng h n nh phòng tài v , phòng t ch c, phòng ào t o... M i m t phòng ban có nhi m v riêng và không c n ph i quan tâm gì n các phòng ban khác. Ví d : phòng t ch c qu n lý h s lý l ch c a CBGD mà không quan tâm n h s lý l ch c a sinh viên; còn phòng ào t o l i theo dõi quá trình h c t p c a sinh viên mà không c n bi t chi ti t công vi c c a CBGD. 1.1.2. Thu t ng : u dùng t “xí nghi p” (enterprise) nh là m t thu t ng chung ch i x y ra nh ng ho t ng th ng m i, ho c khoa h c, k thu t, ho c các ho t ng khác có qui mô l n, và gi s xí nghi p này c tin h c hóa, ta có nh n xét nh sau: Các thông tin c ch a trên các b nh ngoài nh m t kho d li u. Kho này không quan tâm n d li u vào và d li u ra mà ch g m các d li u liên quan ho t ng c a xí nghi p. Chúng ta c m t b ch ng trình ng d ng truy xu t. m i l nh v c c a xí nghi p có m t nhóm ng i dùng m t ph n nh a kho d li u nói trên mà không quan tâm n c u trúc bên trong. H c ng không chú ý n các d li u khác có trong kho không liên quan n ho t ng c a mình. Ngh a là m i ng i s d ng ch c nhìn vào kho d li u nh qua m t cái khung và h c m t ng nh kho d li u ch dành cho h mà thôi. 1.1.3. nh ngh a c s d li u: s d li u (Database) là m t t p h p các d li u có c u trúc c ghi trên nh ngoài c a máy tính v các i t ng và các ho t ng trong th gi i th c DÞch vô Tin häc TÊn Ph-íc Trang 2
  • 3.
    Microsoft Access 2000Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu a m t xí nghi p (nói chung) và c các h ng d ng c a xí nghi p này s d ng t cách có ch n l c và úng lúc. 1.2. H qu n tr CSDL (Database Management System – DBMS): Trong m t h th ng t ch c, CSDL c thi t k ch t ch thì làm th nào ta có th khai thác c d li u trong h th ng CSDL ó? làm c u ó ta ph i thông qua m t h qu n tr CSDL (DBMS). Hi n nay có r t nhi u DBMS c s ng nh FOXPRO FOR DOS, ORACLE, MICROSOFT VISUAL FOXPRO, Microsoft Access,... Vi c ch n h c s d li u nào trong công tác qu n lý là tùy thu c vào nhi u y u t khác nhau. Tài li u này s d ng DBMS Microsoft Access 2000 trong vi c t ch c, l u tr , qu n lý và khai thác c s d li u. 1.3. n ch c a cách qu n lý d li u c i n (t p tin d li u không u trúc) - D x y ra tình tr ng d li u b trùng l p, phân tán, thi u nh t quán: + D th a và lãng phí: Trong ph n l n các h th ng không t ch c d li u thành CSDL, m i l nh v c ng d ng trong cùng m t xí nghi p l i có nh ng t p tin d li u riêng v cùng m t thông tin. u ó d n n s d th a áng k v d li u u tr và k t qu c a nó là s lãng phí b nh . Ví d : trong tr ng i h c, k t qu h c t p c a sinh viên c l u phòng ào t o, ng th i c ng c l u phòng tài v c n c vào ó mà xét i m rèn luy n và phát h c b ng cho sinh viên. + D li u không ng b : Th ng x y ra tr ng h p nhi u ng i cùng thao tác trên cùng m t thông tin v m t i t ng c a th gi i th c. N u i t ng này l i c miêu t thành hai m c riêng bi t thì khi có s thay i, 2 m c này th ng b p nh t không ng th i ho c m t m c b quên không c p nh t. Khi ó s x y ra s không nh t quán trong miêu t thông tin c a xí nghi p. Ví d : 1. K t qu h c t p c a m t sinh viên ã b gi m sút, do ó em này áng lý không còn c nh n h c b ng n a. Nh ng phòng tài v không p nh t k p th i thông tin trên, nên v n ti p t c phát h c b ng cho em. 2. Cùng ti t h c l i có hai giáo viên có l ch gi ng d y - Ch ng trình ng d ng làm ch nh ng cách t ch c s li u nên b ph thu c d li u. H n n a, phí t n vi t và b o trì ch ng trình cao. - S l ng d li u t ng nhanh. - S chia s d li u b h n ch . - Các m i liên h gi a nh ng thông tin không c chú tr ng. 1.4. u m c a CSDL: a. Có th gi m b t s d th a d li u l u tr : Khi có 2 h ng d ng khác nhau th c ch t cùng òi h i nh ng t p d li u nh nhau, ng i qu n tr (database manager) s h p nh t 2 t p này l i, ch l u tr t l n và dùng chung cho c hai h nói trên. b. Có th tránh c s không nh t quán trong d li u l u tr . qu n tr c s d li u s cho cách b o v ch ng l i tính không nh t quán nh v a nói. c. D li u l u tr có th c dùng chung. Trong CSDL, các t p tin d li u cl ul i có th c dùng chung cho t c ng d ng, cho c ch ng trình ng d ng m i. DÞch vô Tin häc TÊn Ph-íc Trang 3
  • 4.
    Microsoft Access 2000Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu d. Có th mb o c s tuân th các tiêu chu n th ng nh t. CSDL giúp m b o các nguyên t c v m b o d li u c a h th ng ban ngành c a xí nghi p (Ví d : các báo bi u trong ngành tài chính hay ngân hàng) hay a trung tâm tính toán. Nh v y, vi c b o trì và trao i d li u gi a các n i liên quan s d dàng. e. Có th áp d ng c các bi n pháp an toàn d li u. Không ph i ng i s d ng nào c ng c truy xu t n toàn b d li u. Ng i qu n tr có th : - Ch cho phép m t s ng i nào ó c quy n truy xu t t i m t s t p tin nào ó thôi b ng m t m t mã ã c ng i qu n tr nh tr c. - Ki m tra các ý truy xu t n d li u m t. f. Có th gi c s toàn v n d li u. CSDL ch c ch a các d li u úng. Nh s qu n lý t p trung, nó cho phép ng i qu n tr nh ra các th t c ki m tra c n thi t khi th c hi n các thao tác p nh t. ki m tra nh t là các tính ch t v giá tr (ví d : s l ng hàng bán không th v t quá s l ng hàng ang t n). Khó ki m tra h n khi c p n các yêu c u mang tính c u trúc, ch ng h n không th gán hai chi c máy bay cho cùng m t chuy n bay. g. Có th cân b ng c các yêu c u i l p nhau: Nh bi t c t t c các yêu c u c a toàn b xí nghi p, ng i qu n tr có th thi t k CSDL theo cách th c làm cho m i ng i u c m th y th a mãn. h. Ý ngh a c a t ng liên h gi a các lo i d li u c n i b t. i. Có th mb o c tính c l p cao. 1.5. Khái ni m v CSDL quan h (Relational Database) Ngu n g c c a mô hình c s d li u quan h u tiên là do ti n s E.F. Codd thi t k ã c công b r ng rãi trên các t p chí tháng 07/1970 v i bài “Mô hình d li u quan h cho các ngân hàng d li u l n”. Theo mô hình này, các d li u s c u vào máy tính d i d ng các b ng 2 chi u g i là các quan h và gi a các b ng có m i liên h c nh ngh a nh m ph n ánh m i liên k t th t s c a các i ng d li u bên ngoài th gi i th c. Trong mô hình này có m t s các khái ni m b n sau: 1.5.1. Các thành ph n c a C s d li u quan h : A. Ngôn ng mô t d li u ( Data definition Language – DDL) g m: Mô t c u trúc c a c s d li u Mô t các liên h c a d li u, các lo i ràng bu c. B. Ngôn ng s d ng d li u (Data Manipulation Language – DML) có c tính nh ngôn ng l p trình dùng : Truy xu t d li u. C p nh t d li u. Khai thác d li u. C.T n d li u ( Data dictionary – DD): là n i t p trung l u tr v : Thành ph n c u trúc c a c s d li u (th c th , thu c tính, m i liên h …) Ch ng trình. Mã b o m t, th m quy n s d ng. DÞch vô Tin häc TÊn Ph-íc Trang 4
  • 5.
    Microsoft Access 2000Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu 1.5.2. Khái ni m th c th : 1. Th c th (entity) hay i t ng (object): là khái ni m ch m t v t c th hay tr u t ng trong th gi i th c. Ta có th phân bi t th c th này hay th c th khác. Ví d : - Anh Nguy n V n A là th c th . - Nhân viên là m t th c th 2. Thu c tính ( attribute): là các tính ch t c a th c th . Ví d : Nhân viên (Mã s , H tên, Phòng, N m sinh, a ch , M c l ng) trong ó Mã s , H tên, Phòng, N m sinh, a ch , M c l ng là thu c tính (tính ch t) c a th c th nhân viên 3. Th c th có thu c tính chung:Thành l p t p các th c th ho c t p các i ng mà các thu c tính luôn ph i có. Ví d : T p th c th ng i có các thu c tính chung h tên, n m sinh. T p th c th xe máy có các thu c tính chung: s s n, s máy, hi u. i th c th c xác nh b ng m t b ng, m i thu c tính c a th c th c xác nh b ng m t c t c a b ng. - B ng (Table) hay quan h : G m có nhi u dòng và nhi u c t. Trong m t ng ph i có ít nh t là m t c t. - C t (Column) hay tr ng (Field): N m trong b ng. Trong m t b ng thì không có hai c t trùng tên nhau. Trên m t c t ch l u m t lo i d li u. Th t tr c sau gi a các c t trong b ng là không quan tr ng. Các thu c tính c s c a m t tr ng là: Tên tr ng (Field name), ki u d li u (Data Type), r ng (Field Size): Thí d : Ta có m t b ng l u tr thông tin v các môn h c: Mã môn h c Tên môn h c tín ch HH001 Hóa h c i c ng A1 3 VL002 t lý i c ng A2 4 TH001 s d li u 5 Trong b ng này có 3 c t: Mã môn h c, Tên môn h c và c t S tín ch (1 tín ch ng ng v i 15 ti t chu n) DÞch vô Tin häc TÊn Ph-íc Trang 5
  • 6.
    Microsoft Access 2000Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu Các thu c tính c s c a các c t này: t Tên c t Ki u d li u r ng Mã môn h c MA_MON_HOC Chu i 4 Tên môn h c TEN_MON_HOC Chu i 40 tín ch SO_TIN_CHI Number Integer - Dòng (Row): m ngang trong b ng. Trong m t b ng thì không có 2 dòng trùng l p nhau v thông tin l u tr . Th t tr c sau gi a các dòng trong b ng là không quan tr ng. - Khóa chính (Primary Key): Là m t ho c nhi u tr ng trong b ng mà d li u a các c t này b t bu c ph i có (không c tr ng) và ng th i ph i duy nh t không c phép trùng l p (tính duy nh t c a d li u). H n n a giá tr c a khóa chính xác nh duy nh t c a các tr ng khác trong cùng m t dòng. - Khóa ngo i (Foreign Key): Là m t ho c nhi u tr ng trong cùng m t b ng mà các tr ng này là khóa chính c a m t b ng khác. Do ó d li u t i các c t này t bu c ph i t n t i trong m t b ng khác (Tính t n t i c a d li u) Thí d : l u tr và qu n lý thông tin c a các sinh viên, ta t ch c các b ng n gi n sau: + B ng môn h c: L u tr các thông tin v môn h c. + B ng sinh viên: L u tr thông tin c a các sinh viên (Mã s sinh viên, h tên, ngày sinh,...). + B ng k t qu thi: L u tr m thi c a t ng môn h c cho các sinh viên: Trong ó: - B ng Môn h c có c t Mã môn h c là khóa chính. Thông th ng trong mô hình quan h vi t g n chúng ta có th vi t b ng theo cú pháp sau: Mônh c(Mã môn h c,Tên môn h c,S tín ch ) Các c t g ch d i trong b ng chính là khóa chính c a b ng. th hi n ph thu c hàm trong b ng Môn h c chúng ta có th vi t: Mã môn h c (Tên môn h c) Mã môn h c (S tín ch ) ng sinh viên có c t mã s là khóa chính khi ó s th hi n: DÞch vô Tin häc TÊn Ph-íc Trang 6
  • 7.
    Microsoft Access 2000Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu Sinh viên (Mã s , H tên, Phái, Ngày sinh,....) Mã s ( H tên, ngày sinh, Phái,... ) ng k t qu thi có c t Mã s , Mã môn h c (hai c t) là khóa chính t qu (Mã s , Mã môn h c, m) Trong b ng k t qu thi có c t Mã s là khóa ngo i và c t mã môn h c c ng là khóa ngo i. Chúng ta có th th y r ng trong b ng k t qu thi t i c t Mã sinh viên ch cho phép ch a các mã sinh viên có trong b ng sinh viên và c t Mã môn h c ch cho phép ch a các Mã môn h c có trong b ng Môn h c, u này hi n nhiên vì chúng ta ch l u tr m c a các sinh viên có th t s t n t i trong b ng sinh viên hay không và môn h c ph i có trong b ng môn h c. Trong thí d trên, ta th y mã sinh viên trong b ng k t qu thi là (1000001) ph i thu c trong t p h p các sinh viên trong b ng sinh viên (1000001, 1000002, 100003,...). Thông th ng s d ng ký hi u ( mô t m t ph thu c hàm t n t i. Thí d : b ng k t qu thi t n t i hai ph thu c hàm: t qu thi[Mã s ] (Sinh viên [Mã s ] t qu thi[Mã môn h c] (Môn h c [Mã môn h c] 1.5.3. Bài t p v C s d li u: t c a hàng bán s mu n xây d ng m t h th ng qu n lý vi c bán hàng ng nh vi c cung ng hàng t các hãng cung ng. Qua tìm hi u c a hàng c ch c nh sau: a hàng chia làm nhi u khu v c, m i khu v c bán m t lo i hàng nh t nh. i khu v c có m t ng i qu n lý và nhi u nhân viên làm vi c qu n lý cho khu v c ó. M i ng i qu n lý ch qu n lý m t khu v c, m t nhân viên ch làm vi c cho khu c duy nh t. Các thông tin c n l u tr v khu v c và nhân viên g m:M i khu v c có Mã khu v c và tên. i nhân viên có Mã NV, h tên, m c l ng và ngày vào làm vi c i m t hàng c bán c a hàng thì do nhi u nhà cung c p, m i nhà cung p có th cung ng nhi u m t hàng. C a hàng ch c n theo dõi nhà cung ng nào cung ng m t hàng gì v i giá bao nhiêu. Thông tin l u tr v nhà cung ng và m t hàng bao g m:M t hàng có Mã s MH, tên m t hàng, n v tính. Cung ng: Mã s , tên nhà cung ng, tên qu n lý (giám c), a ch , n tho i, fax. i khách hàng mu n mua hàng thì ph i l p m t n t hàng. M i n t hàng có s c nh c in s n trên m u n. M t n t hàng có th mua nhi u m t hàng. Thông tin v khách hàng và n t hàng bao g m:Khách hàng (KH): Mã s , tên KH, a ch , n tho i, fax. n t hàng ( H): Ngày t, các m t hàng, t mua, s l ng và n giá. Yêu c u: 1. Tìm các th hi n (th c th ) c a bài toán trên. 2. Xây d ng mô hình k t h p cho bài toán. 3. Chuy n mô hình k t h p sang mô hình quan h : DÞch vô Tin häc TÊn Ph-íc Trang 7
  • 8.
    Microsoft Access 2000Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu 1. Các th c th trong quan h : 2. Xây d ng mô hình m i k t h p cho bài toán: 3. Chuy n mô hình k t h p sang mô hình quan h : DÞch vô Tin häc TÊn Ph-íc Trang 8
  • 9.
    Microsoft Access 2000Ch-¬ng 1: Tæng quan vÒ c¬ së d÷ liÖu DÞch vô Tin häc TÊn Ph-íc Trang 9