บทที่ 2 รายงานผลการดําเนินงาน · บทที่ 2 รายงานผลการดําเนินงาน. 8 บทที่
(Database Workshop) · บทที่ 5 การสร้างฟอร์ม (Form) 79...
Transcript of (Database Workshop) · บทที่ 5 การสร้างฟอร์ม (Form) 79...
การปฏบตการฐานขอมล (Database Workshop)
ผชวยศาสตราจารย ดร. ปรศนา มชฌมา
คณะมนษยศาสตรและสงคมศาสตร มหาวทยาลยราชภฏสวนดสต
๒๕๕๕
การปฏบตการฐานขอมล (Database Workshop)
ผชวยศาสตราจารย ดร. ปรศนา มชฌมา ปร.ด. (เทคโนโลยสารสนเทศ)
คณะมนษยศาสตรและสงคมศาสตร มหาวทยาลยราชภฏสวนดสต
2555
ค ำน ำ
ต าราการปฏบตการฐานขอมลเลมน เปนการเขยนในลกษณะทมขอมลประกอบเชงทฤษฎและปฏบต ทมงเนนใหผ เรยนสามารถจดการฐานขอมลดวยโปรแกรมส าเรจรป Microsoft Access ไดอยางมประสทธภาพ และสามารถประยกตใชงานในดานตางๆ ไดโดยผานกรณศกษา ซงต าราเลมนผ เขยนไดจดท าขนเพอใชเปนต าราประกอบการเรยนการสอนวชาการปฏบตการฐานขอมล รหสวชา 4122208 ตามหลกสตรวทยาศาสตรบณฑต ของหลกสตรเทคโนโลยสารสนเทศ มหาวทยาลยราชภฏสวนดสต นอกจากนนต าราเลมนยงสามารถน าไปใชศกษาคนควา ในระดบอดมศกษาของสถาบนอนๆ ไดอกดวย
เนอหาในต าราไดแบงออกเปน 7 หวเรอง ซงประกอบดวย ความรเบองตนเกยวกบฐานขอมล การใชงานโปรแกรม Microsoft Access การสรางตาราง แบบสอบถาม ฟอรม รายงาน และมาโคร ทานทน าต าราเลมนไปใชควรศกษาเพมเตมจากเอกสารอนๆ ประกอบดวย และหวงวาต าราเลมนจะเปนประโยชนส าหรบนกศกษาและผ ทสนใจ หากมขอบกพรองประการใด ผ เขยน ขอนอมรบไวและจะพจารณาแกไขปรบปรงตอไป
ปรศนา มชฌมา 25 พฤษภาคม 2555
สารบญ
หนา ค าน า (1) สารบญ (3) บทท 1 ความรเบองตนเกยวกบฐานขอมล 1
ขนตอนการพฒนาระบบฐานขอมล 1 แบบจ าลองอ-อาร 4 นอรมลไลเซชน (Normalization) 16 บทท 2 การใชงานโปรแกรม Microsoft Access 25
โครงสรางของโปรแกรม Microsoft Access 25 เรมตนใชงานโปรแกรม Microsoft Access 2010 26 สวนประกอบของหนาตางโปรแกรม Microsoft Access 2010 29 การท างานของเมนแบบรบบอน (Ribbon) 30 การแปลงไฟล .mdb ใหเปนไฟล .accdb 32 การจดเกบไฟลฐานขอมล 33
บทท 3 การสรางตาราง (Table) 35
มมมองของตาราง 35 สวนประกอบของตาราง 36 การสรางตาราง 37
บทท 4 การสรางแบบสอบถาม (Query) 55
มมมองของแบบสอบถาม 55 ประเภทของแบบสอบถาม 56 วธการสรางแบบสอบถาม 57
สรางแบบสอบถามโดยใชตวชวยสราง 57
(4)
สารบญ (ตอ) หนา
การสรางแบบสอบถามดวยมมมองการออกแบบ 59 การสรางแบบสอบถามในมมมอง SQL 77
บทท 5 การสรางฟอรม (Form) 79
มมมองของฟอรม 79 การสรางฟอรมแบบงาย 80 การสรางฟอรมโดยใชตวชวย (Form Wizard) 81 การสรางฟอรมดวยมมมองการออกแบบ 83 ป มสรางคอนโทรลในแทบ Design 84 สวนประกอบในมมมองออกแบบของฟอรม 86 การเชอมฟอรมเขากบตารางฐานขอมล 92 การปรบแตงฟอรม 94 การจดเกบฟอรมลงฐานขอมล 95
บทท 6 การสรางรายงาน (Report) 97
มมมองของรายงาน 97 วธการสรางรายงาน 97 การสรางรายงานแบบงาย 98 สรางรายงานโดยใชตวชวยสราง (Report Wizard) 100 สรางรายงานในมมมองออกแบบ 102 สวนประกอบในมมมองออกแบบของรายงาน 103 ตวอยางการสรางรายงาน 105
การ export รายงาน 110 วธสรางรายงานจากแบบสอบถาม 112
(5)
สารบญ (ตอ) หนา บทท 7 การสรางมาโคร (Macro) 113
รจกกบมาโคร 113 เรมตนสรางมาโคร 114 ค าสงใน Action Catalog 115 วธสรางมาโครโดยเกบเปนออบเจค Macro 117 การแกไขมาโคร 121 วธสงรนมาโคร 124
บรรณานกรม 127
บทท 1
ความรเบองตนเกยวกบฐานขอมล
ฐานขอมลทมประสทธภาพและตรงกบความตองการของผ ใชนน ตองอาศยการพฒนาฐานขอมลทมการวางแผนอยางเปนระบบและมขนตอนทถกตอง โดยในบทนจะศกษาถงขนตอนการพฒนาระบบฐานขอมล ซงจะเนนขนตอนการออกแบบฐานขอมลเปนหลก ตงแตการพฒนาแบบจ าลองอ-อาร และการท านอรมลไลเซชน เพอใหไดฐานขอมลทสมบรณทสด
ขนตอนการพฒนาระบบฐานขอมล
วฏจกรฐานขอมล (The Database Life Cycle: DBLC) เปนขนตอนในการพฒนาหรอจดท าระบบฐานขอมล ซงประกอบดวย 6 ขนตอน ดงภาพท 1.1
ภาพท 1.1 วฏจกรฐานขอมล (The Database Life Cycle: DBLC) ทมา (Rob and Coronel, 2002, p.326)
การศกษาเบองตน (database initial study)
การออกแบบฐานขอมล (database design)
การตดตงระบบ (implementation)
การทดสอบและประเมนผล (testing and evaluation)
การด าเนนการ (operation)
การบ ารงรกษาและการปรบปรง (maintenance and evaluation)
2
1. การศกษาเบองตน การศกษาเบองตนมวตถประสงคเพอวเคราะหสถานการณขององคกร ก าหนดปญหา
และขอจ ากด ก าหนดวตถประสงคและขอบเขตของระบบ ดงรายละเอยดตอไปน 1.1 การวเคราะหสถานการณขององคกร
เ พอศกษาสภาพแวดลอมในการท างานขององคกร ความตองการใน การปฏบตงาน โดยควรรวาโครงสรางขององคกรเปนอยางไร ใครเปนผควบคมอะไร และใครท ารายงานใหใคร เปนตน
1.2 ก าหนดปญหาและขอจ ากด โดยการศกษาวา ระบบทมอยมการท างานอยางไร ขอมลทปอนเขาสระบบ
มอะไรบาง และระบบสรางรายงานอะไร มการใชรายงานเหลานอยางไรและใครเปนผ ใช เพอใหทราบถงปญหาและขอจ ากดในการปอนขอมล หรอการคนหาขอมลเพอการท ารายงาน
1.3 ก าหนดวตถประสงคและขอบเขตของระบบ ในการก าหนดวตถประสงคของระบบฐานขอมลควรสอดคลองกบความตองการ
ของผใช จากค าถามเหลาน - วตถประสงคแรกเรมของระบบทน าเสนอคออะไร - ระบบนตองเชอมตอกบระบบอนๆ ทมอยในองคกรหรอไม - ระบบนจะมการใชขอมลรวมกนกบระบบหรอผใชอนหรอไม เมอทราบวตถประสงคแลวกท าการก าหนดขอบเขตของระบบโดยการออกแบบ
ตามความตองการในการปฏบตงาน เพอใชในการออกแบบฐานขอมลตอไป
2. การออกแบบฐานขอมล เมอผ ออกแบบฐานขอมลมความเขาใจลกษณะขององคกร ปญหาและขอจ ากด
รวมทงวตถประสงคและขอบเขตของระบบแลว กท าการออกแบบฐานขอมลดงตอไปน 2.1 การออกแบบเชงแนวคด
โดยการพฒนาแบบจ าลองอ-อาร (E-R Model) ทใชอธบายถงความสมพนธระหวางสงทเราสนใจจะจดเกบ ทเรยกวา เอนทต (entity) และรายละเอยดหรอคณสมบต (attribute) ของสงทจะจดเกบ แลวท าการแปลงแบบจ าลองอ-อาร เปนโครงสรางตารางฐานขอมล จากนนกท าการนอรมลไลเซชน (normalization) เพอใหไดโครงสรางของตารางทด สามารถควบคมความซ าซอนของขอมล หลกเลยงความผดปกตของขอมล
3
2.2 การเลอกโปรแกรมจดการฐานขอมล
ในการตดสนใจเลอกซอโปรแกรมจดการฐานขอมลขององคกรใด ควรพจารณาถงสงตอไปน
2.2.1 คาใชจายตางๆ เชน ราคาการซอมบ ารง การปฏบตงาน ลขสทธ การตดตง การฝกอบรม และคาใชจายในการเปลยนไปใชระบบใหม
2.2.2 คณลกษณะและเครองมอของระบบจดการฐานขอมล โปรแกรมฐานขอมลบางตวจะรวมเอาเครองมอตางๆ ทใหความสะดวกในงานการพฒนาโปรแกรมประยกต ตวอยางเชน การออกแบบหนาจอ การสรางรายงาน การสรางโปรแกรมประยกต และพจนานกรมขอมล เปนตน ท าใหสะดวกในการบรหารฐานขอมล ใชงาย มความสามารถในการรกษาความปลอดภย และการควบคมการใชงานพรอมกน เปนตน
2.2.3 ความสามารถในการใชขาม platforms ขามระบบและภาษา 2.2.4 ความตองการดานฮารดแวร หนวยความจ า และเนอททใชในการจดเกบ
2.3 การออกแบบทางตรรกะ จะเกยวของกบการตดสนใจใชรปแบบเฉพาะของฐานขอมล (แบบล าดบชน แบบ
เครอขาย และแบบเชงสมพนธ เปนตน) การก าหนดรปแบบของฐานขอมล ซงการออกแบบ เชงตรรกะจะเปนการแปลงการออกแบบระดบเชงแนวคด ใหเปนแบบจ าลองของฐานขอมล ในระดบภายใน (internal model) ตามระบบการจดการฐานขอมล (DBMS) เชน MS-Access และ Oracle โดยการสรางตาราง ฟอรม ควร และรายงาน เปนตน
2.4 การออกแบบทางกายภาพ การออกแบบทางกายภาพ คอ กระบวนการในการเลอกหนวยจดเกบขอมล และ
ลกษณะการเขาถงขอมลของฐานขอมล การสรางดรรชน (index) การจดท าคลสเตอร (clustering) ซงเปนการจดเกบขอมลทมการใชงานบอยๆ ไวในหนวยเกบขอมลเดยวกน หรอการใชเทคนคแฮชชง (hashing technique) ในการจดต าแหนงทอยของขอมลภายในหนวยเกบขอมล เปนตน
3. การตดตงระบบ ขนอยกบระบบจดการฐานขอมลทใช โดยเรมตนจากการสรางฐานขอมล ก าหนด
ผจดการฐานขอมล ก าหนดพนทๆ ทตองการใช และการสรางตารางตางๆ ในระบบ 4. การทดสอบและประเมนผล
เพอการตรวจสอบดวาระบบทพฒนามาสามารถท างานไดตามทตองการหรอไม ซงควรมการเตรยมขอมลทดสอบไวลวงหนา
4
5. การด าเนนการ
เ มอฐานขอมลผานขนตอนการทดสอบและประเมนผล ตอไปกเปนขนตอน การด าเนนการ หรอการตดตงระบบ ซงตองเปนระบบทสมบรณพรอมใหผ ใชไดใชงานนนเอง ซงอาจรวมไปถงการฝกอบรมใหแกผใช ทเปนพนกงานทตองใชงานจรงดวย
6. การบ ารงรกษาและการปรบปรง
หลงจากระบบไดเรมด าเนนการ ผ จดการฐานขอมลจะตองเตรยมการบ ารงรกษาฐานขอมลโดยการส ารองขอมลไว เพอสะดวกในการก คนขอมล เมอระบบมปญหา และหากม การใชงานไปนานๆ อาจตองท าการปรบปรงแกไขโปรแกรมใหเหมาะสมกบเหตการณ และ ความตองการของผใชทเปลยนแปลงไป
เมอเราทราบขนตอนการพฒนาระบบฐานขอมลทงหมดแลว ในบทนจะเนนถงรายละเอยดของขนตอนการออกแบบฐานขอมลเชงแนวคด ตงแตการพฒนาแบบจ าลองอ-อาร (E-R Model) และการท านอรมลไลเซชน (normalization) ดงรายละเอยดทจะกลาวตอไป
แบบจ าลองอ-อาร
แบบจ าลองอ-อาร (Entity-Relationship Model: E-R Model) เปนแบบจ าลองขอมล ทประยกตมาจากแนวคดเรอง Semantic Model และมการพฒนามาเปน E-R Model โดย Peter Pin Shan Chen จาก Massachusetts Institute of Technology ในป ค.ศ. 1976 และไดรบ ความนยมมาจนถงปจจบน
1. ความหมายและความส าคญของแบบจ าลองอ-อาร แบบจ าลองอ-อาร เปนเครองมอทใชในการออกแบบฐานขอมล ทแสดงความสมพนธ
ระหวางเอนทตหรอสงทเราตองการจะจดเกบไวในฐานขอมล โดยน าเสนอในรปของของแผนภาพ ทเรยกวา อ-อารไดอะแกรม (E-R Diagram) ดวยการใชสญลกษณตางๆ
แบบจ าลองอ-อาร มความส าคญในการเปนสอกลางเพอสอสารกบบคลากรตางๆ ทเกยวของกบระบบฐานขอมล ไมวาจะเปนในระดบผบรหาร นกเขยนโปรแกรม และผ ใชในระดบปฏบตการ เปนตน ท าใหเขาใจระบบไดอยางถกตองตรงกน เนองจากมการแสดงภาพรวม ของระบบในลกษณะของรปภาพหรอแผนภาพ ท าใหเขาใจงาย ดงนนระบบทออกแบบมาจงมความถกตองและเปนไปตามวตถประสงคขององคกร
5
2. องคประกอบของแบบจ าลองอ-อาร แบบจ าลองอ -อาร ประกอบดวย เอนทต แอตทรบวต คย และความสมพนธ
ดงรายละเอยดตอไปน 2.1 เอนทต
เอนทต (entity) คอ สงตางๆ ทผ ใชงานฐานขอมลตองการจะจดเกบ ซงมลกษณะเปนค านาม ทงรปธรรมและนามธรรม เชน บคคล สถานท วตถสงของ และเหตการณตางๆ เปนตน ตวอยางของเอนทตใน “ระบบการลงทะเบยนเรยนของนกศกษา” ประกอบดวย รายวชา นกศกษา การลงทะเบยน ผลการเรยนประจ าเทอม สาขาวชา คณะ และโปรแกรมวชา เปนตน
เอนทตทรวบรวมไดจากระบบสามารถแยกแยะและจดเปนหมวดหมไดตามชนดของเอนทต ไดดงตอไปน
- หมวดบคคล ไดแก เอนทต นกศกษา พนกงาน ประชาชน ผ ปวย และลกคา เปนตน
- หมวดสถานท ไดแก เอนทต รฐ ประเทศ จงหวด ภาค สาขา และวทยาเขต เปนตน
- หมวดวตถ ไดแก เอนทต อาคาร เครองจกร ผลผลต หนงสอ วตถดบ และรถยนต เปนตน
- หมวดเหตการณ ไดแก เอนทต การขาย การลงทะเบยน การเดนทาง การสงซอของ การออกใบเสรจรบเงน และการใหรางวล เปนตน
ในอ-อารไดอะแกรม ใชสญลกษณรปสเหลยมผนผา แทนหนงเอนทต โดยใชชอของเอนทตนนๆ ก ากบอยภายใน เชน
2.2 แอตทรบวต แอตทรบวต (attribute) คอ คณสมบตตางๆ ของเอนทตทเราตองการจดเกบใน
ฐานขอมล ตวอยางเชน - เอนทตบตรประชาชน ประกอบดวยแอตทรบวต หรอสงทบงบอกคณสมบต
ของประชาชนแตละคน ไดแก หมายเลขบตรประชาชน ชอ นามสกล วนเดอนปเกด ภมล าเนา วนทออกบตร วนทบตรหมดอาย สวนสง น าหนก และกรปเลอด เปนตน
- เอนทตพนกงาน ประกอบดวยแอตทรบวต ไดแก รหสพนกงาน ชอ นามสกล ทอย เบอรโทรศพท สถานภาพสมรส และเงนเดอน เปนตน
นกศกษา แทน เอนทตนกศกษา
6
- เอนทตสนคา ประกอบดวยแอตทรบวต ไดแก รหสสนคา ชอสนคา ราคา และจ านวน เปนตน
- เอนทตนกศกษา ประกอบดวยแอตทรบวต ไดแก รหสนกศกษา ชอ นามสกล เพศ วนเดอนปเกด ทอย และเบอรโทรศพท เปนตน
- เอนทตวชา ประกอบดวยแอตทรบวต ไดแก รหสวชา ชอวชา และจ านวนหนวยกต เปนตน
คาของขอมลในแตละแอตทรบวตประกอบกน เรยกวา ทเพล (tuple) ซงเปนแถวของขอมลในตาราง โดยแตละแถวหรอแตละทเพลจะประกอบดวยหลายแอตทรบวตหรอ หลายคอลมนของขอมล จ านวนแถวของขอมลในตารางเรยกวา Cardinality และจ านวน แอตทรบวตทงหมดในตารางเรยกวา Degree อยางเชน จากภาพท 6.2 ม 4 Cardinality 5 Degree
รหสนกศกษา ชอ นามสกล โปรแกรมวชา คณะ 4800111 สาธต กตตพงศ คอมพวเตอร วทยาศาสตร 4800222 ชานนท สกลวงศ บรรณารกษศาสตร มนษยศาสตร 4800333 ธญญา โชตชวง บรรณารกษศาสตร มนษยศาสตร 4800444 โสภณ ปญญาเลศ บรหารธรกจ วทยาการจดการ
ภาพท 1.2 ตวอยางแอตทรบวต ทเพล และเอนทตนกศกษา
ในอ-อารไดอะแกรม ใชสญลกษณรปวงร แทนหนงแอตทรบวต โดยใชชอของ แอตทรบวตนนๆ ก ากบอยภายใน เชน
แอตทรบวต (attribute)
ทเพล (tuple)
แทนแอตทรบวตของชอ
ชอ
7
2.3 คย คย (key) คอ แอตทรบวตทสามารถใชบงบอกความแตกตางของแตละทเพลได
อาจเปนแอตทรบวตเดยวๆ หรอ กลมของแอตทรบวตกได ประเภทของคยประกอบดวย 2.3.1 ซปเปอรคย (super key) คอ แอตทรบวตหรอกลมของแอตทรบวต
ทสามารถบงบอกความแตกตางของแตละทเพลได ตารางท 1.1 ขอมลในเอนทตนกศกษา
รหสนกศกษา ชอ นามสกล เลขทบตรประชาชน 48001 สามารถ ประเสรฐกล 3120100475991 48002 วชา ปญญาเลศ 3120100475992 48003 น าทพย วเศษศร 3120100475993
จากตารางท 1.1 ประกอบไปดวยซปเปอรคยดงตอไปน
- รหสนกศกษา - รหสนกศกษา, ชอ
- รหสนกศกษา, ชอ, นามสกล - เลขทบตรประชาชน
2.3.2 คยคแขง (candidate key) คอ ซปเปอรคยทนอยทสด ทสามารถบงบอกความแตกตางของแตละทเพลได
จากตารางท 1.1 ประกอบไปดวยคยคแขงดงตอไปน
– รหสนกศกษา – เลขทบตรประชาชน
2.3.3 คยหลก (primary key) คอ คยคแขงทถกเลอก เพอใชบงบอกความแตกตางของแตละทเพล
จากตารางท 1.1 คยหลก คอ รหสนกศกษา หรอเลขทบตรประชาชน อยางใดอยางหนง
8
คณสมบตของคยหลก 1) คยหลกซ ากนไมได 2) คยหลกอาจเปนแคหนงแอตทรบวตหรอกลมของแอตทรบวตกได
อยางเชน ในตารางท 1.1 มแอตทรบวตเดยวทเปนคยหลก ซงอาจจะเปน “รหสนกศกษา” หรอ ”เลขทบตรประชาชน” กได แตขอมลบางตารางอาจตองอาศยแอตทรบวตตงแต 2 ตวขนไปมาประกอบกนเปนคยหลก เพอใหเกดความแตกตางระหวางทเพล ดงเชนในตารางท 1.2 ตารางท 1.2 ขอมลในเอนทตการลงทะเบยนเรยนของนกศกษา ปการศกษา 1/55
รหสนกศกษา ชอ รหสวชา ชอวชา ปการศกษา 5520249001 ปรชา 111 คอมพวเตอร 1/55 5520249001 ปรชา 222 ภาษาไทย 1/55 5520249002 เกรยงไกร 111 คอมพวเตอร 1/55 5520249003 ฉตรชย 333 ภาษาองกฤษ 1/55 5520249003 ฉตรชย 222 ภาษาไทย 1/55 5520249003 ฉตรชย 444 สงแวดลอม 1/55
จากตารางท 1.2 ไมสามารถใหแอตทรบวตรหสนกศกษา เปนคยหลกเพยงแอตทรบวตเดยวได เพราะจะเหนวา รหสนกศกษา 5520249001 ของทเพลหรอแถวท 1 จะไปซ ากบแถวท 2 แตถาใหแอตทรบวต “รหสนกศกษา” และ “รหสวชา” เปนคยหลก แลวพจารณาขอมลของ 2 แอตทรบวตน จะเหนวาขอมลไมซ ากนแลว ดงนนตารางท 1.2 จงมคยหลกซงประกอบดวยแอตทรบวต 2 ตวประกอบกน คอ “รหสนกศกษา” และ “รหสวชา”
3) คยหลกจะเปนคาวาง (null) ไมได เพราะฉะนนในการกรอกขอมลตางๆ ลงในตาราง แอตทรบวตใดทเราก าหนดใหเปนคยหลกตองกรอกขอมลใหครบ คอ จะไมมคาไมได แตแอตทรบวตอนอาจจะปลอยเวนวางไวกไดถาไมทราบคา
2.3.4 คยนอก (foreign key) คอ แอตทรบวตทใชในการเชอมตอกบเอนทต อนๆ เพอแสดงความสมพนธ คณสมบตของคยนอก คอ
- คยนอกสามารถมคาซ ากนได - คยนอกสามารถเปนคาวางได - คยนอกทไมเปนคาวางจะเปนคาทชไปยงคยหลกของเอนทตทสมพนธกน
9
รหสนกศกษา ชอนกศกษา GPA
4800555 กรรณการ สกลศร 2.50 4800999 สายสมร ปญญาเลศ 3.75
รหสนกศกษา รหสวชา เกรด 4800555 40001 B 4800555 40005 C 4800999 40001 A
รหสวชา ชอวชา หนวยกต 40001 ภาษาไทย 2 40005 คณตศาสตร 3
ภาพท 1.3 แอตทรบวตทเปนคยนอกทใชในการเชอมตอกบเอนทตอน
2.3.5 คยรอง (secondary key) คอ แอตทรบวตทไมเปน key หลก แต
สามารถใชในการคนหาขอมลนนๆ ได โดยคยรองจะมคาซ ากนได ตวอยางเชน ในตารางท 1.3 มรหสนกศกษาเปนคยหลก แตหากตองการคนหาขอมลจากชอนกศกษา แอตทรบวต ชอกจะเปน คยรอง หรอถาตองการคนหาขอมลจากนามสกลนกศกษา แอตทรบวตนามสกลกจะเปน คยรอง เปนตน ตารางท 3.3 คยรองทใชในการคนหาขอมล
รหสนกศกษา ชอ นามสกล เบอรโทรศพท 55111 สามารถ ประเสรฐกล 0-1111-1111 55112 วชา ปญญาเลศ 0-2222-2222 55113 น าทพย วเศษศร 0-5555-5555 55114 สมจตร สมสกลวงศ 0-6666-6666 55115 วชา รกศกดศร 0-9999-9999
คยนอก
10
2.4 ความสมพนธ ความสมพนธ (relationship) เปนการอธบายความสมพนธระหวางเอนทตทม
ความความสมพนธกน วามความสมพนธกนอยางไร โดยในอ -อารไดอะแกรมใชสญลกษณรปสเหลยมขาวหลามตด ทมชอของความสมพนธนนก ากบอยภายใน และเชอมตอกบเอนทตทเกยวของกบความสมพนธดวยเสนตรง ดงตวอยางดานลาง
ภาพท 1.4 ตวอยางความสมพนธระหวางเอนทต
ความสมพนธระหวางเอนทตแบงเปน 3 ประเภท คอ ความสมพนธแบบ หนงตอหนง ความสมพนธแบบหนงตอกลม และความสมพนธแบบกลมตอกลม ดงรายละเอยดตอไปน
2.4.1 ความสมพนธแบบหนงตอหนง (one to one relationship หรอ 1:1) หมายถง ขอมลในเอนทตหนง มความสมพนธกบขอมลในอกหนงเอนทตเพยงขอมลเดยว ตวอยางเชน นกศกษาแตละคนจะมสตบตรไดเพยงใบเดยวเทานน และสตบตรหนงใบกเปนของนกศกษาไดเพยงคนเดยวเทานนเชนกน
ภาพท 1.5 ความสมพนธของขอมลแบบหนงตอหนง
ในการพจารณาความสมพนธระหวางเอนทตแบบหนงตอหนง ตองมองสองทศ คอ มองจากซายไปขวา และกตองมองจากขวาไปซาย แลวจงน าความสมพนธทงสองทศ มาพจารณารวมกน ดงภาพท 1.6
นกศกษา
คณะ สงกด
ลกคา ใบเสรจ ไดรบ
นกศกษา สตบตร ม 1 1
11
ภาพท 1.6 วธการพจารณาความสมพนธแบบหนงตอหนง
2.4.2 ความสมพนธแบบหนงตอกลม (one to many relationship หรอ 1:M) หมายถง ขอมลในเอนทตหนง มความสมพนธกบขอมลในอกหนงเอนทตมากกวาหนงขอมล
ตวอยางเชน ลกคาหนงคนมใบเสรจไดหลายใบ เนองจากลกคาหนงคนอาจมาซอสนคาหลายครง แตใบเสรจหนงใบตองเปนของลกคาเพยงคนเดยวเทานน
ภาพท 1.7 ความสมพนธของขอมลแบบหนงตอกลม ในการพจารณาความสมพนธระหวางเอนทตแบบหนงตอกลม ตองมอง
สองทศ คอ มองจากซายไปขวา และกตองมองจากขวาไปซาย แลวจงน าความสมพนธทงสองท ศ มาพจารณารวมกน ดงภาพท 1.8
ภาพท 1.8 วธการพจารณาความสมพนธแบบหนงตอกลม
นกศกษา สตบตร 1 1
นกศกษา สตบตร 1 1
1 : 1
1 X 1 = 1 1 X 1 = 1
ลกคา ใบเสรจ ม 1 M
ลกคา ใบเสรจ 1 M
ลกคา ใบเสรจ 1 1
1 : M
1 X 1 = 1 M X 1 = M
12
2.4.3 ความสมพนธแบบกลมตอกลม (many to many relationship หรอ M:M) หมายถง ขอมลมากกวาหนงขอมลในเอนทตหนง มความสมพนธกบขอมลในอกหนงเอนทตมากกวาหนงขอมล ตวอยางเชน นกศกษาหนงคนสามารถลงทะเบยนเรยนไดหลายวชา และวชาแตละวชามนกศกษาลงทะเบยนเรยนไดหลายคน
ภาพท 1.9 ความสมพนธของขอมลแบบกลมตอกลม
ในการพจารณาความสมพนธระหวางเอนทตแบบกลมตอกลม ตองมองสองทศ คอ มองจากซายไปขวา และกตองมองจากขวาไปซาย แลวจงน าความสมพนธทงสองทศ มาพจารณารวมกน ดงภาพท 1.10
ภาพท 1.10 วธการพจารณาความสมพนธแบบกลมตอกลม
นกศกษา วชา ลงทะเบยนเรยน
M M
นกศกษา วชา 1 M
นกศกษา
วชา M 1
M : M
1 X M = M M X 1 = M
13
3. สญลกษณในแบบจ าลองอ-อาร
ตารางท 1.4 สญลกษณทส าคญๆ ในแบบจ าลองอ-อาร สญลกษณ ความหมาย
เอนทต
ความสมพนธ
แอตทรบวต
คยหลก
ตวอยาง
นกศกษา และ วชา เปนเอนทตทเราสนใจจะจดเกบ ซงเอนทตนกศกษาจะประกอบดวยแอตทรบวต ไดแก รหสนกศกษา ชอนกศกษา นามสกล และเบอรโทรศพท เปนตน โดยมรหสนกศกษาเปนคยหลก สวนเอนทตวชาจะประกอบดวยแอตทรบวต ไดแก รหสวชา ชอวชา และจ านวนหนวยกต เปนตน โดยมรหสวชาเปนคยหลก ซงความสมพนธระหวางเอนทตนกศกษาและเอนทตวชา เปนแบบกลมตอกลม คอ นกศกษาหนงคนสามารถลงทะเบยนเรยนไดหลายวชา และวชาแตละวชามนกศกษาลงทะเบยนเรยนไดหลายคน ดงนนเราสามารถน าเสนอในรปของของแผนภาพ ทเรยกวา อ-อารไดอะแกรม (E-R Diagram) ดวยการใชสญลกษณตางๆ ดงน
ภาพท 1.11 ตวอยางของ อ-อารไดอะแกรม (E-R Diagram)
นกศกษา วชา ลงทะเบยนเรยน
M M
รหสนกศกษา
นามสกล
ชอนกศกษา
เบอรโทรศพท
รหสวชา
ชอวชา จ านวนหนวยกต
14
4. การแปลงแบบจ าลองอ-อารเปนโครงสรางตารางฐานขอมล
ขนตอนในการแปลงแบบจ าลองอ -อารเปนโครงสรางของตารางในฐานขอมล มขนตอนดงตอไปน
4.1 แปลงเอนทตปกตในแบบจ าลองอ-อารเปน 1 ตาราง ซงประกอบดวยแอตทรบวตของเอนทตนนๆ โดยชอของตารางกคอชอของเอนทต และแอตทรบวตของเอนทต กคอ แอตทรบวตของตาราง ส าหรบแอตทรบวตทเปนคยหลกของตาราง ใหขดเสนใตทแอตทรบวตนน เชนเดยวกบในแบบจ าลองอ-อาร ซงจากภาพท 1.11 น ามาแปลงเปนตารางได 2 ตาราง คอ นกศกษา
รหสนกศกษา ชอ นามสกล เบอรโทรศพท 55111 สามารถ ประเสรฐกล 0-1111-1111 55112 วชา ปญญาเลศ 0-2222-2222
วชา
รหสวชา ชอวชา หนวยกต 40001 ภาษาไทย 2 40005 คณตศาสตร 3
ภาพท 1.12 โครงสรางของตารางในฐานขอมลจากการแปลงเอนทตปกตในแบบจ าลองอ-อาร
4.2 แปลงความสมพนธเปนตาราง 4.2.1 แปลงความสมพนธแบบ 1 : M นนไมตองสรางตารางใหม แตใหน า
แอตทรบวต ทเปนคยหลกของเอนทตทอยดานความสมพนธทเปน 1 ไปเพมเปนแอตทรบวตของตารางดานทมความสมพนธเปน M
4.2.2 แปลงความสมพนธแบบ M : M จะไดตารางใหม 1 ตาราง ซงประกอบดวยแอตทรบวตของความสมพนธนนรวมกบแอตทรบวตทเปนคยหลกของ 2 เอนทตทมความสมพนธ แบบ M : M
15
จากแบบจ าลองอ-อารในภาพท 1.11 สามารถสรางตารางตามขนตอนนไดอก 1 ตาราง คอ ตารางการลงทะเบยน ซงประกอบดวยแอตทรบวต รหสนกศกษา (คยหลกของ เอนทตนกศกษา) และ รหสวชา (คยหลกของเอนทตวชา) ฉะนนตารางใหมทเกดขน ซงกคอ ตารางการลงทะเบยน ม รหสนกศกษาและรหสวชา เปนคยหลก ดงน
การลงทะเบยน รหสนกศกษา รหสวชา
48111 40001 48111 40005 48112 40001
ภาพท 1.13 โครงสรางของตารางทไดจากการแปลงความสมพนธแบบ M:M
จากการแปลงแบบจ าลองอ-อารตามขนตอนขางตน สรปตารางทไดทงหมด 3 ตาราง ดงตอไปน นกศกษา
รหสนกศกษา ชอ นามสกล เบอรโทรศพท 48111 สามารถ ประเสรฐกล 0-1111-1111 48112 วชา ปญญาเลศ 0-2222-2222
วชา รหสวชา ชอวชา หนวยกต 40001 ภาษาไทย 2 40005 คณตศาสตร 3 การลงทะเบยน
รหสนกศกษา รหสวชา 48111 40001 48111 40005 48112 40001
ภาพท 1.14 โครงสรางฐานขอมลการลงทะเบยนเรยนของนกศกษา
16
ทงนโครงสรางฐานขอมลทไดจากการแปลงแบบจ าลองอ-อารนนจะอยใน 1NF ดงนนจงจ าเปนตองน ามาท านอรมลไลเซชนตอ เพอใหไดฐานขอมลทปราศจากความซ าซอนหรอซ าซอนนอยทสด แตถาไดท าการออกแบบฐานขอมลโดยการใชแบบจ าลองอ-อาร มาอยางถกตองแลว เมอแปลงเปนโครงสรางฐานขอมลแบบสมพนธ จะไดโครงสรางความสมพนธทจดกลมของแอตทรบวตมาเปนอยางด และบางทโครงสรางของความสมพนธทไดนนอาจอยในนอรมลฟอรมทสงกวานอรมลฟอรมท 1 แลว อยางไรกตามขนตอนถดมาจ าเปนตองวเคราะหความสมพนธ ระหวาง แอตทรบวต ซงกคอ วธนอรมลไลเซชนทจะกลาวตอไป
นอรมลไลเซชน (Normalization)
การออกแบบฐานขอมลทด ตองมความซ าซอนในการจดเกบขอมลนอยทสด หรอไมม ความซ าซอนเลย ซงตองอาศยหลกการในการท านอรมลไลเซชนดงรายละเอยดตอไปน
1. แนวคดเกยวกบนอรมลไลเซชน นอรมลไลเซชนเปนวธการทใชในการตรวจสอบและแกไขปญหาเกยวกบความซ าซอนของขอมล โดยด าเนนการใหขอมล ในแตละรเลชน (relation) อยในรปทเปนหนวยทเลกทสดทไมสามารถแตกออกเปนหนวยยอยๆ ไดอก โดยยงคงความสมพนธระหวางขอมลในรเลชนตางๆ ไวตามหลกการทก าหนดไวใน relational model การท านอรมลไลเซชนน เปนการด าเนนการอยาง เปนล าดบ ทก าหนดไวดวยกนเปนขนตอน ตามปญหาทเกดขนในขนตอนนนๆ ซงแตละขนตอน จะมชอตามโครงสรางขอมลทก าหนดไวดงน 1. First Normal Form (1NF) 2. Second Normal Form (2NF) 3. Third Normal Form (3NF) 4. Boyce-Codd Normal Form (BCNF) 5. Fourth Normal Form (4NF) และ 6. Fifth Normal Form (5NF) ในการออกแบบฐานขอมลเพอลดความซ าซอนในการจดเกบขอมลอยางนอยตองมคณสมบตเปน 3 NF เพราะจรงๆ แลว ในการท างานทวๆ ไป แค 3 NF กสามารถใชงานไดแลว แตส าหรบ BCNF ไปจนถง 5NF เปนฐานขอมลชนดพเศษจรงๆ ทแทบจะไมมในชวตประจ าวน โอกาสพบประมาณ 0.01 % ดงนนในทนจะศกษาเพยงแค 1NF 2NF และ 3NF เทานน เพอใชเปนแนวทางในการศกษาระดบอนตอไป
17
2. รปแบบของนอรมลฟอรม (Normal Form : NF) 2.1 First Normal Form (1NF)
ตารางทผานการท านอรมลไลเซชนระดบท 1 หรอ First Normal Form ตองมคณสมบตดงน
หมายความวาขอมลทเกบในแตละคอลมนจะตองมลกษณะเปนคาเดยว (single valued) ไมสามารถแบงยอยไดอก
ในการท านอรมลไลเซชนจะตองดขอมลในตารางเปนหลก ตวอยางเชน ขอมลในตารางท 1.5 แสดงการเกบขอมลเกยวกบนกศกษา ซงแตละคนสามารถอยชมรมและมงานอดเรกไดมากกวา 1 อยาง ตารางท 1.5 ขอมลนกศกษา รหสนกศกษา ชอ ทอย ชมรม งานอดเรก
55001 นาร ศรพร กรงเทพ ดนตร เลนกตาร อาสาพฒนาชนบท อนรกษสงแวดลอม
55002 ศรสมร อมรชย นนทบร พระพทธศาสนา สะสมพระเครอง รองเพลง
55003 อรอนงค สมประสงค กรงเทพ ดนตร ตกลอง จากตารางท 1.5 จะเหนวาขอมลในคอลมนชมรมและงานอดเรกมคามากกวา
1 คา แสดงวาไมเปน atomic หรออยในรปของ repeating group ดงนนตารางท 1.5 จงไมเปน 1NF โดยเราจะเรยกตารางทยงไมผานแมแต 1NF วา Unnormalized Form (UNF) ซงมวธการ ทจะท าใหเปน 1NF คอ
1) แยกคอลมนทมคามากกวา 1 คาออกเปนแถวใหม 2) เพมขอมลทเหมาะสมเขาไปในคอลมนทวางอยของแถวทเกดขนใหม จากตารางท 1.5 ทไมมคณสมบตเปน 1NF สามารถท าใหมคณสมบตเปน 1NF
ไดดงตารางท 1.6 ซงมรหสนกศกษา ชมรม และงานอดเรก เปนคยหลก
ไมมคอลมนใดในตารางทมคามากกวา 1 คา คอ คาในแตละคอลมนตองเปน atomic หรอไมอยในรปของ repeating group
18
ตารางท 1.6 ขอมลนกศกษาทผานการท านอรมลไลเซชน ระดบท 1 แลว รหสนกศกษา ชอ ทอย ชมรม งานอดเรก
55001 นาร ศรพร กรงเทพ ดนตร เลนกตาร 55001 นาร ศรพร กรงเทพ อาสาพฒนาชนบท เลนกตาร 55001 นาร ศรพร กรงเทพ อนรกษสงแวดลอม เลนกตาร 55002 ศรสมร อมรชย นนทบร พระพทธศาสนา สะสมพระเครอง 55002 ศรสมร อมรชย นนทบร พระพทธศาสนา รองเพลง 55003 อรอนงค สมประสงค กรงเทพ ดนตร ตกลอง
สาเหตทแยกคอลมนทมคามากกวา 1 คาออกเปนแถวใหม เนองจากไมรจ านวนทแนนอนของคาทมอยในคอลมนนน เชน ไมทราบวานกศกษาแตละคนจะมงานอดเรกกนคนละไมเกนกอยาง แตถาเราทราบจ านวนทแนนอนของคอลมนทมหลายคานน เราอาจแยกเปนคอลมนใหมไดเลย ตวอยางเชน การเกบชอผแตงของหนงสอในหองสมด ซงหนงสอเลมหนงอาจจะมผแตงหลายคน แตในการเกบชอผแตงจะเกบเพยง 3 คนเทานน ในกรณนควรจะแบงคอลมนซงเกบชอผแตงออกเปนหลายคอลมนโดยขนกบจ านวนผ แตงทมากทสดทมอยหรอเราตองการเกบขอมลเอาไว ซงจะท าใหคาของแตละคอลมน เปน Atomic ดงตารางตอไปน
ตารางท 1.7 การเกบขอมลหนงสอ ทมคณสมบตเปน 1NF
ISBN ชอหนงสอ ผแตง 1 ผแตง 2 ผแตง 3 9749151001 การจดการฐานขอมล วาสนา ทรพยแกว 9749151002 ระบบสารสนเทศ วเชยร เธยรชย นฤมล สมสกล 9749151003 เทคโนโลยสารสนเทศ สขม เฉลยทรพย ปรศนา มชฌมา กาญจนา เผอกคง
ถงแมวาตารางท 1.6 จะไดรบการออกแบบใหอยในรป 1NF แลว แตลกษณะของ
ขอมลภายในอาจกอใหเกดปญหาขนไดอก เชน ขอมลทเกยวกบนกศกษารหส 55001 ถกจดเกบไวในแถวท 1, 2 และ 3 ไดแก ชอ และทอย โดยจะเหนวาเปนการเกบขอมลทซ าซอนกน ท าใหสนเปลองเนอทในการจดเกบ และกอใหเกดปญหาในการเปลยนแปลงขอมลดวย เชน ถานกศกษารหส 55001 มการเปลยนชอ หรอทอย กตองท าการแกไขขอมลหลายแถว ซงถามการแกไขขอมลไมครบ กอาจท าใหขอมลภายในตารางเกดความขดแยงกนได ดงนนจงตองมการนอรมลไลเซชนระดบท 2 ตอไป
19
1) ตองมคณสมบตของ 1NF 2) ทก nonprime attribute จะตองขนกบ prime (primary key) ทกตว
2.2 Second Normal Form (2NF) ตารางทผานการท านอรมลไลเซชนระดบท 2 หรอ Second Normal Form ตองม
คณสมบตดงน
นนคอแอตทรบวตทไมใชคยหลกจะตองมคาขนอยกบคยหลกเทานน โดยถาคยหลกประกอบดวยแอตทรบวตทมากกวา 1 ตวกจะตองขนอยกบแอตทรบวตทงหมดทเปนคยหลก ไมใชขนอยกบบางตว
การทจะรวาแอตทรบวตใดขนอยกบแอตทรบวตใดนน ตองใชความรในเรองฟงกชนการขนตอกน หรอ functional dependency ซงเปนสงทใชแสดงความสมพนธระหวาง แอตทรบวต ในรปแบบฟงกชน เพอชวยในการตดสนใจวาแอตทรบวตทไมใชคยหลกควรจะปรากฏเปนคอลมนอยในตารางหรอควรจะแยกออกมาสรางเปนตารางใหม
สมมตวา X และ Y เปนแอตทรบวตในตารางหนง ถา Y ขนอยกบ X จะสามารถเขยนฟงกชนการขนตอกนไดดงน
การท Y ขนอยกบ X หมายความวา ทกๆคาของ X ทเราเลอกขนมา จะสามารถ
หาคาของ Y มา 1 คาทสอดคลองกบคาของ X ไดเสมอ เชน จากตารางท 1.8 เปนตารางทเกบขอมลเกยวกบนกศกษา ถาถามวานกศกษาคนใดทมรหสนกศกษาเปน 55111 กสามารถตอบไดทนทวาคอ นกศกษาทชอวา สามารถ ประเสรฐกล ดงนนชอนกศกษาจงขนอยกบรหสนกศกษา ซงเขยนเปนฟงกชนการขนตอกนไดวา รหสนกศกษา ชอ นนเอง ตารางท 1.8 ตารางนกศกษา
รหสนกศกษา (คยหลก)
ชอ
นามสกล เบอรโทรศพท
55111 สามารถ ประเสรฐกล 0-1111-1111 55112 วชา ปญญาเลศ 0-2222-2222 55113 น าทพย ปญญาเลศ 0-2222-2222 55114 สมจตร สมสกลวงศ 0-6666-6666 55115 วชา รกศกดศร 0-9999-9999
X Y
20
เมอเขาใจในเรองฟงกชนการขนตอกนแลว เราลองมาพจารณาวาตารางท 1.9 จะมคณสมบตเปน 2NF หรอไม
ตารางท 1.9 ขอมลการสงซอสนคาของลกคา รหสลกคา ชอลกคา ระดบ ประเภท รหสสนคา ชอสนคา จ านวนสนคา
001 นาร A ชนด P111 ปากกา 10 001 นาร A ชนด P222 ดนสอ 12 001 นาร A ชนด P333 ยางลบ 10 002 ศรสมร B ปานกลาง P222 ดนสอ 15 003 อรอนงค C พอใช P333 ยางลบ 16
กอนอนเราตองพจารณาวาตารางท 1.9 มคณสมบตเปน 1NF หรอไม จากขอมลในตารางจะเหนวาไมมคอลมนใดในตารางทมคามากกวา 1 คา แสดงวาผานคณสมบตเปน 1NF จากนนตองพจารณาตอวามแอตทรบวตใดเปน prime หรอคยหลก สวนทเหลอกจะเรยกวา nonprime จากตารางท 1.9 จะมแอตทรบวต รหสลกคา และ รหสสนคา เปน prime สวน ชอลกคา ทอย ชอสนคา และจ านวนสนคา เปน nonprime จากคณสมบตของ 2NF คอ nonprime ตองขนกบ prime ทกตว ในการพจารณาวาเปน 2NF หรอไม จะตองพจารณา nonprime ทละตว ซงมผลสรปการขนตอกนดงน
รหสลกคา, รหสสนคา ชอลกคา, ระดบ, ประเภท
จากขอมลในตารางท 1.9 จะสงเกตวาชอลกคา, ระดบ และประเภทจะขนกบ รหสลกคาเพยงอยางเดยว ไมขนกบรหสสนคาเลย ท าใหไมเปนไปตามคณสมบตของ 2NF และนอกจากนยงมกรณอนอกทท าใหตารางท 1.9 ไมเปนไปตามคณสมบตของ 2NF ไดแก
รหสลกคา, รหสสนคา ชอสนคา
21
จากขอมลในตารางท 1.9 จะสงเกตวาชอสนคาจะขนกบรหสสนคาเพยง อยางเดยว ไมขนกบรหสลกคาเลย ท าใหไมเปนไปตามคณสมบตของ 2NF มเพยงจ านวนสนคาอยางเดยวทขนกบรหสลกคา และรหสสนคา สรปวา
รหสลกคา,รหสสนคา จ านวนสนคา รหสลกคา ชอลกคา, ระดบ, ประเภท รหสสนคา ชอสนคา ดงนนถาตองการใหตารางท 1.9 มคณสมบตเปน 2NF จะตองท าการแตกตาราง
ออกมา ตามความสมพนธของฟงกชนการขนตอกน เปน 3 ตาราง ดงน
ตารางท 1.10 ขอมลลกคา รหสลกคา ชอลกคา ระดบ ประเภท
001 นาร A ชนด 002 ศรสมร B ปานกลาง 003 อรอนงค C พอใช
ตารางท 1.11 ขอมลสนคา ตารางท 1.12 ขอมลการสงซอสนคา รหสสนคา ชอสนคา รหสลกคา รหสสนคา จ านวนสนคา
P111 ปากกา 001 P111 10 P222 ดนสอ 001 P222 12 P333 ยางลบ 001 P333 10
002 P222 15 003 P333 16
จากตารางท 1.10 หากตองการเพมขอมลลกคาขนมาอก 1 คน อาจมปญหา
เกดขน คอ ถาลกคาทจะเพมเขาไปเปนลกคาในระดบ A แสดงวาตองเปนลกคาชนด ในชองประเภทตองใสวา “ชนด” เทานน ถาหากใสวา ปานกลาง หรอพอใช ขอมลกจะขดแยงกน เพราะฉะนนตารางทผาน 2NF บางตารางอาจเกดปญหาในเรองของการเพมขอมลได ดงนนจงตองมการนอรมลไลเซชนระดบท 3 ตอไป
22
1) ตองมคณสมบตของ 2NF 2) nonprime ตองไมขนกบ nonprime
2.3 Third Normal Form (3NF) ตารางทผานการท านอรมลไลเซชนระดบท 3 หรอ Third Normal Form ตองม
คณสมบตดงน
ตารางท 1.13 ขอมลใบเสรจรบเงนจากลกคา เลขทใบเสรจ รหสลกคา ชอลกคา ทอย
1001 43 กฤษณา 121 อ.เมอง จ.นนทบร 1002 55 ศกดสทธ 222 อ.ปากเกรด จ.นนทบร 1003 43 กฤษณา 121 อ.เมอง จ.นนทบร
จากตารางท 1.13 จะมแอตทรบวต เลขทใบเสรจ เปน prime สวน รหสลกคา ชอลกคา และทอย เปน nonprime นกศกษาตองพจารณากอนวาตารางท 1.13 มคณสมบตเปน 2NF หรอไม ซงจากขอมลจะสงเกตวามคณสมบตเปน 2NF เนองจากไมอยในรป repeating group และ nonprime ทกตวขนกบ prime ทกตว คอ รหสลกคา ชอลกคา และทอย ขนกบ เลขทใบเสรจ ซงเปน prime เพยงตวเดยว
เลขทใบเสรจ รหสลกคา, ชอลกคา, ทอย
เมอมคณสมบตเปน 2NF แลว กพจารณาตอวา nonprime ขนกบ nonprime หรอไม ถาไมม nonprime ตวใดขนตอกน กแสดงวามคณสมบตเปน 3NF แตจากขอมลในตารางท 1.13 ม nonprime บางตวทขนตอกน ไดแก ชอลกคาและทอย ขนกบรหสลกคา ท าใหไมเปนไปตามคณสมบตของ 2NF
รหสลกคา ชอลกคา, ทอย
23
ดงนนจงตองมการแตกตารางท 1.13 ออกมาเปน 2 ตาราง ตามความสมพนธของฟงกชนการขนตอกน ดงน ตารางท 1.14 ขอมลลกคาจากตารางท 1.13 ตารางท 1.15 ขอมลใบเสรจ รหสลกคา ชอลกคา ทอย เลขทใบเสรจ รหสลกคา
43 กฤษณา 121 อ.เมอง จ.นนทบร 1001 43 55 ศกดสทธ 222 อ.ปากเกรด จ.นนทบร 1002 55 1003 43
อกตวอยางหนง จากตารางท 1.10 ซงผานการนอรมลไลเซชนระดบท 2 แลว
แตยงมปญหาการเพมขอมลอย ดงทกลาวมาแลวขางตน จงตองมการท าใหเปน 3NF เนองจาก nonprime บางตวขนกบ nonprime คอ ระดบ ประเภท ดงนนจงตองแยก เปน 2 ตาราง ดงตอไปน
ตารางท 1.10 ขอมลลกคา รหสลกคา ชอลกคา ระดบ ประเภท
001 นาร A ชนด 002 ศรสมร B ปานกลาง 003 อรอนงค C พอใช
ตารางท 1.16 ขอมลลกคาจากตารางท 1.10 ตารางท 1.17 ขอมลระดบลกคา
รหสลกคา ชอลกคา ระดบ ระดบ ประเภท 001 นาร A A ชนด 002 ศรสมร B B ปานกลาง 003 อรอนงค C C พอใช
บทท 2
การใชงานโปรแกรม Microsoft Access
เมอท าการออกแบบฐานขอมลดวยแผนภาพทเรยกวา แบบจ าลองอ -อาร และท าการ นอรมลไลเซชนแลว จงน าฐานขอมลทออกแบบไวนนมาสรางใหใชงานไดจรงดวยโปรแกรมส าเรจรปในการจดการฐานขอมล ซงกคอ โปรแกรม Microsoft Accessทเลอกโปรแกรมน เนองจากเปนโปรแกรมทสามารถฝกใชงานไดงาย และเครองคอมพวเตอรสวนใหญจะมโปรแกรมน อยแลว เพราะเปนโปรแกรมหนงในชด Microsoft Office ซงสามารถศกษาการใชงานเบองตนไดดวยตนเอง ตงแตการสรางตาราง ฟอรม แบบสอบถาม และรายงาน เปนตน โครงสรางของโปรแกรม Microsoft Access
โปรแกรม Microsoft Access เปนโปรแกรมทใชในการจดการฐานขอมลอยางหนง เรมตงแตจดเกบขอมล ประมวลผล และออกสารสนเทศ ทสามารถน าไปใชประโยชนไดอยางมประสทธภาพ
โครงสรางของโปรแกรม Microsoft Access ประกอบดวย 1. ตาราง (table) ใชส าหรบเกบขอมลตางๆ ซงแตละตารางจะประกอบไปดวย
เขตขอมล (Field) และระเบยน (Record) 2. แบบสอบถาม (queries) ใชส าหรบดขอมล คนหาขอมล ตรวจสอบแกไข เพมเตม
หรอลบขอมลทตองการ 3. ฟอรม (form) ออกแบบมาเพอเปนสวนตดตอกบผ ใชส าหรบปอนขอมลและแสดง
ขอมล 4. รายงาน (report) ออกแบบมาใหมการจดรปแบบ มการค านวณและพมพออกมาเปน
รายงานได รวมทงมการสรปผลของขอมลทเลอก ซงสามารถดรายงานกอนพมพได 5. มาโคร (macro) เปนภาษาโปรแกรมงายๆ เพอการก าหนดโครงสรางล าดบขนตอนให
ปฏบตงานตามทตองการเพอตอบสนองกบเหตการณทก าหนดขน
26
6. โมดล (module) เปนการเขยนโปรแกรมดวยภาษา VBA (Visual Basic for Application) ซงใชในการท างานทคอนขางซบซอนกวาการใชแมโคร เพอใหไดฟอรมหรอรายงานตามความตองการของผใช
เรมตนใชงานโปรแกรม Microsoft Access 2010
เรยกใชงาน Microsoft Access 2010 ไดโดยการคลกทป ม Start All Programs Microsoft Access 2010 หรอคลกท icon จะปรากฏหนาจอดงภาพท 2.1
ภาพท 2.1 หนาจอเมอเปดโปรแกรม Microsoft Access 2010
27
วธการสรางฐานขอมลม 2 แบบ คอ 1. สรางฐานขอมลเปลา (Blank database) เพอก าหนดรปแบบของโครงสราง
ฐานขอมลดวยตนเอง โดยการคลกเลอก Blank database ตงชอฐานขอมลทจะสรางขนใหม และคลกป ม Create เพอสรางฐานขอมล ดงภาพท 2.2 จะปรากฏภาพท 2.3
ภาพท 2.2 วธการสรางฐานขอมลเปลา (blank database)
ภาพท 2.3 ฐานขอมลเปลา (blank database)
28
2. สรางฐานขอมลจากแมแบบ (Sample templates) ทโปรแกรมเตรยมไวหลายรปแบบส าหรบการใชงานในดานตางๆ เชน ฐานขอมลบคลากร (Personal) ฐานขอมลทางการศกษา (Education) และฐานขอมลการเงน (Finance) เปนตน โดยท าตามขนตอนไปทละขน เมอเสรจแลวจะไดไฟลฐานขอมลทน าไปใชงานไดทนท ถาตองการแกไขปรบปรงกสามารถท าไดในภายหลง ซงมวธการสรางโดยการคลกเลอก Sample templates จะปรากฏภาพท 2.4 แตตองมการเชอมตออนเทอรเนตดวย เพอเชอมตอกบเวบ Office.com
ภาพท 2.4 วธการสรางฐานขอมลจากแมแบบ (Sample templates)
29
สวนประกอบของหนาตางโปรแกรม Microsoft Access 2010
ภาพท 2.5 สวนประกอบของหนาตางโปรแกรม Microsoft Access 2010
ตารางท 2.1 หนาทของสวนประกอบของหนาตางโปรแกรม Microsoft Access 2010
สวนประกอบ หนาทการท างาน Tab File รวบรวมชดค าสงในการจดการฐานขอมล เชน การสราง การบนทก
การพมพ การส ารอง การตงคา Access 2010 Quick Access Toolbar แถบเครองมอทไดรวบรวมป มทใชงานบอยๆเอาไว เพอชวยใหท างาน
สะดวกรวดเรวขน และสามารถเพมหรอลดป มเครองมอเหลานได แถบชอเรอง (Title Bar) แถบแสดงชอเรองและเวอรชนของโปรแกรม รบบอน (Ribbon) แบงกลมการท างานหลกๆ ไวดวยกน มรบบอน Home, Create,
External Data, Database Tools, Fields, Tables บานหนาตางน าทาง (Navigation Pane)
แสดงสงตางๆ ทไดมการสรางขน เชน Table, Query, Form, Report เปนตน สามารถซอนและเปดใหมได
Document Window พนทหลกทใชในการท างาน
30
การท างานของเมนแบบรบบอน (Ribbon) ค าสงทงหมดทใชงานจะอยบนแถบสเหลยมผนผาตรงสวนบนทเรยกวา รบบอน
(Ribbon) ซงในการเรยกใชงานค าสงตางๆ จะสะดวกและรวดเรวกวาการเรยกใชค าสงในเมนแบบล าดบชนหรอเมนแบบ pull down
1. Tab Home
ภาพท 2.6 ค าสงใน Tab Home
Tab Home เปนแทบทรวบรวมค าสงเกยวกบการจดการขอมลบนหนาจอ ซงแบง
ออกเปนกลมตางๆ ดงน - View: ใชแสดงมมมองตางๆ เชน มมมองการแสดงขอมล และมมมองการ
ออกแบบ เปนตน - Clipboard: คดลอก เคลอนยาย และวางขอมลในต าแหนงทตองการ - Sort & Filter: เรยงขอมลและกรองขอมลตามเงอนไขทก าหนด - Record: กลมค าสงท างานกบเรคคอรด - Find: คนหาและแทนทขอมล - Text Formatting: จดแบบตวอกษร ยอหนา เปนตน
2. Tab Create
ภาพท 2.7 ค าสงใน Tab Create
Tab Create ประกอบดวยค าสงทใชงานการเรมตนสรางสวนตางๆ ของฐานขอมล
ไดแก - Tables: เปนกลมค าสงในการสรางตารางขอมล - Queries: เปนกลมค าสงในการสรางแบบสอบถามขอมล - Forms: เปนกลมค าสงในการสรางฟอรม
31
- Reports: เปนกลมค าสงในการสรางรายงาน - Macro & Module: เปนกลมค าสงในการสราง Macro และ Module
3. Tab External Data
ภาพท 2.8 ค าสงใน Tab External Data
Tab External Data รวบรวมค าสงในการน าเขาหรอสงออกขอมล ซงแบงออกเปนกลมตางๆ ดงน
- Import & Link: น าเขาขอมลจากฐานขอมล Microsoft Access หรอ Microsoft Excel
- Export: สงฐานขอมลออกเปน Microsoft Access, Microsoft Excel, HTML เปนตน
- Collect Data: สรางและจดการ E-mail รวมกบโปรแกรม Microsoft Outlook
4. Tab Database Tools
ภาพท 2.9 ค าสงใน Tab Database Tools
Tab Database Tools รวบรวมค าสงในการจดการฐานขอมล ไดแก - Tools: ค าสงทใชในการบบอดและซอมแซมฐานขอมล - Macro: ค าสงทใชรวมกบ Macro การแปลง Macro ใหเปนค าสงในภาษา Visual
Basic - Relationships: สรางความสมพนธระหวางตาราง - Analyze: ท าหนาทตรวจสอบและวเคราะหประสทธภาพในการท างานของ
ฐานขอมล - Move Data: ค าสงทใชในการตดตอระหวาง Access กบ SQL Server
32
- Add-Ins: ท าหนาทเพมค าสงแบบก าหนดเองและคณลกษณะใหมๆ เพอปรบปรงและเพมประสทธภาพในการท างานรวมกบโปรแกรม Access การแปลงไฟล .mdb ใหเปนไฟล .accdb
ไฟลฐานขอมลเวอรชนเกา เชน Access 97, 2000, 2002-2003 (ไฟล .mdb) จะเปดใชในโปรแกรม Access 2010 ได แตจะท างานรวมกบความสามารถใหมๆ ของ Access 2010 ไมได จงตองแปลงใหเปนไฟล .accdb (Access 2007) กอน โดย
1. เลอก Open จากเมน File 2. เลอกไฟลทตองการจะแปลง 3. เลอก Save & Publish จากเมน File 4. เลอก Access Database 5. คลก Save As 6. หลงจากแปลงไฟลเสรจแลว จะมขอความแจงวา ไฟลทแปลงแลวจะใชกบโปรแกรม
Access เวอรชนเกาไมได ใหคลก OK 7. เขาสวนโดว Database ของไฟลใหม ทหววนโดวจะบอกวารปแบบไฟล คอ Access
2007 ซงเปนไฟลแบบ .accdb
ภาพท 2.10 เปดไฟลทตองการจะแปลงไฟล
33
ภาพท 2.11 ขนตอนการแปลงไฟล.mdb ใหเปนไฟล .accdb
การจดเกบไฟลฐานขอมล
1. การจดเกบไฟลเปน .accdb และ .mdb ถาจะเกบไฟลแทนทไฟลเดม ใหใชค าสง Save ถาจะเกบไฟลใหมโดยชนดไฟล
เหมอนเดม ใช Save Database As แตถาจะเลอกชนดไฟลตางจากเดม ใชค าสง Save & Publish โดยสามารถเลอกรปแบบทตองการจดเกบไดดงน
- Access Database จะจดเกบเปนไฟล .accdb (Access2007) - Access 2002-2003 Database จะจดเกบเปนไฟล .mdb - Access 2000 Database จะจดเกบเปนไฟล .mdb 2. การจดเกบไฟลเปน .accdt (template)
ไฟลฐานขอมลทจะน ามาสราง template ตองเปนไฟล .accdb เทานน ในการจดเกบไฟลใหใชค าสง Save & Publish แลวคลกเลอกรปแบบ Template โปรแกรมจะจดเกบเปนไฟล .accdt
บทท 3
การสรางตาราง (Table)
ตาราง (Table) คอ องคประกอบหลกอยางหนงในฐานขอมล เปนสวนทตองสรางขนเปนอนดบแรก เพอใชในการเกบขอมลทงหมดทอยในฐานขอมล โดยในการสรางตารางนนมหลายรปแบบดวยกน ซงเราสามารถจดการกบขอมลในตารางเพอใหเกดความสะดวกและรวดเรวในการท างานมากยงขนได เชน การเรยงล าดบขอมล การกรองขอมล และการคนหาขอมล เปนตน
มมมองของตาราง
มมมอง (View) คอ รปแบบการท างานกบ Table ซงมอยดวยกนทงหมด 4 แบบ ตามลกษณะและวตถประสงคของการใชงาน คอ
1. มมมอง Design ใชในการออกแบบ และแกไขโครงสรางของตาราง เชน เพมลบเขตขอมล (field) แกไขชอเขตขอมล ก าหนดชนดขอมล ก าหนดคย ก าหนดคณสมบตตางๆ ของเขตขอมล (Properties) เปนตน
2. มมมอง Datasheet ใชในการปอนขอมล หรอแสดงขอมลทเกบไวในตาราง โดยแสดงในรปของตาราง ในมมมองนสามารถเพม ลบ หรอแกไขเรคอรดได
3. มมมอง PivotTable ใชวเคราะหและสรปผลขอมลในตารางโดยแสดงในรปของตารางแจกแจงรายละเอยดขอมลและสรปผลขอมล
4. มมมอง PivotChart ใชวเคราะหและสรปผลขอมลในตารางโดยแสดงในรปของแผนภมหรอ Chart
36
สวนประกอบของตาราง 1. ไอเทม (Item) คอ ขอมลทเกบอยในแตละเซลลของตาราง 2. field (Field) คอ ขอมลในแนวคอลมน (แนวตง) 3. เรคอรด (Record) คอ ขอมลในแตละแถวของตาราง 4. ตาราง (Table) คอ สวนของตารางทงหมดทใชในการเกบขอมล ซงถาน าหลายๆ
ตารางมารวมกนทงหมด จะเรยกวา ฐานขอมล หรอ Database
ภาพท 3.1 ตวอยางแสดงสวนประกอบของตาราง
37
การสรางตาราง 1. คลกแทบ Create 2. เลอกป ม Table Design 3. ตงชอ Field ในชอง Field Name 4. เลอกประเภทของขอมลในชอง Data Type 5. ใสรายละเอยดยอๆ ของแตละ field ในชอง Description (จะใสหรอไมกได) 6. ก าหนดขนาดของ field ในชองคณสมบต Field Size
ภาพท 3.2 ขนตอนการสรางตาราง
Field Properties
38
การตงชอ field - ชอ field ตองไมยาวเกน 64 ตวอกษร รวมทงชองวางดวย - หามตงชอ field ซ ากน - สามารถใชตวอกษร ตวเลข ชองวาง ในการตงชอ field ได - หามใชเครองหมาย จด (.) อศเจรย(!) และกามป([ ]) ในการตงชอ field - หามเรมชอ field ดวยชองวาง
ชนดขอมล ชนดขอมล (data type) เปนสวนทใชก าหนดชนดของขอมลในแตละ field โดยตองเลอก
ใหสอดคลองกบขอมลทจะจดเกบในแตละ field ซงมทงหมด 11 ชนด คอ 1) Text ขอความทประกอบไปดวยตวอกขระทอาจเปนตวอกษร สญลกษณพเศษ
ชองวาง หรอตวเลขประกอบกน ซงถาเปนตวเลขอยางเดยวจะตองเปนตวเลขทไมใชในการค านวณ เชน หมายเลขบตรประจ าตวประชาชน รหสนกศกษา เบอรโทรศพท บานเลขท และรหสไปรษณย เปนตน โดยสามารถบรรจขอมลไดสงสดจ านวน 255 ตวอกขระ
2) Memo ขอความทเปนตวอกขระทมความยาวมากๆ และมากกวา 255 ตวอกขระ แตไมเกน 65,535 ตวอกษร สวนมากใชในการเกบขอมลและรายละเอยดทมความยาวของขอมลมากๆ นนเอง
3) Number ขอมลทเปนตวเลข สามารถน าไปค านวณได เชน จ านวนสนคา และจ านวนหนวยกต เปนตน
4) Date/Time ขอมลทเปนวนทและเวลา 5) Currency ขอมลทเปนตวเลข ใชในการค านวณขอมลเกยวกบการเงน เชน ราคา
สนคา คาหนวยกต เงนเดอน รายรบ และรายจาย เปนตน 6) Auto Number เปนตวเลขจ านวนเตมแบบล าดบท ซงโปรแกรมจะก าหนดคาใหโดย
อตโนมตเมอมการเพมเรคอรดใหมเขามาในตาราง 7) Yes/No เปนขอมลทางตรรกะ ซงมสถานะเปนจรงหรอเทจ เชน True/False, Yes/No,
หรอ On/Off และจะเปนคาวางไมได 8) OLE Object ขอมลทเปนการเชอมโยงหรอน าเขาขอมลจากโปรแกรมอนๆ มาเกบไว
เชน รปภาพ ตาราง กราฟ และเสยง เปนตน OLE ยอมาจาก Object Linking and Embedding เปนเทคนคของการประยกตใชงานบนวนโดวส ทใชในการแลกเปลยนขอมลระหวางกน เชน สามารถน ารปภาพจากโปรแกรม PhotoShop มาใชใน Microsoft Word ได เปนตน
39
9) Hyperlink เปนขอมลหรอแอดเดรสทใชอางองไปยงขอมลอนๆ หรอระบการเชอมโยงในแบบของเวบเพจ ซงแสดงดวย URL (Uniform Resource Locator) โดยการอางองไปยงแหลงขอมลอน ซงอาจเปนไดทงไฟลฐานขอมลของโปรแกรมไมโครซอฟตแอกเซสเอง หรอไฟลของโปรแกรมอนทอยในเครองเดยวกน นอกจากนยงสามารถเชอมโยงไปยงเวบไซตบนอนเทอรเนตได
10) Attachment เหมอนไฟลแนบในอเมล เปนไฟลชนดใดกได เชน Word, Excel 11) Calculated ผลของการค านวณจาก fieldอนในตาราง Lookup Wizard … ทแสดงในเมน Data Type นน ไมใชชนดขอมลแตเปนเครองมอชวย
ปอนขอมลและน าเขาขอมลจาก Table อนๆ ของฐานขอมล คณสมบตของ field คณสมบตของ field (Field Properties) เปนสวนทใชก าหนดคณสมบตของแตละ field
เชน ก าหนดขนาดของ field รปแบบทใชในการปอนขอมล รปแบบการแสดงผลขอมล และก าหนดเงอนไขทใชตรวจสอบคาใน field เปนตน
- Field Size คอ ขนาดของ field หรอความยาวของขอมลทสามารถปอนเขาไปได เชน รหสไปรษณย จะมความยาว 5 อกขระ คา default ของ Field Size คอ 255 อกขระ ดงนนถาเราก าหนดใหเลกลงได กจะชวยลดการเกบพนทขอมล
- Format ใชในการก าหนดรปแบบในการแสดงขอมลทหนาจอ แตไมไดเปลยนขอมลจรง เชน ตารางท 3.1 ตวอยางรปแบบในการแสดงขอมล สญลกษณ ค าอธบาย ตวอยาง
@ อกขระ 1 ตว และทกชองจะตองมขอมล แตถาไมปอน Access จะใสชองวางให
@@-@@@ แสดงเปน 43-001
< แสดงตวอกษรเปนตวพมพเลกทงหมด แสดงเปน bangkok > แสดงตวอกษรเปนตวพมพใหญทงหมด แสดงเปน BANGKOK
- Decimal Place ใชก าหนดวาจะใหแสดงจดทศนยมกต าแหนง ซงจะใชไดกบขอมลชนด Number และ Currency เทานน
- Input Mask ใชก าหนดรปแบบในการปอนขอมล เพอความสะดวกรวดเรว เชน หมายเลขโทรศพท และหมายเลขบตรประชาชน เปนตน
40
- Caption ใชก าหนดขอความทแสดงในสวนหวคอลมนใน Datasheet View หรอเปนชอทจะปรากฏใน Form หรอ Report
- Default Value ใชก าหนดคาเรมตนของขอมลใน field พมพใหมได แตถาไมพมพใหมกจะมคาเปน Default Value
- Validation Rule ใชก าหนดเงอนไขส าหรบคาของขอมล เชน ใน field น จะตองปอนขอมลเพยง 2 คา คอ หญง หรอ ชาย เทานน ถาปอนนอกเหนอจากนแลว จะแสดงกรอบหนาตางเตอน และไมสามารถปอนนอกเหนอจากทก าหนดไวได เชน ตารางท 3.2 ตวอยางการก าหนดเงอนไขส าหรบคาของขอมล ก าหนดคา ความหมาย “หญง” or “ชาย” ปอนไดเปนหนงในสองคานเทานน Between #01/01/2007# and #31/12/2007#
ปอนไดตงแตวนท 1 ม.ค. 2007 ถง 31 ธ.ค. 2007 เทานน
>0 ปอนดวยคาทมากกวาศนยเทานน >= Date() ปอนดวยวนทเปนวนทปจจบนเปนตนไป
- Required ถาเลอก Yes จะตองปอนขอมลลงไปใน field เสมอ ปลอยวางไวไมได - Allow Zero Length ถาจะให field แบบ Text หรอ Memo รบขอมลทเปนคาวาง
(Null) หรอขอความทมความยาวเปนศนย เชน “” (ไมมชองวางในเครองหมายค าพด) ใหตงคาเปน Yes
- Indexed จะให field นนเปนดชนหรอไม No (ไมเปนดชน), Yes (Duplicates OK) (เปนดชนทมคาซ ากนได), Yes (No Duplicates) (เปนดชนทมคาซ ากนไมได)
- Unicode Compression ใชกบขอมล Text, Memo, และ Hyperlink เพอบบอดขอมลทใชรหสแบบ Unicode (Unicode จะใช 2 ไบตแทนอกขระ 1 ตว ท าใหใชพนทเกบขอมลมากกวาปกต) คาเรมตนของคณสมบตนเปน Yes เพอใหอกขระทกตวทไบตแรกมคาเปน 0 เชน ภาษาองกฤษ, สเปน, เยอรมน ถกบบอดบนอปกรณเกบขอมล และคลายออกเมอน าไปใช การบบอดจะไมเกดขนถาขนาดขอมล Memo นอยกวา 4,096 ไบต หรอบบอดแลวไมท าใหขนาดขอมลเลกลง
- IME Mode และ IME Sentence Mode ใชกบขอมล Text, Memo, Date/Time และ Hyperlink พบคณสมบตนใน Control Text Box, Combo Box และ List Box ในมมมอง
41
Design ของ Form ดวย ใชในกรณตดตงโปรแกรม Input Mode Editors (IME) เพอเปลยน layout ของคยบอรดใหสามารถคยตวอกษรในภาษาแถบเอเซยตะวนออก เชน จน ญป น และเกาหล เปนตน
- Smart Tags ชวยในการท างานระหวางฐานขอมล Access กบโปรแกรมภายนอกสะดวกขน เชน การเรยกใชโปรแกรมรบ-สงอเมล การนดหมาย การตดตอกบบคคล เมอผใชคลก field ขอมลทจะตดตอกบโปรแกรมภายนอกจะมไอคอน Smart Tags ทมมลางของ field ใหเลอการท างานไดจากเมน
- Text Format ใชกบขอมลแบบ Memo ถาตงคาเปน Plain Text หมายถงแสดงขอความโดยไมตองจดรปแบบ สวน Rich Text หมายถงแสดงขอความแบบจดรปแบบ เชน ตวหนา ตวเอน ยอหนา เปนตน
- Text Align ใชกบขอมลทกชนดยกเวน Attachment ท าหนาจดต าแหนงขอมล เชน ชดซาย ชดขวา เปนตน
- Show Date Picker ใชกบขอมล Date/Time เทานน ม 2 ทางเลอก คอ For Dates หมายถงใหแสดงปฏทนเลกๆ เพอเลอกวน /เดอน/ป จากปฏทนโดยไมตองคยเอง และ Never หมายถงไมตองแสดงปฏทน ผใชจะคยวน/เดอน/ป ลงไปเอง
การก าหนดคยหลก (Primary Key) - คยหลก หรอ Primary Key คอ field ทมขอมลใน record ทไมซ ากน เพอเปนตว
ก าหนดใหทก record ตางกน - ประโยชน คอ เมอมการปอนขอมลใน field ทก าหนดเปน Primary Key ซ ากนแลว ก
จะเกดค าเตอนขน และใหปอนขอมลใหม - Primary Key จะเปน field ทไมวาง จะตองมคาอยเสมอ ตวอยาง เลขบตรประจ าตว
ประชาชน และรหสผ ปวย เปนตน
42
ภาพท 3.3 ขนตอนการสรางคยหลก (Primary Key) การเพมขอมลในตาราง (เรคคอรด) การเพมขอมลในตาราง สามารถท าไดหลายวธ ดงตอไปน
ภาพท 3.4 ขนตอนการเพมขอมลในตาราง
43
การลบขอมลในตาราง 1. เลอก record ทตองการจะลบ 2. การลบขอมลในตาราง สามารถท าไดหลายวธ ดงตอไปน
ภาพท 3.5 ขนตอนการลบขอมลในตาราง การท างานกบ Record Navigator
ภาพท 3.6 การท างานกบ Record Navigator
44
การจดรปแบบขอมลในตาราง
ภาพท 3.7 เครองมอการจดรปแบบในตาราง
การเรยงล าดบขอมล (Sort) การเรยงล าดบขอมล ท าไดสองทางดงน
ภาพท 3.8 วธการเรยงล าดบขอมล (วธท 1)
47
การกรองขอมลแบบเลอกรายการ 1. คลกขวาในชองขอมลชองใดกไดของคอลมนทตองการกรอง
2. เลอก Text Filters
ภาพท 3.11 วธการกรองขอมลแบบเลอกรายการ
48
ตวอยางการกรองขอมลแบบเลอกรายการ
1. เลอก Does Not Begin With 2. เตม นาย แลวคลก OK
ภาพท 3.12 ตวอยางการกรองขอมลแบบเลอกรายการ
49
ตวอยางผลลพธการกรองขอมลแบบเลอกรายการ
ภาพท 3.13 ตวอยางผลลพธการกรองขอมลแบบเลอกรายการ
การกรอง record โดยเกบไวแตเรคอรดทขอมลในชอง Title ไมเรมตนดวยค าวา นาย
ออกไปนน จะเหลอเรคอรดดงทเหนน กด Toggle Filter เพอดกลบไปกลบมา ระหวางขอมลกอนและหลงกรอง
การคนหาขอมล
ภาพท 3.14 ขนตอนการคนหาขอมล
50
การก าหนดรายละเอยดในการคนหา - ชอง Find What พมพค าทตองการคนหา - ชอง Look In เลอกแหลงคนหา (Current Document, Current Field) - ชอง Match ก าหนดความสมพนธของขอมลทตองการคนหา o Any Part of Field ขอมลทคนเปนสวนหนงของ field o Whole Field ขอมลทคนเปนทงหมดของ field o Start Field ขอมลทคนเปนคาเรมตนของ field
- ชอง Search กาหนดทศทางการคนหา (All, Up, Down) - ท Match Case ก าหนดใหหาตรงตามทพมพเขาไปเทานน เชน ถาหา MISS จะไมเจอ
record ทเขยนวา Miss
การคนหาแบบเรว
ภาพท 3.15 ขนตอนการคนหาขอมลแบบเรว
51
การค านวณขอมลในตาราง
ภาพท 3.16 ขนตอนการค านวณขอมลในตาราง การสรางความสมพนธ (Relationship) การสรางฐานขอมลดนน สวนมากจะมมากกวา 1 ตาราง เพราะในแตละงานทเราตองการ
เกบขอมล กมกมสวนประกอบมากกวา 1 สวน เชน ขอมลโกดงเกบสนคา อาจจะมขอมลสวนของลกคา สวนของออเดอร สวนของสนคา ซงอาจแยกไปเปนสนคาขายสง ขายปลก สนคาลดราคา เปนตน ซงผสรางฐานขอมลตองคดใหรอบคอบตงแตแรก วาในงานทตองการเกบขอมลน มขอมลทแบงเปนชนดตางๆ อะไรไดบาง โดยยดวาตองแบงอยางมเอกภาพ สวนเดยวกนตองมเนอหาเปนเรองเดยวกน ในการสรางฐานขอมล ขอมลแตละสวน จะมตารางเปนของตวเอง
ตวอยางความสมพนธ - ลกคา: ชอ, นามสกล, ทอย, เบอรโทรศพท, รหสลกคา - สนคา: รหสสนคา, ชนด, ราคา, จ านวนคงคลง - ออเดอรลกคา: เบอรออเดอร, รหสลกคา, รหสสนคา, จ า นวนสนคา, วนทสง, สถานะ - ลกคาพเศษ: รหสลกคา, ระยะเวลาทเปนลกคามา, ราคาทซอเฉลยตอเดอน, วนเกด
53
ตวอยางการสรางความสมพนธของตาราง 1. คลกแทบ Database Tools และคลกป ม Relationships
ภาพท 3.18 ขนตอนการความสมพนธระหวางตาราง
2. ใช Mouse ลากใหเกดความสมพนธระหวาง CustomerID ในตาราง Customer และ CustomerOrder
54
3. จะมหนาจอขนมาถาม โดย Access จะก าหนดชนดความสมพนธใหโดยอตโนมต 4. ใหเลอก Enforce Referential Integrity, Cascade Update Related Fields, และ
Cascade Delete Related Fields เพอทวา เมอใดกตามท record มการเปลยนแปลงทตารางใดตารางหนง กให update กบตารางอนทมความสมพนธดวย
ภาพท 3.19 หนาจอ Edit Relationships
บทท 4 การสรางแบบสอบถาม (Query)
การสรางแบบสอบถาม (query) เปนเครองมอทใชในการคนหาขอมลตามเงอนไขท
ก าหนด เรยงล าดบหรอจดกลมขอมลใหอยในรปแบบทตองการ แสดงผลขอมลทมาจากหลายตารางทมความสมพนธกน เปลยนแปลงรปแบบของการแสดงผล ปรบปรงขอมลในตาราง ค านวณผลลพธหรอสรปผลขอมลจากตารางตางๆ และสามารถก าหนดตวแปรเพอรบคาทใชเปนเงอนไขในการคนหา ค านวณผลลพธ หรอวเคราะหสรปผลขอมลไดดวย
มมมองของแบบสอบถาม มมมองของแบบสอบถาม ม 5 ลกษณะ คอ
1. มมมองออกแบบ (design) เปนมมมองทใชในการออกแบบและสรางแบบสอบถาม ซงประกอบดวยเงอนไขและกฎเกณฑตางๆ ทจะน าไปใชคนหาหรอแสดงขอมลทตองการ
2. มมมองแผนขอมล (datasheet) เปนมมมองทใชแสดงขอมลทงหมดทคนหาได ตามเงอนไขทก าหนดไวใน แบบสอบถาม โดยแสดงในลกษณะ datasheet เหมอนกบ table
3. มมมอง SQL เปนมมมองทใชสรางหรอแสดงเงอนไขทก าหนดไวในแบบสอบถาม ดวยรปแบบของภาษาเอสควแอล (Structured Query Language : SQL)
4. มมมอง pivot table เปนมมมองทใชแสดงขอมลทไดจากการรนแบบสอบถาม ตามเงอนไขทก าหนดไว โดยแสดงในรปของตารางแจกแจงรายละเอยดและสรปผลขอมล
5. มมมอง pivot chart เปนมมมองทใชแสดงขอมลทไดจากการรนแบบสอบถาม โดยวเคราะหหรอสรปผล ในรปของแผนภมหรอ chart
56
ประเภทของแบบสอบถาม Access แบงแบบสอบถามเปน 5 ประเภท คอ 1. Select Query สอบถามขอมลจาก 1 หรอหลายๆ ตาราง 2. Crosstab Query สอบถามขอมลและแสดงผลลพธแบบ 2 มต โดยสลบขอมล
ระหวางแนวแถวและแนวคอลมน
3. Action Query - Make-Table Query สรางตารางใหม ซงประกอบดวย field ทเลอกจาก Table
หรอ Query อนทสรางไว - Update Query แกไขขอมลในตารางนนใหมคาตามทก าหนด
- Append Query เพม record หรอกลมของ record ใหมตอทาย record สดทายของตาราง
- Delete Query ลบ record หรอกลมของ record ออกจากตาราง 4. Parameter Query เปน Query ทใชใสคาพารามเตอรไดระหวางการประมวลผล
เพอน าไปใชคนหาขอมลหรอค านวณคา เชน ใสอตราการเปลยนแปลงตนทนและราคาสนคา เพอค านวณหาก าไร ณ อตราตางๆ
5. SQL Query สรางดวยภาษา SQL ซงเปนภาษามาตรฐานทใชจดการฐานขอมล
- Union Query รวมขอมลใน field ชนดเดยวกนจากหลายๆ ตาราง มาไวใน 1 field ของ 1 ตาราง
- Pass-Though Query สงค าสงไปยง ODBC Database Server โดยใชค าสงภาษา SQL ของ Server นน
- Data Definition Query สรางหรอเปลยนแปลงโครงสรางตารางในฐานขอมล (ค าสง SQL ทท างานในลกษณะนจะมชอเฉพาะวา Data Definition Language (DDL))
57
วธการสรางแบบสอบถาม การสรางแบบสอบถาม ท าได 3 วธ คอ 1. สรางแบบสอบถามโดยใชตวชวยสราง (Query Wizard) เปนวธการสราง
แบบสอบถาม แบบงายๆ และรวดเรว โดยตอบค าถามและใหขอมลในการสราง แบบสอบถามผานทางไดอะลอกบอกซทโปรแกรมไมโครซอฟตแอกเซสเตรยมไวใหท าตามอยางเปนล าดบขนตอน
2. สรางแบบสอบถามในมมมองออกแบบ (Design View) เปนวธการสรางแบบสอบถาม ดวยตนเอง โดยผสรางจะเปนผก าหนดรายละเอยดตางๆ เองทงหมด ซงท าใหไดแบบสอบถามทเหมาะสมและตรงกบความตองการมากทสด แตผ สรางตองมความเชยวชาญ ในการสรางและออกแบบแบบสอบถามมากกวาวธแรก
3. สรางแบบสอบถามในมมมอง SQL สรางและแกไขแบบสอบถามดวยภาษา SQL ใชกบแบบสอบถามบางประเภททสรางดวย Wizard หรอมมมอง Design ไมได เชน Union Query และ Pass-Through Query เปนตน
สรางแบบสอบถามโดยใชตวชวยสราง
เครองมอชวยสราง Query ม 4 ประเภท คอ 1.1 Simple Query Wizard สราง Select Query คนหาและประมวลผลขอมล โดยเลอก
แสดงผลลพธแบบรายละเอยดหรอผลสรปได 1.2 Crosstab Query Wizard สราง Crosstab Query คนหาและประมวลผลขอมล โดย
แสดงตารางแจกแจงขอมลทสลบแนวแถวและแนวคอลมนพรอมคาผลสรปของขอมลนน 1.3 Find Duplicate Query Wizard สราง Select Query คนหาวาม record ใดบางทม
ขอมลซ ากนใน field ทก าหนด 1.4 Find Unduplicated Query Wizard สราง Select Query คนหาขอมลในตารางหนง
โดยแสดงเฉพาะ record ทไมสามารถจบคกบ record ในตารางอนทสมพนธกน
59
การสรางแบบสอบถามดวยมมมองการออกแบบ
1. สวนประกอบในมมมองออกแบบ
ภาพท 4.2 สวนประกอบในมมมองออกแบบ
1.1 Field List Pane แสดงชอ Table / Query ทเปนแหลงขอมลของ Query แสดงชอ
field และเสนความสมพนธระหวางตาราง 1.2 Query Design Grid ประกอบดวย
- Field: ใสชอ Field ทจะใชสอบถามขอมล - Table: ใสชอ Table / Query ทเปนแหลงขอมล - Total: ใชจดกลมและค านวณคาผลสรป (จะแสดงแถวนเมอคลกป ม Totals
ในแทบ Design) - Sort: ก าหนดรปแบบการจดเรยงขอมล โดย Ascending จะเรยงจากนอยไป
มาก สวน Descending จะเรยงจากมากไปนอย และ not Sorted คอ ไมตองจดเรยง - Show: ซอน field ทไมใหแสดงคาในตารางผลลพธ โดยคลกเอาเครองหมาย
ในชองสเหลยมออก - Criteria: ใสเงอนไขทใชสอบถามขอมล
Field List
Pane
Query Design
Grid
60
2. วธการสรางแบบสอบถามดวย Query Design การสรางแบบสอบถามดวยมมมองการออกแบบเปนการสอบถามขอมลดวยการ
ออกแบบดวยตนเอง ซงมขนตอนดงน
ภาพท 4.3 ขนตอนการเรมตนสรางแบบสอบถามดวย Query Design
61
หากตองการสอบถามตารางลกคา ( tblCustomers) โดยถามถง รหสลกคา (CustomerID), ชอ (FirstName), และนามสกล (LastName) เทานน มขนตอนและผลลพธดงน
ภาพท 4.4 ขนตอนและผลลพธการสรางแบบสอบถามดวย Query Design
62
การบนทกผลของแบบสอบถามขอมล - หลงจากผลของแบบสอบถามไดแสดงออกมาในรปแบบ Datasheet หรอตาราง
แลว ใหกดป ม Save ทดานมมบนซาย - Access จะใหตงชอของแบบสอบถามน สมมตตงวา myQuery1 - หลงจาก Save แลว จะปรากฏหนาจอดงน
ภาพท 4.5 หนาจอการบนทกผลของแบบสอบถามขอมล
63
การสรางแบบสอบถามขอมลจากตารางมากกวา 1 ตาราง
ภาพท 4.6 ขนตอนการสรางแบบสอบถามขอมลจากตารางมากกวา 1 ตาราง
64
การแกไขแบบสอบถามขอมล - ใหบนทกแบบสอบถามทเพ งทาเสรจ (แบบมความสมพนธ) ดวยชอวา
myQuery2 หลงจากนนใหปดโปรแกรม MS Access - เปดโปรแกรม MS Access ใหม และเปดฐานขอมล VDO ใหมอกครง - คลก myQuery2 ในหนาตางน าทางดานซายมอเพอเปดแบบสอบถามนขนมาอก
ครง โดยครงนมจดประสงคเพอทาการแกไขแบบสอบถามขอมล - เขา Design View
ภาพท 4.7 ขนตอนการแกไขแบบสอบถามขอมล ค าตอบทได: แสดงรายการชอ ป และรหสของหนงทมการเชา รวมถงวนทเชา ชอและ
นามสกลของลกคา ทงหมด * เมอไดค าตอบแลวให Save ไวดวย
65
การก าหนดเงอนไขในการคนหาขอมล - ในการก าหนดเงอนไขในการคนหาขอมลนน เราสามารถกาหนดไดทชอง criteria ใน
Design View หลงจากทสรางแบบสอบถามแลว - เราสามารถกาหนดเงอนไขตางๆทตองการได โดยการใช operator ตางๆ ซงไดแก
1) โอเปอเรเตอรทางคณตศาสตร (เชน บวก ลบ คณ หาร เปนตน) 2) โอเปอเรเตอรทางการเปรยบเทยบและกาหนดคา (เชน เทากบ นอยกวา มากกวา
เปนตน) 3) โอเปอเรเตอรทางตรรกศาสตร (เชน และ หรอ ไม เปนตน) 4) โอเปอเรเตอรเกยวกบการเชอมขอความ
โอเปอเรเตอร (Operator) ทางคณตศาสตร
Operator ค าอธบาย + เครองหมายบวก เชน 1 + 1 = 2 – เครองหมายลบ เชน 2 – 1 = 1 * เครองหมายคณเชน 3 + 2 = 5 / เครองหมายหารเชน 5/2 = 2.5 \ เครองหมายหารแบบเอาแตจานวนเตม ไมสนใจเศษ เชน 5\2 = 2
Mod เครองหมายหารแบบเอาแตเศษทเหลอ เชน 5 Mod 2 = 1 ^ เครองหมายยกกาลง เชน 2^3 = 6
โอเปอเรเตอร (Operator) ทางการเปรยบเทยบและก าหนดคา
Operator ค าอธบาย < นอยกวา <= นอยกวาหรอเทากบ > มากกวา >= มากกวาหรอเทากบ = เทากบ <> ไมเทากบ
66
Operator ค าอธบาย Between ใชในการตรวจสอบวามคาอยในระหวาง 2 คาทกาหนดมาหรอไม เชน
Between 10000 And 20000 Like ใชในการตรวจสอบวาอกขระนนตรงกบทกาหนดหรอไม โดยท
-* แทนอกขระใดๆ กตวกได -? แทนอกขระ 1 ตว -# แทนตวเลข 1 ตว -! แทนการยกเวนอกขระทอยหลงเครองหมายน -[ ] แทนชวงตวอกษรหรอตวเลข เชน Like “สม*”
In ใชในการกาหนดวามคาใดตรงกบคาในรายการหรอไม เชน In (“บญช”, “สารสนเทศ”)
โอเปอเรเตอร (Operator) ทางตรรกศาสตร
Operator ค าอธบาย And ใหคาจรงตอเมอทง 2 คาเปนจรง Or ใหคาจรงเมอคาใดคาหนงเปนจรง Xor ใหคาจรงเมอเปนจรงเพยง 1 คา Not ใหคาเปนตรงกนขาม
โอเปอเรเตอร (Operator) ในการเชอมขอความ
Operator ค าอธบาย & ใชในการเชอมตอขอความ เชน [FirstName]&“ ”&[LastName]
67
ตวอยางการก าหนดเงอนไข
ตวอยางท 1 เลอกทกคอลมนของตาราง tblCustomerID ท City เทากบ “MyTown”
ภาพท 4.8 ขนตอนและผลลพธการก าหนดเงอนไขของตวอยางท 1
68
ตวอยางท 2 เลอกทกคอลมนของตาราง tblCustomerID ท LastName ขนตนดวย Ba
ภาพท 4.9 ขนตอนและผลลพธการก าหนดเงอนไขของตวอยางท 2
69
ตวอยางท 3 เลอกทกคอลมนของตาราง tblCustomerID ท LastName มเพยง 4 อกขระ
ภาพท 4.10 ขนตอนและผลลพธการก าหนดเงอนไขของตวอยางท 3
70
ตวอยางท 4 เปด myQuery2 ออกมา คงไวเหมอนเดมทกอยาง เวนแตวาตองการรายการทเชาหนงหลงจากวนท 25 กนยายน 2550 เทานน
ภาพท 4.11 ขนตอนและผลลพธการก าหนดเงอนไขของตวอยางท 4
71
ตวอยางท 5 จงคนหาขอมลดงน ชอลกคา รหสของหนงทลกคาคนนนเชาไป และชอหนง โดยกาหนดวา หนงตองออกมาในระหวางป 1990 – 2000 หรอ มากกวา 2002 เทานน
ภาพท 4.12 ขนตอนและผลลพธการก าหนดเงอนไขของตวอยางท 5
72
ตวอยางท 6 จงคนหาขอมลทงหมดจากตาราง tblCustomers โดยมเงอนไขวา ลกคาตองมชอจรงวา Lisa, Peggy, หรอ Mary เทานน
ภาพท 4.13 ขนตอนและผลลพธการก าหนดเงอนไขของตวอยางท 6
73
การสรางฟลดใหมจากการรวมฟลด สามารถท าไดโดยการเตมฟลดใหมทตองการในรปแบบชอฟลดใหม:
[ฟลดท 1]&[ฟลดท 2]& … เชน
ภาพท 4.14 ขนตอนและผลลพธการสรางฟลดใหมจากการรวมฟลด
74
การเรยงฟลด (Sort) - ใชตวอยางทแลวแตจะเรยงจากตวอกษรกอนไปหลง หรอ Ascending - Descending = จากหลงมาหนา (ถาเปนตวเลข มากกวา ไปนอยกวา)
ภาพท 4.15 ขนตอนและผลลพธการเรยงฟลด
75
การสรางฟลดค านวณ
เราสามารถสรางฟลดใหมเปนฟลดค านวณคดเลขใหเราได โดยใชรปแบบดงน ชอฟลดใหม: สตร
ตวอยางเชน จากตาราง tblRental จงหาวาถาลดราคา 25% จะลดเทาไร และราคาหลงลดแลวเทากบเทาไร
ภาพท 4.16 ขนตอนและผลลพธการสรางฟลดค านวณ
76
การใช IIF รปแบบ IIF(เงอนไข, คาทไดเมอเงอนไขเปนจรง, คาทไดเมอเงอนไขเปนเทจ) เชน
ภาพท 4.17 ขนตอนและผลลพธการใช IIF
77
การสรางแบบสอบถามในมมมอง SQL ในการสราง Query ดวย Wizard และสรางดวยตนเองในมมมอง Design จะเหมอนกน
ตรงทไมจ าเปนตองทราบโครงสรางภาษา SQL ทซอนอยเบองหลงการท างานของ Query นน แมจะท างานรวมกบ Query ไดโดยไมจ าเปนตองรภาษา SQL เลยกตาม แตถาไดทราบการท างานของภาษา SQL บาง กจะชวยใหท างานรวมกบ Query บางประเภททไมสามารถสรางดวย Wizard หรอมมมอง Design ได เชน Union Query, Pass-Though Query และ Data Definition Query
SQL ยอมาจาก Structured Query Language เปนภาษามาตรฐานทใชท างานรวมกบระบบฐานขอมล ชดค าสงพนฐานทส าคญในภาษา SQL ทใชจดการขอมลม 4 ค าสง คอ
1. SELECT คนหาขอมล ค าสงทใชรวมกบค าสง SELECT คอ
- DISTINCT แสดงกลม record ทคาใน field นนไมซ ากน - DISTINCTROW แสดงกลม record ทขอมลทก field ไมซ ากน - JOIN ก าหนดลกษณะการรวมกนของขอมลจากตาง Table แบงออกเปน 3
ลกษณะ คอ INNER JOIN, LEFT-OUTER JOIN และ RIGHT-OUTER JOIN - FROM ระบชอ Table / Query ทจะน ามาคนหาขอมล - WHERE ระบเงอนไขทจะใชคนหาขอมล - GROUP BY ก าหนด field ทจะใชจดกลมขอมล - ORDER BY ก าหนด field ทจะใชจดเรยงขอมล - AS ตงชอ field ใหมในตารางผลลพธ
2. UPDATE ปรบปรงขอมล 3. INSERT เพม record ใหมในฐานขอมล 4. DELETE ลบ record ออกจากฐานขอมล
บทท 5 การสรางฟอรม (Form)
นอกจากใชมมมองของแผนขอมล (datasheet) ในการปอนขอมล แกไขและแสดงผล
ขอมลแลว ยงมเครองมอ อกชนดหนง คอ ฟอรม (Form) ทชวยใหสามารถจดระบบขอมลบนจอภาพไดอยางมประสทธภาพ เนองจากรปแบบการใชงานจะไมถกก าหนดใหอยในรปของตารางเทานน แตสามารถจดรปแบบไดอยางอสระ เหมาะสมและสะดวกตอการใชงานมากขน
มมมองของฟอรม
ในการท างานรวมกนกบฟอรมจะมมมมองในเลอก 5 แบบ คอ 1. มมมองการออกแบบ (form design) ใชในการสราง ออกแบบ และแกไขฟอรม
2. มมมองฟอรม (form view) ใชแสดงผลฟอรมเพอตดตอกบผ ใชตามรปแบบ ทสรางในมมมองออกแบบ หรอสรางดวยตวชวยสราง
3. มมมองแผนขอมล (datasheet) ใชแสดงผลฟอรมในรปของแผนขอมล หรอตารางขอมล
4. มมมอง PivotTable เปนมมมองทแสดงผลฟอรมในรปของตารางแจกแจงรายละเอยดและสรปผลขอมล
5. มมมอง PivotChart เปนมมมองทแสดงผลฟอรมเพอการวเคราะหและสรปผลขอมลในรปของแผนภมหรอ Chart
80
การสรางฟอรมแบบงาย 1. เลอก Table/Query ทจะสรางฟอรม 2. คลกแทบ Create 3. คลก Form
ภาพท 5.1 ขนตอนการสรางฟอรมแบบงาย
ภาพท 5.2 ผลการสรางฟอรมแบบงาย
81
การสรางฟอรมโดยใชตวชวย (Form Wizard) 1. คลกแทบ Create 2. คลก Form Wizard 3. เลอก Table/Query ทจะเปนแหลงขอมลของฟอรม 4. ดบเบลคลกเลอก field ทจะใช หรอคลก >> เพอเลอก field ทงหมด 5. คลก Next 6. เลอกวาจะสรางฟอรมแบบไหน 7. คลก Next 8. ตงชอฟอรม 9. เลอกวาจะเปดฟอรมในมมมองใด 10. คลก Finish
83
การสรางฟอรมดวยมมมองการออกแบบ การสรางฟอรมดวยมมมองการออกแบบ (Form Design) จะไดฟอรมทตรงกบ
วตถประสงคในการใชงานมากทสด สามารถใชแกไขฟอรมทสรางดวย Form Wizard ได วธการสรางมดงน
1. คลกแทบ Create 2. คลก Form Design
ภาพท 5.4 ขนตอนการสรางฟอรมดวยมมมองการออกแบบ (Form Design)
84
ภาพท 5.5 หนาจอการสรางฟอรมดวยมมมองการออกแบบ (Form Design) ป มสรางคอนโทรลในแทบ Design
ภาพท 5.6 ป มสรางคอนโทรลในแทบ Design
86
สวนประกอบในมมมองออกแบบของฟอรม 1. Form Design Area
พนททใชสรางและออกแบบฟอรม 2. Field List
สวนทแสดงชอ Table/Query ทเปนแหลงขอมลของฟอรม จากการคลกทป ม Add
Existing Fields ในแทบ Design
ภาพท 5.7 สวนประกอบในมมมองออกแบบ
87
3. Property Sheet Property Sheet เปนสวนทใชก าหนดคณสมบตตางๆ ใหกบฟอรมหรอคอนโทรล
ตางๆ ในฟอรม 3.1 คณสมบตของฟอรม
คณสมบตทใชก าหนดรปแบบและการท างานของฟอรมจะแบงออกเปน 4 กลม คอ Format, Data, Event และ Other
ภาพท 5.8 คณสมบตทใชก าหนดรปแบบและการท างานของฟอรม (Property Sheet)
88
ตารางท 5.2 แสดงคณสมบตของฟอรม คณสมบต การท างาน
แทบ Format ใชก าหนดรปแบบการแสดงผลฟอรม เชน ก าหนดมมมอง จดต าแหนงฟอรมบนจอ และก าหนดเสนขอบ เปนตน Default View ก าหนดรปแบบการแสดงผลในมมมองฟอรม มใหเลอก 6 แบบ คอ
1. Single Form แสดง 1 record ตอ 1 หนา 2. Continuous Forms แสดงหลายๆ record ตอเนองกนไปใน 1 หนา 3. Datasheet แสดงขอมลในรปตารางเชนเดยวกบมมมอง Datasheet
ของ Table/Query 4. PivotTable แสดงขอมลในรปของตารางสรปผลขอมล 5. PivotChart แสดงขอมลในรปของกราฟ 6. Split Form เปนฟอรมแบบผสมทม 2 มมมองในฟอรมเดยวกน คอ
มมมอง Datasheet และมมมอง Form Border Style ก าหนดลกษณะเสนขอบของฟอรม ม 4 แบบ คอ
1. None ไมแสดงเสนขอบ แถบชอฟอรม เมนควบคม ป มปรบขนาดและป มปดฟอรม และผใชไมสามารถปรบขนาดฟอรมได
2. Thin แสดงเสนขอบแบบบางและสดงสวนประกอบอนๆ ขางตนท None ไมแสดง ถาจะปรบขนาดของฟอรมตองใชป มปรบขนาดเทานน ไมสามารถปรบเองแบบอสระได
3. Sizable แสดงเสนขอบแบบปกปดและสวนประกอบอนๆ ขางตน สามารถปรบขนาดไดอยางอสระโดยคลกคางไวทเสนขอบ ลากไปมาจนไดขนาดทตองการ
4. Dialog แสดงเสนขอบแบบบางและสวนประกอบอนๆ (ยกเวนป มปรบขนาด) ถาก าหนดคณสมบตน จะปรบขนาดฟอรมไมได ใหก าหนดคณสมบต Pop Up เปน Yes กอนใชคณสมบต Border Style
Record Selectors
ถาตงเปน Yes จะแสดงแถบเลอก record ในแนวตงซายสดของฟอรม
89
คณสมบต การท างาน Navigation Buttons
ถาตงเปน Yes จะแสดงแถบเลอก record ทสวนลางสดของฟอรม
Dividing Lines ถาตงเปน Yes จะแสดงเสนแบง record หรอเสนแบง section ในฟอรมออกจากกน จะเหนไดชดเจนถาเลอกแสดงฟอรมแบบ Continuous ในคณสมบต Default View
Auto Resize ถาตงเปน Yes จะปรบขนาดของฟอรมใหพอดกบพนทใชงานจรงใน section ตางๆ โดยอตโนมตเมออยในมมมองฟอรม
Auto Center ถาตงเปน Yes เมอเปดใชฟอรม ต าแหนงของฟอรมจะอยกงกลางจอโดยอตโนมต
แทบ Data ก าหนดคณสมบตการท างานรวมกบขอมล เชน ก าหนดแหลงขอมล และผใชสามารถแกไขขอมลไดหรอไม เปนตน Record Source ระบแหลงขอมลของฟอรมนน ซงอาจเปน Table/Query หรอประโยคค าสง
SELECT ในภาษา SQL Allow Additions ถาตงเปน Yes หมายถง ใหเพม record ใหมผานทางฟอรมนได โดยแสดงทง
record เดมและ record ใหมวางๆ ส าหรบปอนขอมล Allow Deletions ถาตงเปน Yes หมายถง ใหลบ record ใดๆ ในแหลงขอมลนนได Allow Edits ถาตงเปน Yes หมายถง ใหแกไข record ในแหลงขอมลนนผานทางฟอรมได Data Entry ถาตงเปน Yes หมายถง ใหเพม record ใหมได โดยแสดงเฉพาะ record
ใหมวางๆ ส าหรบปอนขอมลเทานน จะไมแสดง record เดมทมอยแลว แทบ Event ใชก าหนดเหตการณทจะใหกดการกระท า (Action) บนฟอรมหรอคอนโทรลตางๆ บนฟอรมนน ใชรวมกบ Macro และ Module ไดแก คณสมบตทขนตนดวย On ทงหมด เชน On Open, On Load, On Close และ On Click เปนตน และคณสมบตอนๆ เชน Before Insert, Before Update, After Insert และ After Update เปนตน แทบ Other Modal ถาตงเปน Yes หมายถง ถาเปดฟอรมนหลงจากเปดฟอรมอนไวกอนแลว
ฟรอมเหลานนจะท างานตอไมได จนกวาจะปดฟอรมแบบ Modal นกอน
90
คณสมบต การท างาน Pop-up ถาตงเปน Yes หมายถง เสนขอบของฟอรมจะถกเปลยนใหเปนแบบบางและ
แสดงลอยตวเหนอฟอรมอนๆ ทงหมดทเปดใชงานอยกอนแลว
3.2 คณสมบตของคอนโทรล คณสมบต การท างาน
คณสมบตทวไปของคอนโทรล คอนโทรลทกประเภทจะมคณสมบตพนฐานบางตวทเหมอนกนทมกจะถกใชงานบอย เชน คณสมบตในการซอน/แสดงคอนโทรล และคณสมบตในการตอลสนองการท างานของผใช เปนตน Visible คณสมบตในแทบ Format ของคอนโทรลนน ถาตงคาเปน No หมายถง ให
ซอนคอนโทรลนนไวเพอไมใหผใชมองเหนขณะท างานในมมมองฟอรม แตถาอยในมมมอง Design จะมองเหนและแกไขได
Enabled ก าหนดวาจะใหคอนโทรลนนตอบสนองการท างานจากผใชหรอไม - Yes ใหคอนโทรลนนท างานตามค าสง เมอผใชคลกหรอก าหนดเหตการณใดๆ ใหกบคอนโทรล - No ผใชไมสามารถคลกหรอท างานใดๆ รวมกบตวคอนโทรลนนได
Locked ถาตงเปน Yes ผใชจะไมสามารถแกไขขอมลทผกอยกบคอนโทรลนนได Tab Order ใชก าหนดล าดบแทบของคอนโทรลใหสอดคลองกบล าดบการจดวาง
คอนโทรลในฟอรมหรอสอดคลองกบล าดบการปอนขอมล (เปนตวก าหนดล าดบการเลอนเคอรเซอรไปยงคอนโทรบตางๆ ในมมมองฟอรม เมอผใชกดคยบอรด Tab หรอ Enter)
คณสมบตของ Text Box Name ตงชอใหคอนโทรล เพอน าไปใชอางองในออบเจค Macro, Module หรอออบ
เจคอนๆ ได Control Source ระบชอ field ทน ามาผกหรอเปนแหลงขอมลของคอนโทรลนน Format ก าหนดรปแบบการแสดงผลขอมบในคอนโทรลนน Input Mask ก าหนดรปแบบการปอนขอมล Enter Key Behavior
ก าหนดวาจะใหท าอะไรตอไปหลงกดคยบอรด Enter ใน Text Box นน ถาก าหนดเปน Default หมายถง ใหไปท างานใน Text Box ทอยล าดบถดไป ถาก าหนดเปน New Line in Field หมายถง ใหขนบรรทดใหมใน Text Box นน
91
คณสมบต การท างาน คณสมบตของ Option Group คณสมบตของคอนโทรลชนดนจะแยกออกเปน 2 สวน คอ สวนของ Option Group และ Option Button - Option Group Properties Name ตงชอคอนโทรล Option Group เพอน าไปใชอางองในออบเจค Macro,
Module หรอออบเจคอนๆ ได Control Source ระบชอ field ทน ามาผกกบคอนโทรล Default Value ก าหนดคาเรมตนใหคอนโทรล - Option Button Properties Name ตงชอคอนโทรล Option Group เพอน าไปใชอางองในออบเจค Macro,
Module หรอออบเจคอนๆ ได Option Value ก าหนดคาใหกบป ม Option แตละป ม เชน ป มเลอกเพศชายมคาเปน 1 และ
ป มเลอกเพศหญงมคาเปน 2 - Combo Box Properties Row Source Type
ระบแหลงขอมลของลสต คาเรมตนท Access ก าหนดไว คอ Table/Query
Row Source ระบชอ Table/Query ทเปนแหลงขอมล หรอระบประโยคค าสง SELECT ในภาษา SQL
Column Count ก าหนดจ านวนคอลมนทจะแสดงในลสต เชน 1 หมายถง แสดง 1 คอลมน Column Heads ก าหนดวาจะแสดงชอ field ทสวนหวของคอลมนในลสตหรอไม ถาก าหนด
เปน No หมายถง ไมตองแสดง Column Widths ก าหนดความกวางของแตละคอลมนในลสต Bound Column ระบหมายเลขคอลมนทจะน าขอมลไปเกบใน Table (เรยงล าดบหมายเลขจา
ซายไปขวา คอ 1, 2, 3,…) Limit To List ถาเปน Yes หมายถง จะคยขอมลทไมมในลสตลงชองวางของ Combo Box
ไมได ถาเปน No หมายถง คยขอมลทไมมในลสตลงชองวางได (กอนก าหนดเปน No ตองยกเลกการซอนคอลมนในลสตกอน)
92
คณสมบต การท างาน - Subform Properties Name ตงชอใหคอนโทรล Subform เพอน าไปใชอางองในออบเจค Macro, Module
หรออนๆ Source Object ระบชอฟอรมยอยทน ามาผกกบคอนโทรล Subform Link Child Fields ระบชอ field ในฟอรมยอยทจะน ามาเชองโยงกบ field ในฟอรมหลก Link Master Fields
ระบชอ field ในฟอรมหลกทจะน ามาเชองโยงกบ field ในฟอรมยอย
การเชอมฟอรมเขากบตารางฐานขอมล
1. เชอมทงฟอรมเขากบทงตาราง
ภาพท 5.9 ขนตอนการเชอมฟอรมทงฟอรมเขากบตารางฐานขอมล
93
2. เชอมแตละ field ของฟอรมเขากบแตละ field ของตาราง การเชอม 1 ฟอรมกบหลายๆ ตารางเขาดวยกนตองสราง query เพอเชอมตารางกอน
จงจะเชอมฟอรมเขากบตารางหลายๆตารางได
ภาพท 5.9 ขนตอนการเชอมฟอรมเขากบตารางฐานขอมลโดยเชอมแตละ field
94
การปรบแตงฟอรม ค าสง Themes จะปรบรปแบบตวอกษรและสทใชในออบเจค Table, Form และ Report
โดยมขนตอนดงน 1. คลก Themes ในแทบ Design 2. คลกเลอกรปแบบทจะใช
ภาพท 5.10 ขนตอนการปรบแตงฟอรมดวยค าสง Themes
95
การจดเกบฟอรมลงฐานขอมล
การจดเกบหรอบนทกฟอรมลงฐานขอมลใหท าดงน 1. คลก Save บนทลบาร Quick Access 2. ตงชอฟอรมในชอง Form Name 3. คลก OK
ภาพท 5.11 ขนตอนการจดเกบฟอรมลงฐานขอมล
96
ถาจดเกบฟอรมใหเปนออบเจคเประเภทอน เชน Report ท าไดดงน 1. คลกแทบ File แลวคลกค าสง Save Object as 2. ตงชอออบเจคทจะจดเกบ 3. ถาจะจดเกบเปนออบเจค Report ใหคลกเลอก Report ในชอง As แลวคลกป ม OK
ภาพท 5.12 ขนตอนการจดเกบฟอรมใหเปนออบเจคประเภทอน
บทท 6 การสรางรายงาน (Report)
การสรางรายงาน (report) เปนการน าขอมลจากตาราง หรอแบบสอบถาม ผลลพธทได
จากการคนหาขอมล หรอผลลพธทไดจากการค านวณ เชน ผลสรปยอดรวม คาเฉลย คาทางสถต และคาทไดจากการวเคราะหดวยฟงกชนทางการเงน เปนตน รวมทงการน าเสนอขอมลในรปแผนภมหรอ chart ซงสามารถแสดงขอมลไดทงบนจอภาพและพมพรายงานออกมาทางเครองพมพ มมมองของรายงาน
มมมองของรายงาน ม 3 แบบ คอ 1. มมมองออกแบบ (design) เปนมมมองทใชในการสรางและแกไขรายงาน จะม
ลกษณะคลายมมมอง design ของฟอรม
2. มมมองตวอยางกอนพมพ (print preview) เปนมมมองทใชแสดงตวอยางรายงานทสรางไวในมมมอง design เพอดผลกอนสงพมพออกทางเครองพมพ ถาผลทไดยงไมเปนทพอใจหรอมขอผดพลาดจะไดแกไขกอนพมพจรง ซงจะชวยประหยดกระดาษและเวลาไดมาก
3. มมมองแสดงตวอยางเคาโครง (layout previews) เปนมมมองทใชแสดงตวอยางโครงสรางรายงานในลกษณะเดยวกบมมมอง print preview ตางกนตรงจะแสดงขอมลตวอยางเพยงคราวๆ เทานน จะไมแสดงขอมลจรงทงหมดในรายงานนนเพอใหผ ใชมองเหนตวอยางรายงานอยางรวดเรวกอนพมพจรง
วธการสรางรายงาน
การสรางรายงาน ท าได 3 วธ คอ 1. สรางรายงานงายๆ จาก 1 Table / Query อยางรวดเรว เปนวธทเรวและงายทสด
เพยงคลกเลอก Table / Query ทจะใหเปนแหลงขอมลของรายงานนน แลวคลกป มค าสง Report ในแทบ Create
98
2. สรางรายงานโดยใชตวชวยสราง (Report Wizard) เปนการสรางรายงานโดยตอบค าถามหรอเลอกสวนประกอบตางๆ ทตองการใหแสดงในรายงาน โดยท าตามล าดบขนตอนไปทละขน ซงสามารถสรางแผนภมหรอ chart ไดดวย
3. สรางรายงานในมมมองออกแบบ (Design View) เปนการสรางรายงานดวยตวเองทงหมด ตงแตการออกแบบ เลอกสวนประกอบ ก าหนดต าแหนง เงอนไขรายละเอยด และอนๆ ทจ าเปนจนไดรายงานทตองการ
รายละเอยดในการสรางรายงานจะคลายๆ กบการสรางฟอรม ซงถาตองการความสะดวกอาจเลอกสรางรายงานแบบอตโนมต หรอใชตวชวยสราง แลวท าการแกไขในตอนหลงดวยตวเองไดในมมมองออกแบบ การสรางรายงานแบบงาย
1. เลอก Table / Query ทจะใชสรางรายงาน 2. คลกแทบ Create 3. คลก Report 4. แสดงรายงานแบบ Tabular 5. คลก Save 6. ตงชอรายงาน 7. คลก OK
100
สรางรายงานโดยใชตวชวยสราง (Report Wizard) 1. คลกแทบ Create 2. คลก Report Wizard 3. เลอก Table / Query ทจะใชสรางรายงาน 4. ดบเบลคลกเลอก field ทจะใช หรอคลกป ม >> เพอเลอกทก field อยางรวดเรว
แลวจงคลกป ม Next 5. เลอก field ทจะใชจดกลม 6. เลอก field ทจะใชเรยงขอมล แลวจงคลกป ม Next 7. เลอกรปแบบการวาง field และการวางแนวกระดาษพมพ แลวจงคลกป ม Next 8. ตงชอรายงาน 9. คลก Finish
ภาพท 6.2 ขนตอนการสรางรายงานโดยใชตวชวยสราง (Report Wizard)
102
สรางรายงานในมมมองออกแบบ วธสรางรายงานในมมมองออกแบบ (Design View) จะคลายกบการสรางฟอรมทกลาว
มาแลว โดยสงทตองพจารณาเพมเตมจากฟอรม คอ การจดกลมและเรยงล าดบขอมล รวมทงการเลอกฟงกชนเพอค านวณคาผลสรปของขอมล โดยการเรมสรางรายงานดงน
1. เลอกแทบ Create 2. คลก Report Design 3. ไดพนทส าหรบสรางรายงาน
ภาพท 6.3 ขนตอนการสรางรายงานดวยมมมองการออกแบบ (Report Design)
ภาพท 6.4 หนาจอการสรางรายงานดวยมมมองการออกแบบ (Report Design)
103
สวนประกอบในมมมองออกแบบของรายงาน แทบค าสงทใชสรางหรอแกไขและจดรปแบบรายงาน ไดแก 1. แทบ Design
ภาพท 6.5 หนาจอแทบ Design ในการสรางรายงานดวยมมมองการออกแบบ
ค าสงในแทบ Design ของ Report จะใชส าหรบการสราง/แกไขหรอท างานรวมกบ Report ซงการท างานแตละค าสงจะเหมอนกบค าสงในแทบ Design ของมมมอง Layout โดยมค าสงทเพมเขามา คอ Tab Order, Subreport in New Window, View Code และ Convert Report’s Macros to Visual Basic
2. แทบ Arrange
ภาพท 6.6 หนาจอแทบ Arrange ในการสรางรายงานดวยมมมองการออกแบบ
การท างานของค าสงในแทบนสวนใหญจะเหมอนกบค าสงในแทบ Arrange ของมมมอง Layout มค าสงทเพมเขามา คอ Size/Space, Align, Bring to Front และ Send to Back
3. แทบ Format
ภาพท 6.7 หนาจอแทบ Format ในการสรางรายงานดวยมมมองการออกแบบ
ค าสงในแทบนจะเหมอนค าสงในแทบ Format ของมมมอง Layout ทกค าสง
104
4. Report Design Area
ภาพท 6.8 หนาจอ Report Design Area ในการสรางรายงานดวยมมมองการออกแบบ
ใชส าหรบสรางและออกแบบ Report ประกอบดวยเซคชนตางๆ เหมอนฟอรม เมอสรางรายงานใหมวางๆ มมมองออกแบบ นอกจากเซคชน Detail แลว จะมเซคชน Page Header และ Page Footer ดวย นอกจากนยงมป ม Add a group และ Add a sort เพมเขามา เพอใหก าหนด field ทจะใชจดกลมและเรยงล าดบขอมลในรายงาน
105
ตวอยางการสรางรายงาน
ภาพท 6.9 ตวอยางขนตอนการสรางรายงาน
ภาพท 6.10 ตวอยางขนตอนการสรางรายงานแบบ Tabular
110
การ export รายงาน 1. การ export รายงานใหอยในรป Excel
ภาพท 6.15 ขนตอนการ export รายงานใหอยในรป Excel
112
วธสรางรายงานจากแบบสอบถาม
MS Access จะท ารายงานใหโดยรวมเอาทกๆ ฟลดในแบบสอบถามเอาไว
ภาพท 6.17 ขนตอนสรางรายงานจากแบบสอบถาม
บทท 7 การสรางมาโคร (Macro)
มาโครหรอแมโคร (Macro) เปนออบเจคฐานขอมลอกตวหนงทจะชวยใหสามารถสราง
กลมค าสงทท างานแบบอตโนมตไดอยางรวดเรว โดยการท างานจะเรยงล าดบจากค าสงแรกไปจนถงค าสงสดทายในมาโครนน เหมาะทจะน าไปใชกบการท างานทตองท าซ าๆ กน และไมซบซอนมาก โดยมาโครจะชวยลดภาระในการจดจ าค าสง ชวยใหผ ใชทไมค นเคยกบการใชค าสงใน Access สามารถน าฐานขอมลไปใชงานไดงายขน เชน ผพฒนาฐานขอมลอาจสรางป มค าสงทควบคมการท างานดวยมาโครในลกษณะตางๆ เชน ป มค าสงทใชเปดหรอปดฟอรม ป มค าสงทใชคนหาขอมลทตรงกบเงอนไขทก าหนดไว และป มค าสงส าหรบพมพรายงาน เปนตน โดยผ ใชเพยงคลกป มค าสงกสามารถท างานเหลานนได โดยไมตองเรยกใชค าสงหลายๆ ค าสงจาก Ribbon ซ าๆ กนทกครง
รจกกบมาโคร
มาโคร (Macro) คอ ชดค าสงทท างานแบบอตโนมต จดเปนโปรแกรมประเภทหนง สามารถก าหนดเงอนไขการท างานได เชน ตรวจสอบคาเพอเลอกท าหรอไมท าค าสงทก าหนดไว หรอสามารถน ามาโครมาชวยท างานในลกษณะตางๆ เชน
- สามารถคนหาและสอบถามขอมล ผานทางฟอรมหรอรายงานโดยไมตองเรยกใชออบเจค Query โดยตรง
- สามารถตรวจสอบและแกไขขอมลทปอนผานฟอรม การท างานจะยดหยนกวาการใชกฎการตรวจสอบ (validation rule) ทก าหนดในโครงสรางของตาราง
- ชวยปรบปรงการท างานแบบอตโนมต เชน การคดลอก เคลอนยาย และแกไขขอมล เปนตน
- ชวยในการสรางแอพพลเคชนโปรแกรมขนใชงานเอง เชน สรางฟอรมทประกอบดวยป มค าสงตางๆ โดยมาโครเปนตวควบคมการท างาน
114
เรมตนสรางมาโคร ขนตอนการสรางมาโครเรมตนจาก
1. คลกแทบ Create 2. คลก Macro 3. เขาสมมมอง Design ของมาโคร
ภาพท 7.1 ขนตอนการสรางมาโคร (Macro)
115
4. คลกป ม Action Catalog ในแทบ Design 5. ปรากฏหนาตาง Action Catalog ซงประกอบดวยกลมค าสงทจะน ามาใชในชดค าสง
อตโนมต
ภาพท 7.2 หนาตาง Action Catalog ค าส งใน Action Catalog
ใน Action Catalog จะแบงค าสงออกเปน 2 กลมดงน 1. กลม Program Flow
- Comment ค าสงทใชใสขอความทผใชตองการ เชน หมายเหตเตอนความจ า หรอค าอธบายการใชงาน
- Group ค าสงสรางมาโครแบบกลม - If ค าสงใชสรางเงอนไขการท างานในมาโคร - Submacro ค าสงสรางมาโครยอย
116
2. กลม Action
- Data Entry Operations กลมค าสงทใชจดการขอมล เชน DeleteRecord (ลบเรคอรด), SaveRecord (จดเกบเรคอรด) และ EditlisItems (เรยกใชค าสงแกไขขอมลในสสต Lookup) เปนตน
- Data Import/Export กลมค าสงทใชในการน าเขาและสงออกขอมลระหวางฐานขอมล Access และโปรแกรมอนๆ เชน EmailDatabaseOpject (สงออบเจคจากฐานขอมล Access ไปทางอเมล), ccExportWithFormatting (สงขอมลจาก Access ไปโปรแกรมอนๆ ตามรปแบบทก าหนดไว), ImportExportSpreadsheet (น าเขาหรอสงออกขอมล Access กบไฟลขอมล spread sheet)
- Database Objects กลมค าสงทใชจดการออบเจคฐานขอมล เชน CopyObject (คดลอกออบเจค), DeleteObject (ลบออบเจคออกจากฐานขอมล), RenameObject (เปลยนชอออบเจค), PrintObject (พมพออบเจค)
- Filter/Query/Search กลมค าสงทใชกรอง สอบถาม และคนหาขอมล เชน ApplyFilter (ก าหนดเงอนไขการกรอง), FindNextRecord (คนหาเรคอรดถดไปทตรงกบเงอนไข), OpenQuery (เปดใช Query)
- Macro Commands กลมค าสงควบคมการท างานของมาโคร เชน CancelEvent (ยกเลกเหตการณทท าใหมาโครนนท างาน), RunMacro (เรยกใชมาโครอนๆ จากมาโครทก าลงท างาน), StopAllMacros (หยดการท างานของมาโครทงหมดทรนคางอย)
- System Commands กลมค าสงทเกยวของกบการท างานของระบบฐานขอมล เชน CloseDatabase (ปดการใชงานฐานขอมล), DisplayHourglassPointer (เปลยนรปแบบตวช เมาสจากปกตเปนนาฬกาทรายขณะรนมาโคร), QuitAccess (ปดการท างานโปรแกรม Access), Sendkeys (สงรหสคยบอรดโดยไมตองกดคยบอรดจรงๆ ไปให Access หรอโปรแกรมอนๆทใชงานอย), SetWarnings (ซอน/แสดงค าเตอนของโปรแกรม Access ระหวางการท างาน)
- User Interface Commands กลมค าสงตดตอกบผ ใช เชน AddMenu (เมนทผ ใชสรางเองเพอท างานแทนเมนหลก), MessageBox (กลองขอความแจงขาวสาร/ค าเตอนใหผ ใชทราบ), ShowToolbars (ซอน/แสดงทลบารทผใชสรางเอง)
- Window Management กลมค าสงทใชจดการหนาตางการท างาน เชน Maximize (ขยายหนาตางทก าลงใชงานใหมขนาดใหญทสดหรอเตมหนาจอ) , Minimize (ยอ
117
หนาตางทก าลงใชงานลงมาใหมขนาดเลกทสด), MoveAndSizeWindow (ยายและปรบขนาดหนาตางทก าลงใชงาน) วธสรางมาโครโดยเกบเปนออบเจค Macro
เขามมมอง Design โดยคลก Create ในแทบ Macro แลวท าดงน 1. เลอกค าสงจาก Add New Action ในทนเลอก OpenForm 2. ใสคาอารกวเมนต (ถาม) ในทนคอ อารกวเมนตของค าสง OpenForm
- Form Name ใสชอฟอรม - View เปดฟอรมในมมมองใด - Filter Name ใสชอตวกรองขอมล (ถาม) - Where Condition ใสเงอนไขทใชกรองขอมล (ถาม) - Data Mode จะแสดงฟอรมแบบเพมเรคอรดได (Add) แกไขได (Edit) หรออานได
อยางเดยว (Read Only) - Window Mode แสดงฟอรมในมมมองฟอรม (Normal) ซอนฟอรม (Hidden) ยอ
ขนาดหนาตางใหเลกทสด (Icon) หรอแบบไดอะลอก (Dialog) 3. คลกลากค าสง Comment มาวางถาจะใสหมายเหต 4. คยขอความในชอง Comment เสรจแลวคลก Save 5. ตงชอมาโครในชอง Macro Name: ในทนตงชอวา Macro1 6. คลก OK 7. คลก Close เพอปดมมมองออกแบบ
119
ภาพท 7.3 ขนตอนการสรางมาโครโดยเกบเปนออบเจค Macro หากตองการน า Macro1 มาผกกบป มค าสง ทสรางขนจากฟอรม ท าตามขนตอนดงน 1) คลกป ม รายละเอยดนกศกษา 2) คลก Property Sheet 3) คลกแทบ Event
120
4) ในแถวคณสมบต On Click ใหคยชอ Macro1 หรอจะคลกป มลกศรแลวเลอกจากลสตกได
ภาพท 7.4 ขนตอนการน า Macro1 มาผกกบป มค าสง ทสรางขนจากฟอรม
121
การแกไขมาโคร 1. เพมค าสงใหม
ตวอยางเชน หากตองการน า Macro1 มาเพมค าสง MessageBox กอนค าสง OpenForm เพอแสดง dialog box กอนเปดฟอรมขอมลนกศกษา มขนตอนดงน
1) คลกเลอกค าสงทจะใชจากชอง Add New Action 2) เลอกค าสง MessageBox 3) ค าสงใหมจะอยทายสดของมาโคร
ภาพท 7.5 ขนตอนเพมค าสงใหมในมาโคร
123
2. ยายต าแหนงค าสง ถาเพมค าสง MessageBox ดวยวธคลกเลอกจากชอง Add New Action ค าสง
MessageBox จะอยทายสดของมาโคร ดงนนหากตองการใหรน MessageBox กอนตองท าการยายต าแหนง MessageBox ขนไปดานบน ดวยวธดงน
1) คลกค าสงทจะยายต าแหนง 2) คลกป ม Move up
ภาพท 7.6 ขนตอนการยายต าแหนงค าสงในมาโคร
124
วธสงรนมาโคร วธท 1 สงรนมาโครจาก Navigation Pane 1. คลกขวาทชอออบเจค Macro 2. คลกค าสง Run จากเมนลด
ภาพท 7.7 ขนตอนการสงรนมาโครจาก Navigation Pane
125
วธท 2 สงรนจากค าสง Run Macro 1. คลกแทบ Database Tools 2. คลก Run Macro
ภาพท 7.8 ขนตอนการสงรนมาโครจากค าสง Run Macro
126
วธท 3 สงรนในมมมอง Design 1. เลอกมมมอง Design 2. คลกค าสง Run ในแทบ Design
ภาพท 7.9 ขนตอนการสงรนมาโครจากมมมอง Design
บรรณานกรม
กตต ภกดวฒนะกล และจ าลอง ครอตสาหะ. การออกแบบฐานขอมล. กรงเทพฯ : เคทพ
คอมพ แอนด คอนซลท, 2546. นนทน แขวงโสภา. (2554). คมอ Access 2010 ฉบบสมบรณ. กรงเทพฯ: โปรวชน. เบญจรตน ภภกด. (2554). Design, Construction, and Management of Databases with
Microsoft Access 2010. กรงเทพฯ: สถาบนวจยจฬาภรณ. มณโชต สมานไทย. คมอการออกแบบฐานขอมลและภาษา SQL ฉบบผเรมตน. นนทบร :
อนโฟเพรส, 2546. วเชยร เปรมชยสวสด. “การออกแบบเชงแนวคดโดยใช อ-อาร โมเดล,” ใน เอกสารการสอนชด
วชาการจดการระบบฐานขอมล หนวยท 1-8. หนา 241-276. นนทบร : มหาวทยาลยสโขทยธรรมาธราช, 2546.
วเชยร เปรมชยสวสด. ระบบฐานขอมล. กรงเทพฯ : สมาคมสงเสรมเทคโนโลย (ไทย-ญป น), 2546.
วภา เจรญภณฑารกษ. “ทฤษฎการออกแบบโดยวธการนอรมลไลเซชน,” ใน เอกสารการสอนชดวชาการจดการระบบฐานขอมล หนวยท 1-8. หนา 279-341. นนทบร : มหาวทยาลยสโขทยธรรมาธราช, 2546.
ศรลกษณ โรจนกจอ านวย. การออกแบบและบรหารฐานขอมล. กรงเทพฯ : ดวงกมลสมย, 2545.
สมจตร อาจอนทร และงามนจ อาจอนทร. ระบบฐานขอมล. ขอนแกน : ภาควชาวทยาการคอมพวเตอร คณะวทยาศาสตร มหาวทยาลยขอนแกน, 2543.
โอภาส เอยมสรวงศ. การออกแบบและจดการฐานขอมล. กรงเทพฯ : ซเอดยเคชน, 2546. Connolly, Thomas M. and Begg, Carolyn E. Database systems : a practical approach to
design, implementation, and management. Essex : Addison-Wesley, 2002. Kroenke, David M. Database processing : fundamentals, design and implementation.
N.J. : Prentice Hall, 2002. Mannino, Michael V. Database application development and design. Boston : McGrae-
Hill/Irvin, 2001.
128
Post, Gerald V. Database management systems : designing and building business
applications. Boston : McGraw-Hill/Irwin, 2002. Pratt, Philip J. and Adamski, Joseph J. Concepts of database management. Australia :
Course Technology, 2000. Ramakrishnan, Raghu. Database management systems. Boston : McGraw-Hill, 2003. Rob, Peter and Coronel, Carlos. Database System: Design, Implementation, and
Management. Australia : Course Technolog/Thomson Learningy, 2002. Silberschatz, Abraham, Korth, Henry F. and Sudarshan, S. Database system concepts.
Boston : McGraw-Hill, 2002. Stephens, Ryan K. and Plew, Ronald R. Database design. Indianapolis : Sams, 2001.