báo cáo môn học - cơ sở dữ liệu

Upload: hoang-nguyen

Post on 05-Jul-2018

238 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    1/24

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    2/24

    I .Tổng quan chung

    1.Mục đích, yêu cầu bài toán:

    * Bài toán:

    Viết chương trình quản lí một nhà hàng .

    *Yêu cầu:

    - Quản lý nhân viên nhà hàng, ba g!m" tên, quê qu#n, gi$i tính, %& 'i(nth)i, làm vi(c * bộ +hn nà.

    - Quản lý h#ch hàng, ba g!m" tên, gi$i tính, ha 'ơn %/ 01ng, ngà2 3n *nhà hàng.

    - Quản lý ha 'ơn, ba g!m" ngà2, t4ng chi +hí, m5 tả63n mn gì, %& lư7ng ba nhiêu8, nhân viên nà +h1c v1, ch h#ch hàng nà.

    - Quản lý th9c 'ơn, ba g!m" tên mn, tr)ng th#i6c:n ha2 hết8, ngà2 nh+,gi#, thuộc bộ +hn nà.

    *Mục đích:

    - Quản lý nhân viên nh;m biết th5ng tin c# nhân c liên l)c, thêm, b$t nhân viên, %?+ @ế+ và c#c bộ +hn +hA h7+ v$i chBc n3ngnhà hàng.

    - Quản lý h#ch hàng nh;m th&ng ê h#ch hàng nà %/ 01ng 0Cch v1 nhiDuha2 ít, tE ' c c#c chế 'ộ ưu 'Fi '> giG h#ch. H!ng thIi n?m %& lư7ng h#chhàng trng th#ng, quí @Jm làm 3n c tiến tri>n ha2 th1t lAi, tE ' 'iDu chKnh c#cmLt h#c c

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    3/24

    II.Hướng giải quyết bài toán chung:

    1. Lập hệ quản t! c" #$ %& 'iệu(#) %ụn Mico#o+t cc-## //0:

    a. Giới thiệu Microsoft cc!ss "##$:

    R SccJ%% là một h( quản trC cơ %* 0G li(u hFng icr%Tt ch)2 trên m5i trưIng

    Uin0%, trên ' c c#c c5ng c1 hGu hi(u và ti(n l7i '> t9 'ộng %ản %inh chương

    trình ch h=u hết c#c bài t#n thưIng gL+ trng th9c tế như quản lý, th&ng ê, ế

    t#n ... V$i R SccJ%% ngưIi %/ 01ng h5ng +hải viết tEng câu l(nh c1 th> mà vWn

    c 'ư7c một chương trình hàn chKnh, nếu c=n l+ trình R SccJ%% c %Xn ng5n

    ngG SccJ%% Ya%ic '> ta c th> l+ trình thJ ý mu&n c 0u2 nhNt. Ogài ra, c#c 0G li(u

    c gh_+ l)i thành một ch< th> 0u2 nhNt 09a trên c#c gi#

    trC 0G li(u quan h(. `rng một h( quản trC [R\] quan h(, tNt cả c#c 0G li(u 'ư7c

    quản lý thJ bảng, bảng lưu trG th5ng tin vD một ch< th>. `hm trí hi %/ 01ng một

    trng c#c +hương ti(n c một tru2 vNn 09a trên ết quả c th9c thi chB h5ng chKnh %/a 'ư7c cNu trc8. [ t(+ thành +h=n chính trng một t(+ "

    - Tab(!s " Oơi chBa tàn bộ c#c bảng 0G li(u.- )u!ri!s " Oơi chBa tàn bộ c#c tru2 vNn 0G li(u 'F 'ư7c thiết ế.

    - *or& " Oơi chBa mWu gia 0i(n +h=n mDm.

    - +!,orts " Oơi chBa c#c mWu b# c# 'F 'ư7c thiết ế.

    - Macro " Oơi chBa c#c acr l(nh +h1c v1 09 #n..

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    4/24

    - Mo-u(!s " Oơi chBa c#c hai b# c#c thư vi(n chương trình cn +h1c v1 09 #n.

    2 đ3y ch4n t5 ch6 qu5n t37 t8i 9ác thành phần #5u:

    - ảng /Tab(!0 :

    - ]à thành +h=n cơ bản quan trng c mà ta c=n lưu trG. jhi thiết ế c#c cột ch `ablJ ta c

    th> ràng buộc 'iDu i(n '> SccJ%% i>m tra c#c rJcr0 nh+ và h5ng bC %ai.

    - [hính nhI nhGng `ablJ nà2 mà @â2 09ng nên 'ư7c nhGng m&i quan h( trng h(

    th&ng 6rJlatin%hi+8.

    12u tr3c (ogic c4a Tab(! "

    - `ablJ 'ư7c t4 chBc thành c#c cột ha2 c:n gi là trưIng 6TilJ ha2 clum8 và c#c

    0:ng gi là mku tin 6Jcr08.

    - ^i cột tương Bng v$i một m1c 0G li(u mà ta c=n lưu trG. ^i cột c một tên vàthuộc vD một i>u 0G li(u.

    - ^i 0:ng chBa 0G li(u vD một ngưIi ha2 vt c1 th> mà ta c=n lưu trG.

    Ta có thể tạo mới một bảng theo 3 cách sau :

    `) v$i %9 hư$ng 0Wn cm @Jm bảng 0G li(u6\ata%hJJt ViJ8.

    `) trên một mWu thiết ế 6\ata%hJJt ViJ8.

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    5/24

    )u!ry 5 Truy '2n :

    - QuJr2 là c5ng c1 0Ang '> tính t#n và @/ lý 0G li(u tE c#c tablJ và c#cQuJr2 h#c c %Xn trng cơ %* 0G li(u.

    - \)ng QuJr2 thưIng 'ư7c %/ 01ng nhiDu nhNt là RJlJct QuJr2. Y;ng l)i

    QuJr2 nà2 ta c th> lc ra nhGng th5ng tin c=n quan tâm tE nhiDu b;ng 0Gli(u h#c nhau cua cơ %* 0G li(u, c th> +hân tích và hi(u chKnh 0G li(unga2 trên bản thân QuJr2 ha2 %/ 01ng làm cơ %* ch c5ng vi(c h#c.

    - Ogài ra c:n c c#c l)i QuJr2 h#c như o+0atJ QuJr2 '> c+ nht,chKnh %/a 0G li(u ch `ablJ, cr%%tab QuJr2 t4ng h7+ 0G li(u, aJ`ablJ QuJr2, [r%%tab QuJr2 t4ng h7+ 0G li(u, aJ `ablJ QuJr2 nh;m

     +h1c h!i 0G li(u c %ơ %t @ả2 ra ch `ablJ. #+ n&i 0G li(u và tablJ cS++Jn0 QuJr2 @a 0G li(u \JlJtJ QuJr2. QuJr2 như một nDn tảng '> t)ra c#c b# bi>u c 'Lc tính 'Cnh 0)ng ca hơn `ablJ.

    6 7hái niệ& "- QuJr2 là c5ng c1 hai th#c và %/ lý 0G li(u c '#+ Bng c#c nhu c=u tra cBu vD 0G li(u và cn tE icr%Tt. Hâ2 là một %ản

     +hkm +h=n mDm m#2 tính c c5ng 01ng gi+ ' c#c l+ trình viên trng vi(c +h#t

    tri>n +h=n mDm.

    [#c m5i trưIng +h#t tri>n h7+ nhNt thưIng ba g!m"

    - ột trình %)n thả mF 6%urcJ c0J J0itr8" 0Ang '> viết mF.- `rình biên 0Cch 6cm+ilJr8 vàshLc trình th5ng 0Cch 6intJr+rJtJr8.

    - [5ng c1 @â2 09ng t9 'ộng" hi %/ 01ng % biên 0Cch 6hLc th5ng 0Cch8 mF ngu!n,

    th9c hi(n liên ết và c th> ch)2 chương trình một c#ch t9 'ộng.

    -`rình g l^i 60JbuggJr8" h^ tr7 0: tìm l^i.

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    6/24

    - Ogài ra, c:n c th> ba g!m h( th&ng quản lí +hiên bản và c#c c5ng c1 nh;m

    'ơn giản ha c5ng vi(c @â2 09ng gia 0i(n ngưIi 0Ang '! ha 6o8.

    - OhiDu m5i trưIng +h#t tri>n h7+ nhNt hi(n ')i c:n tích h7+ trình 0u2(t l$+ 6cla%%

     br%Jr8, trình quản lí '&i tư7ng 6bJct in%+Jctr8, lư7c '! +hân cN+ l$+ 6cla%%

    hiJrarch2 0iagram8,... '> %/ 01ng trng vi(c +h#t tri>n +h=n mDm thJ hư$ng '&i

    tư7ng.

     Ohư v2, Microsoft 8isua( 9tu-io 'ư7c 0Ang '> +h#t tri>n cn%lJ 6thiết bC '=u

    cu&i w bàn gia tiế+ ngưIi m#28 và o 6gia 0i(n ngưIi 0Ang '! ha8 cAng v$i

    c#c trình Bng 01ng như Uin0% prm%, c#c Jb %itJ%, cPng như Bng 01ng, 0Cch

    v1 J0 6Jb a++licatin%, an0 Jb %JrvicJ%8. [hng 'ư7c +h#t tri>n 09a trên một

    mF ng5n ngG g&c 6nativJ c0J 8 cPng như mF 'ư7c quản lý 6managJ0 c0J8 ch

    c#c nDn tảng 'ư7c 'ư7c h^ tr7 icr%Tt Uin0%, Uin0% bilJ, .O`pramJr, .O` [m+act pramJr và icr%Tt RilvJrlight.

    Vi%ual Rtu0i h^ tr7 rNt nhiDu ng5n ngG l+ trình, c th> > tên như %au" [s[

    6 Vi%ual [8, VY.O` 6Vi%ual Ya%ic .O`8, va [x 6Vi%ual [x8M cPng như h^ tr7 

    c#c ng5n ngG h#c như px, y2thn, và ub2z ngài ra vWn 'ảm bả h^

    tr7 {]s{R]`, Z`]s{Z`], |avaRcri+t và [RRM

    b. Là7 Diệc D8i i#u5' tu%io //C:

    [#c chBc n3ng chính cm'Lc bi(t * 'â2 là gia 0i(n v$i ngưIi 0Ang %inh 'ộng, 0 n?m b?t. O ba g!m c#c

     +hím bNm, thanh t#c v1, ha2 c#c b@ 'a 0)ng 6tJ@tb@, li%t b@, gri0 viJM8. Y)n

    c th> 0i chu2>n, _ ra, nhng thả chng một c#ch 0 0àng.

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    7/24

    - [la%% 0J%ignJr" Hâ2 là c5ng c1 0Ang '> th9c thi và chKnh %/a l$+. O c th> 0Ang

    mF [x và VY.O` M

    - Og5n ngG 'ư7c %/ 01ng trng bài t+ l$n là [x ha2 c:n gi là [-%har+

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    8/24

    III. h;n tế chư?ng tr@nh cA thB:

    1. E3y %Fn hệ quản t! c" #$ %& 'iệu tên Mico#o+t cc-## //0:

    5.E3y %Fn bản:

    nhanviJn 6manv, htJn, quJquan, giitinh, mab+han, %0iJnthai8

    hachhang 6mahachhang, tJnhachhang, giitinh, nga2 an, maha0n8

    ha0n 6maha0n, nga2, chi+hi, mta, manv, mahachhang8

    thuc0n 6ma0an, tJn0an, trangthai, nga2nha+, gia, mab+han8

     b+han 6mab+han, tJnb+han, trungb+han, 0iachi8

    `rng ' c#c tE g)ch chân là ha chính

    [#c trưIng trng c#c bảng 'ư7c @â2 09ng th‚a mFn 2êu c=u và m1c 'ích 'Lt ra c

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    9/24

    Ch;n 'iDn:

    TDn trưEng 7iBu -F (iệu 7

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    10/24

    TDn trưEng 7iBu -F (iệu 7

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    11/24

    TDn trưEng 7iBu -F (iệu 7

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    12/24

    TDn

    ma0antJn0an

    trangth

    nga2nh

    gia

    mab+h

    K ,hLn:

    TDn trưEng 7iBu -F (iệu 7

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    13/24

    0iachi `J@t }} HCa chK

    b. MG h=nh qu5n hệ c" #$ %& 'iệu:

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    14/24

    .E3y %Fn i5o %iện ni %?n Dào tuy DHn (qu-y tên i#u5' tu%io //C:

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    15/24

    5.Ihi;t J;, các b

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    16/24

    `iến hành 'Lt tên ch c#c thành +h=n '> ti(n ch vi(c l+ trình %au nà2, ví 01 "

    `J@tb@ c labJl ƒ mF h#ch hành „ 'Lt là ƒ t@tmahachhang „ hLc

    \atagri0viJ 'Lt là ƒ 0atahachhang „M

    ]àm tương t9 v$i c#c bảng c:n l)i.

    H> thêm Trm hLc cla%%, ta làm như %au"

    H> thêm Trm, ta chn

    Uin0%prm

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    17/24

    H> thêm cla%% ta chn

    ]ưu tên Trm và cla%% tương Bngb. i;t ch

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    18/24

      public !oid suahachhang"string mahachhang2 string hoten2 string ngayan2 string mahoadon2 string gioitinh#  {  try  {  csdl.etnoi"#;  string sql $ %7&D)T* hachhang S*T tenhachhang$8% 9 hoten 9%82ngayan$8% 9 ngayan 9 %82mahoadon$8% 9 mahoadon 9 %82gioitinh$8% 9 gioitinh9 %8 >here mahachhang$ 8% 9 mahachhang 9 %8%;  // string sql $ %7&D)T* nhan!ien S*Thoten$8huhu82quequan$8sd(82gioitinh$8nam82mabophan$8&682sodienthoai$?@?@A@A>here man!$-B%;  OleDbCommand cmd $ ne0 OleDbCommand"sql2 Ole#;  cmd.*xecute4on:uery"#;  1  catch  {  thro0 ne0 *xception"%+u thay i hhere mahachhang$ 8% 9mahachhang 9 %8%;  OleDbCommand cmd $ ne0 OleDbCommand"sql2 Ole#;

      cmd.*xecute4on:uery"#;  1  catch  {  thro0 ne0 *xception"%h tiến hành l+ trình ch Trm"

    [1 th> là thêm, %/a, @a"public hachLhang"#  {

      3nitialiMeComponent"#;  stringN gioitinh $ { %nam%2 %nu% 1;  cbgioitinh.3tems.)dd5ange"gioitinh#;  1  csdl obP $ ne0 csdl"#;

      pri!ate !oid themhachhang-"#  {  try

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    19/24

      {  //csdl.etnoi"#;  obP.themhachhang"txtmahachhang.Text.ToString"#2txthoten.Text.ToString"#2 datetimengayan.Text.ToString"#2txtmahoadon.Text.ToString"#2 cbgioitinh.Text.ToString"##;  string sql $ %S*+*CT E F5O' hachhang%;  OleDbCommand hien $ ne0 OleDbCommand"sql2 csdl.Ole#;  OleDbData)dapter adap $ ne0 OleDbData)dapter"hien#;  DataSet ds $ ne0 DataSet"#;  adap.Fill"ds#;  datahachhang.DataSource $ ds.TablesN;

      'essage,ox.Sho0"%+u dQ liRu th=nh c

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    20/24

    [lic '+ và buttn và gi chương trình cn tương Bng ta % c c#c nt chBc

    n3ng, ví 01"

     Ot `hêmpri!ate !oid button-LClic"obPect sender2 *!ent)rgs e#

      {  themhachhang-"#;

      1

    H> hi(n thC 0G li(u bảng SccJ%% jh#ch hàng lên \atagri0viJ c làm trên icr%Tt SccJ%% }~~‡ nhưng * 'â2 ta làm tr9c tiế+ trên Vi%ualRtu0i '> ti(n ch vi(c %/a c0J cPng như 0Jbug"

    6%iệt >D các qu!ry c trong chư?ng tr@nh:

    - € bảng hachˆhang c e quJr2 n;m * } buttn%" …%& lư7ng h#ch hàng†,…chi +hí h#ch trng th#ng†, …tìm iếm†

    - € bảng nhanˆviJn c quJr2 n;m * buttn …tìm nhân viên†

    - € bảng haˆ0n c } quJr2 n;m * } buttn%" …@Jm chi +hí c

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    21/24

      string sql $ %S*+*CT Count"hachhang.Ntenhachhang# )SCountO(tenhachhang F5O' hachhang%;  OleDbCommand hien $ ne0 OleDbCommand"sql2 csdl.Ole#;  OleDbData)dapter adap $ ne0 OleDbData)dapter"hien#;  DataSet ds $ ne0 DataSet"#;  adap.Fill"ds#;  //datahachhang.DataSource $ ds.TablesN;  'essage,ox.Sho0"%tng sU hJch h=ng% 9 ds.TablesN.5o0sNN.ToString"#2%th

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    22/24

      DataSet ds $ ne0 DataSet"#;  adap.Fill"ds#;  datahachhang.DataSource $ ds.TablesN;  //'essage,ox.Sho0"%tng sU hJch h=ng% 9 ds.TablesN.5o0sNN.ToString"#2 %th

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    23/24

      OleDbCommand hien $ ne0 OleDbCommand"sql2 csdl.Ole#;  OleDbData)dapter adap $ ne0 OleDbData)dapter"hien#;  DataSet ds $ ne0 DataSet"#;  adap.Fill"ds#;  //datahoadon.DataSource $ ds.TablesN;  'essage,ox.Sho0"%chi ph[ ht% 9 ds.TablesN.5o0sNN.ToString"##;  1  1

    -…t4ng 0anh thu† c

  • 8/16/2019 Báo cáo môn học - Cơ sở dữ liệu

    24/24

    I8. 7ết (uLn:

    . jết quả thu 'ư7c"}. Z)n chế c