Bài giảng thiết kế và cài đặt cơ sở dữ liệu
Trang 1a. Quy tắc 1: Mỗi tr ờng trong bảng phải mô tả 1
loại thông tin duy nhất
b Quy tắc 2: Mỗi bảng phải có 1 số tr ờng tối
thiểu, nhờ nó mà không có các bảng ghi trùng nhau ( số tr ờng tổi thiểu gọi là khoá cơ bản)
c Quy tắc 3: Các tr ờng trong bảng phải đầy đủ và
liên quan đến khoá cơ bản hay còn liên quan
đến chủ thể của bảng( phụ thuộc hàm)
Trang 2trừưkhoáưcơưbản)ưmàưkhôngưảnhưhưởngưđếnưtrườngưkhác
2.ưKhaiưbáoưmốiưquanưhệưgiữaưcácưtable
a Quanưhệư1:1
ưLàưquanưhệưmàư1ưgiáưtrênưfieldưcủaưbảngư1ưchỉưđư
ợcưxuấtưhiệnư1ưlầnưtrênưfieldưquanưhệưcủaưbảngư2ưvàưngượcưlại
b.ưQuanưhệư1:n
ưLàưquanưhệưmàư1ưgiáưtrịưtrênưfieldưcủaưbảngư1ưcóư
thểưxuấtưhiệnưnhiềuưlầnưtrongưbảngư2
Trang 4(ưvùngưtinưnàoưmàưgánưkhoáưchínhưlàưvùngưinưđậmưcònưlạiư làưvùngưmờ)
ư-ưThựcưhiệnưđặtưquanưhệ:
ư-ưnhấpưchuộtưtạiưfieldưưcủaưtableưchínhưvàưkéoưđếnưfieldư quanưhệưcủaưtableưquanưhệ.ưAccessưhiệnưhộpưthoạiư
relationships:
ưưưưưư+ưChọnưEnforceưreferentalưintegrity:ưépưbuộcưtínhư
toànưvẹnưdữưliệu
ưưư+ưChọnưCascadeưupdateưrelatedưfields:ưkhiưsửaưgiáưtrịư trênưfieldưcủaưtableưchínhưthìưdữưliệuưtươngưứngưtrênư
tableưquanưhệưsẽưtựưđộngưsửaưtheo
ưưưưưưư+ưChọnưCascadeưdeleteưrelatedưrecords:ưkhiưxoáư1ư
recordưcủaưtableưchínhưthìưcácưrecordưtươngưứngưtrongư tableưquanưhệưsẽưtựưđộngưxoáưtheo
Trang 5- nhấnưcreate
- ưSửa\ưXoáưdâyưquanưhệ:
ưư+ưSửaưlạiưmốiưquanưhệưthìưnhấpưđúpưtạiưdâyưquanưhệưhoặcưkíchưchuộtưphảiưtạiưdâyưchọnưeditư
relationship
ưư+ưXoáưmốiưquanưhệ:ưnhấpưtạiưdâyưvàưchọnưdelete
víưdụ
Trang 6ý nghÜa c¸c kÕt nèi
1 KÕt nèi kiÓu 1-1 (Gi¸ trÞ tr
êng kÕt nèi chØ xuÊt hiÖn 1
lÇn trªn c¶ hai b¶ng)
2 KÕt nèi kiÓu 1- n (Gi¸ trÞ
tr êng kÕt nèi xuÊt hiÖn 1 lÇn
trªn b¶ng 1 nh ng nhiÒu lÇn
trªn b¶ng 2)
3 KÕt nèi kiÓu n – 1 1 ( Gi¸
trÞ tr êng kÕt nèi xuÊt hiÖn
nhiÒu lÇn trªn b¶ng 1 nh ng
mét lÇn trªn b¶ng 2 )
Trang 7-Createatablebyusingwizard:t¹o1tableb»ngc¸chchänc¸cfieldsvµc¸cthµnhphÇnthiÕtkÕtõc¸chéptho¹i,nhanhchãng
Trang 8ư-ưCreateưaưtableưbyưenteringưdata:ưchoưbạnưtạoư1ưtableư bằngưcáchưđơnưgiảnưđặtưtênưcácưfieldsưvàưnhậpưdữưliệu
ưB4:ư-ưTíchưvàoưcreateưaưtableưinưdesignưview
ưưưưưưư-ưChọnưnew
ưưưưưưư-ưhtxhưgồm:ư
ưưưưưưưưưưưưưưưưưư+ưDatasheetưview:ưnạpưdlưvàoưbảngưvớiưtênưtrư ờngưbanưđầuưlàưfield1,ưfieldư2
Trang 9ưưưưưư-ưOk
B6:ưhtưtableưxuấtưhiệnưgồm:ư2ưphần:ưphầnưtrênưvàưphầnưdư ới,ưđểưdiưchuyểnưgiữaưhaiưphầnưấnưF6
ưư-ưPhầnưtrênưgồm:ư3ưmụcư
ưưưưư+ưFieldưname:ưtênưtrường,ưdùngưđểưkhaiưbáoưcột.ưTênư cộtưdàiưtốiưđa::44ẳ44::kýưtựưgồmưcảưdấuưcáchưnhưngưkhôngư
đểưdấuưcáchưởưđầu.ưTênưđượcưbắtưđầuưcácưchữưcái,ưsố,ưvàư cácưkýưtựưđặcưbiệtưtrừưdấuưchấm(.),ưdấuưthan(!),ưmởư
móc([),ưđóngưmóc(]).
ưưưưư+ưDataưtype:ưKiểuưdữưliệu
ưưưưưưưưư*ưText:ưchuổiưkýưtựư,ưdàiưtốiưđaư255ưkýưtự
ưưưưưưưưư*ưMemo:ưVănưbảnưnhiềuưdòng,ưtốiưđaư64.000ưkýưtự
Trang 10ưưưưư*ưData/time:ưngàyư/ưgiờ
ưưưưư*ưCurrent:ưtiềnưtệ
ưưưưư*ưAutoưnumber:ưAccessưtựưđộngưđiềnưgiáưtrịưsốưphânưbiệtưnhauưvàoưfieldư
giúpưcủaưwizard
Trang 11đó.Víưdụưkhiưnhậpưđiểmưthiưchỉưchoưphépưnhậpưvàoưcácưconư sốưchứưkoưchoưphépưnhậpưkýưtự
ưưưưưưưưưưưư*ưCaption:ưtênưcủaưfieldưđượcưhiệnưởưcửaưsổưdatasheet
ưưưưưưưưưưưư*ưDefaultưvalue:ưgiáưtrịưdlưmặcưđịnhưcủaưcộtưkhiưthêmưdlư vàoưtableưmàưbỏưquaưdlưtạiưcộtưđó
ưưưưưưưưưưưư*ưValidationưrule:ưLàưbiểuưthứcưkiểmưtraưdlưđểưkhiưnhậpư dlưaccessưsẽưkiểmưtraưquyưtắcưđó
ưưưưưưưưưưưư*ưValidationưtext:ưDòngưthôngưbáoưhiệnưraưnếuưnhậpưsaiư dlưsoưvớiưquyưtắcưđãưđịnhưởưvalidationưrule
Trang 12- Yes:ưtươngưứngưvớiưviệcưbắtưbuộcưnhậpưdl,
- Noư:ưkhôngưbắtưbuộcưnhậpưdlưtạiưcộtưđó(=ưrằngưbuộcư notưnull)
ưưưưư*ưAllowưzeroưlength:ưcóưđượcưnhậpưchuỗiưrổng?
ưưưưưư*ưIndexes:-ưNo:ưkhôngưsắpưxếp
ưư-ưYes(noưduplicateưok):ưcóưsxưvàưcácưgiáưtrịưtrênưfieldưcóư thểưtrùngưnhau
ưư-ưYes(noưduplicate):ưcóưsxưvàưcácưgiáưtrịưtrênưfieldưphảiư khácưnhau
ưưư+ưLookup:ư
ưưưưưư*ưDisplayưcontrol:ư-ưTextưbox:ưhộpưnhậpưdữưliệuư
ưưưưưưưưưưưưưưưưưưưưưưưưưưưưưưưưưưưư-ưListưbox:ưhộpưliệtưkê
Trang 14• thuộcưtínhưInputưmask
- 0:vịưtríưdànhưchoưmộtưkýưsốư0-9(bắtưbuộcưnhập)
- 9:ưvịưtríưdànhưchoưmộtưkýưsốư0-9(koưbắtưbuộcưnhập)
- <:ưtấtưcảưkýưtựưđượcưchuyểnưthànhưchữưthường
- >:tấtưcảưkýưtựưđượcưchuyểnưthànhưchữưhoa
Trang 16ưư-ưGõưEscưđểưtắtưchếưđộưdiưchuyển
Trang 17khiưchuộtưcóưdạngưmũiưtênưưưưưưưưưđặtưchuộtưởưvịưtríưtrênư(ư chuộtưcóưdạngưưưưưưư)ưgiữưchuộtưvàưkéo
2.ưThayưđổiưkiểuưdữưliệuưtrườngư(ưSGK)
3.ưTáchưmộtưbảng
ưTrongưquáưtrìnhưlàmưviệcưnếuưcóưmộtưsốưtrườngưkhôngư
dùngưđếnưhoặcưítưdùng,ưnếuưtaưtáchưthànhư1ưbảngưmớiư khôngưcóưcácưtrườngưnàyưthìưcóưkhiưxửưlýưbảngưnhanhư hơn,ưtaưthựcưhiệnưnhưưsau:
ưư-ưSaoưthêmưmộtưbảngưmớiưtừưbảngưcầnưtách
ưư-ưMởưbảngưmớiưởưchếưđộưdesignưvàưxoáưđiưnhữngưtrườngư khôngưcầnưđến
ưư-ưThiếtưlậpưlạiưcácưquanưhệưnếuưcần
Trang 20ưư-ưChọnưcộtưcầnưdiưchuyểnư(ưchoưchuộtưđếnưcộtưcầnưchọn,ưấnưCtrlư+ưspacebar)
ưưưưưưư-ưgiữưvàưrê
Trang 21ưư-ưchọnưcộtưcầnưgiấu
ưư-ưFormat\hideưcolumns
ưư-ưmuốnưhiệnưlạiưchọnưformatư\unhideưcolumns,ưchọnưtrườngưcầnưhiệnư,ưok
Trang 22ưư-ưBậtư/tắtưđườngưlướiưvàoưô:ưGridlineưcolorưvàưmàuưnềnưôưbackgroundưcolor
Trang 24ưư-ưđưaưtrỏưchuộtưđếnưdlưcầnưsửa
ưb4.ưThayưthểưdữưliệu
ưư-ưNhấpưchuộtưtạiưcộtưchứaưgiáưtrịưtìmưvàưtạiưdòngưbắtưđầuư tìm
Trang 25-KÝchvµotrªnthanhc«ngcônÕumuènsx
gi¶mdÇn
Trang 26ưưư-ưkhaiưbáoưkhoáưsắpưxếpưvàoưrecords\filter\
advancedưfilter\sort
ưưư-ưMởưdanhưsáchưtrườngưởưdòngưfield:ưnhấpưchọnưcộtưlàmưkhoáưsắpưởưbảngưphầnưtrên,ưrồiưkéoưthảưvàoư1ưcộtưtạiưdòngưnàyư(ưorưkíchưđúp)
ưưưưưưởưdòngưsort:ưchọnưascending:ưnếuưtăngưdần
ưưưưưưưưưưưưưưưưưưưưưưưưưưchọnưdescending:ưnếuưgiảmưdần
ưưưưưưưưưưưưưưưưưưưưưưưưưưưưưưưưưưsorted:ưkhôngưsắpưxếp
ưưư-ưChọnưFilter/ưapplyưfilterư/ưsort:ưthiưhànhưlệnh
Trang 27
Trang 28ưưC5:ưNhấpưđúpưlênưbiểuưtượngưcontrolưmenuưởưgócưbênưtráiưphíaưtrênưcửaưsổưdatabase
Trang 29lµc¬chÕläcdlchØchophÐpchóngtaläcc¸cdßngdlvíi phÐpsos¸nhb»ng(=)vµphÐplogicand,or
- VµoRecords/filter/filterbyform
- chängi¸trÞläctronghéptho¹ikÐoxuèng
- nhÊpvµorecords/applyfilter
Trang 30Chỉưchoưphépưchúngưtaưlọcưcácưdòngưdlưđúngưvớiưgiáưtrịưmàưchúngưtaưđãưđánhưdấuưtrênưcửaưsổưcậpưnhậtưdlưcủaưbảngư
víưdụ:ư
- Lọcưdanhưsáchưcácưsinhưviênưhọcưkhoaưvl
- đánhưdấuưvàoưcộtưmãưkhoa,ưtạiưgiáưtrịư‘VL’
- vàoưrecords/filter/filterưbyưselection
Trang 32Choưphépưchúngưtaưlọcưcácưdùngưdlưkhácưvớiưcácưgiáưtrịưđãưđánhưdấuưkhiưxemưbảngưởưchếưđộưcậpưnhậtưdlư
-víưdụ:ưlọcưdanhưsáchưcácưsinhưviênưkoưhọcưkhoaưvậtưlíư
- mởưbảngưsvư
- đánhưdấuưvàoưcộtưdlưkhoaưmuốnưlọc,ưtạiưgiáưtrịư‘ưvl’
- vàoưrecords/filter/filterưexcludingưselection
Trang 42• Cáchưthêmưmộtưtrườngưmới:ư
ư-ưGõưtênưtrường:ưgõưhàm
ư-ưTênưtrườngưđểưtrongưdấuưmócư[]
Trang 44Chúưý:ưtênưtrườngưtạiưtrongưtiêuưchuẩnưtruyưvấnưphảiưGõưtrongư2ư dấuư[]ư.ư víưdụ :ưTínhưsốưlượngưbánưraưtrongưmỗiưngàyưlàưbaoư
nhiêu
Trang 46- b4:ưLiệtưkêưcácưcột,ưđiềuưkiệnưchọnưcácưrecordư
đưaưvàoưbảngưđích
- b5:ưnhấpưvàoưnútưrunư
- Sauưkhiưxongưaccessưhiểnưhtưư
Trang 50tổngưhợpưcủaưmộtưfieldưđượcưbiếnưthànhưgiáưtrịưcủaưcácưcộtưđóưtrongưcrosstabưquery
Trang 51b1:ưchọnưqueries/new/designưview/ok
b2:ưchọnưtableưhoặcưqueryưchứaưcộtưcầnưtínhư
b3:ưnhấpưquery/ưcrosstabưquery:ưtạiưcửaưsổưdesignưviewưsẽư hiệnưdòngưcrosstabưdướiưdòngưtotal
Trang 52where)
-b5:nhÊpquery/run
• chóý:gi÷ac¸cgi¸trÞliÖtkªph¶ic¸chnhaubëidÊu;
• vÝdô:columnheadings:=“ruou”;“nem”;
“giavi”