Upload
ekkawit-sittiwa
View
792
Download
2
Embed Size (px)
DESCRIPTION
Introduction Database 4311701
Citation preview
ใแนะนาการใชงานฐานขอมลภาควชาวทยาศาสตรประยกต คณะวทยาศาสตรและเทคโนโลยสาขาวชาคอมพวเตอรและสาขาวชาเทคโนโลยสารสนเทศ มหาวทยาลยราชภฏนครสวรรค
1
LOGOทาไหมตองใชฐานขอมล
ทาไหมตองใชฐานขอมลทาไหมตองใชฐานขอมลถาพดถงเรองการเกบขอมลเรากเคยไดยน ไ คาวา “ฐานขอมล” กนมาไมมากกนอย และ
อาจสงสยดวยวา ฐานขอมลคออะไร แค ไ ใ เกบขอมลทาไมตองใชฐานขอมลดวย เกบ
ไวในไฟลธรรมดาๆ อยางเทกซไฟล หรอไฟ ไ ไ ไ ไฟลเวรดไมได หรออยางไรแนนอนวาจะตองมความแตกตางกนระหวางการเกบ ป ป ไ ขอมลทงสองประเภท ซงจะเปนอยางไรนนจะไดมาเรยนกนใน วนนกน ^^
2
LOGOทาไหมตองใชฐานขอมล
ความสาคญของขอมลความสาคญของขอมล
ไ ส ส กอนจะไดคาตอบทสงสย เรามาดกนกอนวาขอมลมความสาคญอยางไร ใหลองคดเลนๆ วาในแตละวนเราเกยวของกบขอมลละวนเราเกยวของกบขอมลอยางไร
3
LOGOทาไหมตองใชฐานขอมล
ยกตวอยางยกตวอยาง
การใชโทรศพท ลองมาคดดเลนๆ วาทกครงทเราการใชโทรศพท ลองมาคดดเลนๆ วาทกครงทเราโทรศพทจะเกดขอมลอะไรขนมาบาง
วนท 6 กนยายน 2550 0292521081 โทรไป วนท 6 กนยายน 2550 0292521081 โทรไป
0292521081 025865868
4
LOGOทาไหมตองใชฐานขอมล
เกบขอมลในไฟลไดอยางไรเกบขอมลในไฟลไดอยางไร โดยปกตถาเราตองการเกบขอมลอะไรกตามไวในคอมพวเตอรเรามกจะสรางไฟลขนมาใหมตามโปรแกรมทเราเลอกใชมกจะสรางไฟลขนมาใหมตามโปรแกรมทเราเลอกใช ลองสมมตวาเราเกบขอมลการใชโทรศพทมอถอไวเปนเทกซไฟล
(Text File) โดยเปด Notepad ขนมาพมพขอมลเกบไวกได(Text File) โดยเปด Notepad ขนมาพมพขอมลเกบไวกได
เนตรนภา สขเสมอ 061101100 14 3 01781100 01022546วาสนา พารวย 017897899 25 8 066221048 01022546ประสพโชค ตลอดป 099991010 1 12 053544196 01022546อทศ จตกศล 015505005 3 8 097707898 02022546วาสนา พารวย 017897899 11 3 017443443 04022546
5
LOGOทาไหมตองใชฐานขอมล
เทกซไฟล (Text File) เทกซไฟลทเกบขอมลหรอตวอกษรเอาไวโดยไมมการใสรหสพเศษ
ไ เพอควบคมรปแบบเขาไปดวยจงสามารถเปดอานจากโปรแกรมอนๆทไมใชโปรแกรมทสรางเทกซไฟลนนได (เชน ใช excel เปดเทกซไฟลได) ไฟล word หรอ *.doc ไมถอวาเปนเทกซไฟลถงแมวาจะเกบเปนตว
โป ใ ปอกษรเหมอนกนแตโปรแกรม word จะใสตวอกษรพเศษเพอจดรปแบบของเอกสาร Word ไวดวยซงเราจะเหนตวอกษรพเศษเหลานถาลองเปดไฟล *.doc ดวยโปรแกรมเทกซอดเตอร (Text editor) อยาง NotepadNotepad
6
LOGOรปแสดงลาดบขนของฐานขอมล LOGOโครงสรางการเกบขอมลในไฟล
จากตวอยางขอมลทเหนในหวขอทแลวขอมลจะถก ใ ไ โ โ เกบในไฟลโดยมโครงสรางดงน ขอมลใน 1 ไฟลจะประกอบดวย record ซงเกบขอมลทงหมดของแตมลใน ไ ล ร ว eco d เ มล ม และคนเอาไว ซงในแตละ record จะถกแบงออกเปนฟลด (Field) ซงเกบขอมลของแตละคนไวอกทหนงเกบขอมลของแตละคนไวอกทหนง
คลายกบตารางทไมมขอบปรากฏโดยมขอมลเรยงกนเรอยเนตรนภา สขเสมอ 061101100 14 3 01781100 010022546เนตรนภา สขเสมอ 061101100 14 3 01781100 010022546วาสนา พารวย 017897899 25 8 066221048 01022546
ป โ ปประสพโชค ตลอดป 099991010 1 12 053544196 01022546อทศ จตกศล 015505005 3 8 097707898 02022546
8
วาสนา พารวย 017897899 11 3 017443443 04022546
LOGOโครงสรางการเกบขอมลในไฟล
อานขอมลจากไฟลมาประมวลผลอานขอมลจากไฟลมาปร มวลผล
เนตรนภา สขเสมอ 061101100 14 3 01781100 010022546วาสนา พารวย 017897899 25 8 066221048 010225461 2 25 8 200
ประสพโชค ตลอดป 099991010 1 12 053544196 01022546อทศ จตกศล 015505005 3 8 097707898 02022546
2 25 x 8 = 200
อทศ จตกศล 015505005 3 8 097707898 02022546วาสนา พารวย 017897899 11 3 017443443 040225463
4 11 x 3 = 334 11 x 3 33
5 200 + 33 = 233
9
LOGOทาไหมตองใชฐานขอมล
จะเกดอะไรขนถารปแบบการเกบขอมลเปลยนไป ใ ไ ถาในระหวางทเราเกบขอมลอยนนเราเกดตองการเกบขอมลเพมไมวาจะดวยเหตผลใดกตาม อยางเชน ตองการนาขอมลทเคยใชคนทามา ไฟ ใ ใ ใ เกบลงไฟลเพอใหคอมพวเตอรทาแทนใหเสรจในครงเดยว
ซงในทนสมมตวาตองการเพมขอมลทบอกวารอบการใชงานในแตละเดอนของลกคาเรมตนวนไหนและโปรโมชนไหนทลกคาเลอกใช
เนตรนภา สขเสมอ 061101100 24 4201 14 3 01781100 0100225วาสนา พารวย 017897899 19 4603 25 8 066221048 01022546ประสพโชค ตลอดป 099991010 05 4602 1 12 053544196 01022546อทศ จตกศล 015505005 30 4402 3 8 097707898 02022546
10
วาสนา พารวย 017897899 19 4603 11 3 017443443 04022546
LOGOทาไหมตองใชฐานขอมล
ทาอยางไรเมอตองใชขอมลตวเดยวกน ในองคกรผใหบรการไมไดมเพยงแผนกบญชซงทาหนาทจดเกบคาโทรศพทจากลกคาเทานน ยงตองมแผนกอนซงทาหนาทแตกตางกนไป อาท เชน แผนกลกคาสมพนธ ใหบรการตอบคาถามตดตอประสานงาน เพอทจะใหทราบวาใครบางคอลกคาของเรา แผนกลกคาสมพนธจะตอง เพอทจะใหทราบวาใครบางคอลกคาของเรา แผนกลกคาสมพนธจะตองจดเกบขอมลลกคาเอาไวดวยเชนกน
เนตรนภา สขเสมอ 061101100 022557890 24 4201 308 ถ.เฟองนครวาสนา พารวย 017897899 024241150 19 4603 250/14 ถ สขมวทยเนตรนภา สขเสมอ 061101100 022557890 24 4201 308 ถ.เฟองนครวาสนา พารวย 017897899 024241150 19 4603 250/14 ถ สขมวทวาสนา พารวย 017897899 024241150 19 4603 250/14 ถ.สขมวทยประสพโชค ตลอดป 099991010 025896314 05 4602 19/78 ถ.ประชาชนอทศ จตกศล 015505005 025712221 30 4402 111 ถ เทศบาล 8
วาสนา พารวย 017897899 024241150 19 4603 250/14 ถ.สขมวทประสพโชค ตลอดป 099991010 025896314 05 4602 19/78 ถ.ประชาชนอทศ จตกศล 015505005 025712221 30 4402 111 ถ เทศบาล 8
11
อทศ จตกศล 015505005 025712221 30 4402 111 ถ.เทศบาล 8อทศ จตกศล 015505005 025712221 30 4402 111 ถ.เทศบาล 8
LOGOทาไหมตองใชฐานขอมล
เมอตองแกไขขอมลใหเปนปจจบนเสมอเมอตองแกไขขอมลใหเปนปจจบนเสมอ
ถาอยมาวนหนงมลกคาแจงเขามายง แผนกลกคาสมพนธวาไดแตงงานพรอมๆ กบ
เปลยนชอแลวจงสงชอและนามสกลใหมมาใหอพเดต ใหนกศกษาลองคดดเลนๆ ใหอพเดต ใหนกศกษาลองคดดเลนๆ วาจะเกดอะไรขนบาง ?
เมอขอมลเปลยนกตองแกไขขอมลใหถกตอง
12
LOGOทาไหมตองใชฐานขอมล
เมอตองแกไขขอมลใหเปนปจจบนเสมอ
แลวจะเกดอะไรขนถาเราลมอบเดตไฟลใดไฟลหนง ? ถาเราลมอบเดตไฟลใดไฟลหนง กจะทาใหขอมลเดยวกนในทงสองไฟลไมตรงกน ทาใหเกดความ
ไ ใ ไ ใ สบสนไดวาขอมลในไฟลใดกนแนทถกตอง
13
LOGOทาไหมตองใชฐานขอมล
เมอตองแกไขขอมลใหเปนปจจบนเสมอเมอตองแกไขขอมลใหเปนปจจบนเสมอรชนฉาย สมยทาน 061101100 022557890 24 4201 308 ถ.เฟองนครวาสนา พารวย 017897899 024241150 19 4603 250/14 ถ สขมวทยวาสนา พารวย 017897899 024241150 19 4603 250/14 ถ.สขมวทยประสพโชค ตลอดป 099991010 025896314 05 4602 19/78 ถ.ประชาชนอทศ จตกศล 015505005 025712221 30 4402 111 ถ เทศบาล 8อทศ จตกศล 015505005 025712221 30 4402 111 ถ.เทศบาล 8
เนตรนภา สขเสมอ 061101100 24 4201 14 3 01781100 0100225วาสนา พารวย 017897899 19 4603 25 8 066221048 01022546ประสพโชค ตลอดป 099991010 05 4602 1 12 053544196 01022546อทศ จตกศล 015505005 30 4402 3 8 097707898 02022546วาสนา พารวย 017897899 19 4603 11 3 017443443 04022546
14
LOGOทาไหมตองใชฐานขอมล
สรปปญหาการจดเกบขอมลไวในไฟล1 แอพพลเคชนขนอยกบขอมล (D t d d t)1. แอพพลเคชนขนอยกบขอมล (Data-dependent) ทกครงทมการเปลยนแปลงโครงสรางของไฟลทเกบขอมล จะตองมการ
แกไขแอพพลเคชนเพอใหสามารถทางานไดเหมอนเดม (เขยนโปรแกรมใหมนนเอง) โดยถาเราไมแกไขโปรแกรมกจะทาใหไดรบ
ขอมลทไดจากการประมวลผลผดพลาด
เนตรนภา สขเสมอ 061101100 24 4201 14 3 01781100 010022524 x 4201 = 100,824 !!!
เนตรนภา สขเสมอ 061101100 24 4201 14 3 01781100 0100225วาสนา พารวย 017897899 19 4603 25 8 066221048 01022546ประสพโชค ตลอดป 099991010 05 4602 1 12 053544196 01022546ประสพโชค ตลอดป 099991010 05 4602 1 12 053544196 01022546อทศ จตกศล 015505005 30 4402 3 8 097707898 02022546วาสนา พารวย 017897899 19 4603 11 3 017443443 04022546
15
วาสนา พารวย 017897899 19 4603 11 3 017443443 04022546
LOGOทาไหมตองใชฐานขอมล
( )แอพพลเคชน (Application) หมายถงโปรแกรมหรอระบบงานใดๆ กตามทนาขอมลท หมายถงโปรแกรมหรอระบบงานใดๆ กตามทนาขอมลทเกบมาใช โดยแอพพลเคชนอาจถกพฒนาดวยภาษาอะไรกไดโดยขนอยกบโปรแกรมเมอรจะถนดภาษาใด หรอเหนควรวาจะใชภาษาใดในการพฒนาจงจะเหมาะสม
16
LOGOทาไหมตองใชฐานขอมล
ปป ไ ใ ไฟ สรปปญหาการจดเกบขอมลไวในไฟล
2 (D R d d )2. เกบขอมลซาซอน (Data Redundancy) ถามความตองการใชขอมลตวเดยวกนเกดขนกอาจจะมการ
เกบขอมลซาซอนกนดงทไดยกตวอยางไปแลว โดยขอมลทเกบซาซอนกนนนอาจถกจดเกบดวยรปแบบทแตกตางกนทาเกบซาซอนกนนนอาจถกจดเกบดวยรปแบบทแตกตางกนทาใหยากตอการใชงานรวมกน
การเกบขอมลซาซอนกนหรอเกบไวหลายทนนจะทาใหเกดความยงยากในการคยขอมลใหมเขาไปและการอบเดตขอมล เกาใหถกตอง
17
LOGOทาไหมตองใชฐานขอมล
สรปปญหาการจดเกบขอมลไวในไฟลสรปปญหาการจดเกบขอมลไวในไฟล เกบขอมลซาซอน (Data Redundancy)ชอ ตาแหนง อายงาน เงนเดอนชอ ตาแหนง อายงาน เงนเดอน
รชนฉาย ผจดการ 5 $10,000ชาตชาย พนกงานขาย 2 $300
ชอ เงนเดอน คาจอดรถ OTชอ เงนเดอน คาจอดรถ OTรชนฉาย 40,000 250 0ชาตชาย 12,000 0 2,000
1. ขนเงนเดอน “ชาตชาย” เปน 16,000
18
2. รบสมครพนกงานใหม ชอ “กตตพงศ”
LOGOทาไหมตองใชฐานขอมล
สรปปญหาการจดเกบขอมลไวในไฟล สรปปญหาการจดเกบขอมลไวในไฟล3. ไมรวาขอมลใดถกตอง (Data Inconsistency)
สบเนองจากการเกบขอมลซาซอนกนทาใหมความเปนไปไดวาจะมการอพเดตขอมลเกาไมครบทกแหง (ไมวาจะเปนการเพมขอมลเขาไปใหม แกไขขอมลเกา หรอวาลบขอมลทง) ซงในกรณจะทาใหขอมลมความขดแยงกนเอง โดยเราจะไมมทางทราบไดเลยวาขอมลทถกตองคอ ขดแยงกนเอง โดยเราจะไมมทางทราบไดเลยวาขอมลทถกตองคอ อะไรถาไมตรวจสอบกอน
ชาตชาย 12,000 ชาตชาย 16,000
19
LOGOทาไหมตองใชฐานขอมล
ส ปป ไ ใ ไฟ สรปปญหาการจดเกบขอมลไวในไฟล
4 คดลอกขอมลไดงาย (Low Security)4. คดลอกขอมลไดงาย (Low Security)
20
LOGOทาไหมตองใชฐานขอมล
ส ปป ไ ใ ไฟ สรปปญหาการจดเกบขอมลไวในไฟล
4 คดลอกขอมลไดงาย (Low Security)4. คดลอกขอมลไดงาย (Low Security) เพราะวาขอมลถกเกบอยในไฟลดงนนการทใครสกคนจะมาคดลอก
ไ ไ ไ ใ ไ ไฟลดงกลาวไปจากเครองดงกลาวไมใชเรองยากนกขอเพยงแตรวาไฟลทตองการถกเกบไวในไดเรกทอรใดและมชอไฟลวาอะไรกพอ
นอกจากจะคดลอกไฟลไปใชงายๆ แลวการแกไขขอมลในไฟลกยงทาไดงายเชนกน เพราะการเกบขอมลในไฟลโดยปกตจะไมมการ
ตรวจสอบเพอจากดสทธในการใชไฟล ดงนนอาจมผ ไมเกยวของมาแกไขขอมลไดไมวาจะโดยบญเอญหรอตงใจกตาม
21
LOGOทาไหมตองใชฐานขอมล
จะดกวาไหมถาเปลยนมาใชฐานขอมล ฐานขอมล (Database) เปนแอพพลเคชนหรอโปรแกรมประเภทหนงเหมอนแอพพลเคชน หรอ เปนแอพพลเคชนหรอโปรแกรมประเภทหนงเหมอนแอพพลเคชน หรอ โปรแกรมอน ทเรารจก ไมวาจะเปน Microsoft Word, Winamp หรอ
โป Internet Explorer เพยงแตหนาทของโปรแกรมเหลานจะแตกตางกนออกไปเทานน โดยแอพพลเคชนประเภทฐานขอมลจะชวยใหการเกบขอมล การดแลขอมล และการนาขอมลมาใชทางานไดงายกวาเดมมาก นอกจากนยงไมมปญหาเหมอนกบการขอมลไวในไฟลดวย เชนเดยวกบแอพลเคชนประเภทอนทเราสามารถเลอกไดวา ถกใจ หรอเหมาะสมกบผพฒนาซงมอยหลากหลาย เชน dBase Mysql Microsoft เหมาะสมกบผพฒนาซงมอยหลากหลาย เชน dBase,Mysql,Microsoft Access,Microsoft SQL Server,Oracle เปนตน
22
LOGOทาไหมตองใชฐานขอมล
ขอดของการใชฐานขอมล
1. แอพพลเคชนไมขนกบขอมล (Data Independence) การทแอพพลเคชนตองขนอยกบโครงสรางของของขอมลทเกบอยในไฟล
ทาใหเกดการเปลยนแปลงใดๆ สงผลกระทบโดยตรงใหแกไขโปรแกรมใหมทาใหเกดการเปลยนแปลงใดๆ สงผลกระทบโดยตรงใหแกไขโปรแกรมใหมทงหมดถงแมวาจะมการเปลยนแปลงทตวเพยงเลกนอยกตาม
ฐานขอมลจงออกแบบใหมโครงสรางแบงเปนระดบซงทาใหเกดการเปลยนแปลงทเกดขนกบระดบหนงๆ ไมสงผลกระทบตอระดบอนๆเปลยนแปลงทเกดขนกบระดบหนงๆ ไมสงผลกระทบตอระดบอนๆ
23
LOGOทาไหมตองใชฐานขอมล
ขอดของการใชฐานขอมล 2. ขอมลทเหนคอขอมลทถกตองแลว
(Data Consistency)(Data Consistency) กอนทจะสามารถเกบขอมลในฐานขอมลไดเราจะตองออกแบบหรอ
วาง ผนกอนวาขอมล าง นนมความสมพนธกนอยางไร พอใหวางแผนกอนวาขอมลตางๆ นนมความสมพนธกนอยางไรเพอใหสามารถเกบขอมลรวมกนหรอแยกกนไดอยางเหมาะสม โดยการออกแบบฐานขอมล (D t b D i ) กอนนนถอเปนขนตอนทชวยออกแบบฐานขอมล (Database Design) กอนนนถอเปนขนตอนทชวยใหแนใจไดวามการเกบขอมลซาซอนกน ไ เมอไมมการเกบขอมลซาซอนกนการอพเดตขอมลตางๆ จงสามารถทา
ไดโดยไมตองกงวลวาจะลมอพเดตขอมลทใดหรอไม ขอมลทเกบอยใน ป ไ ฐานขอมลจงเปนขอมลทถกตองและเชอถอได
24
LOGOทาไหมตองใชฐานขอมล
ขอดของการใชฐานขอมล
3. ใชขอมลรวมกนได (Data Sharing) ฐานขอมลเปนการรวบรวมขอมลทงหมดขององคกรมาเกบไวทเดยวกน
อยางเปนระบบ ทาใหสามารถควบคมอะไรๆ จากศนยกลางโดยผดแล ๆ ระบบฐานขอมล หรอ DBA (Database Administrator) ได และยงทาใ ส ช ส ใช ใหสามารถแชรขอมลทสาคญ ทตองใชงานรวมกนระหวางหลายๆ หนวยงานไดโดยไมมการเกบขอมลซาซอนแตอยางใด
25
LOGOทาไหมตองใชฐานขอมล
รจกกบ DBA DBA (Database Administrator) หรอผดแลระบบฐานขอมล ผ ทดแลขอมลใหสามารถใชงานไดตลอดเวลา หนาทของ DBA นนเรมตงแตจดเกบขอมล ดแลใหผใชงานสามารถเขาถงขอมลไดเรวทสด แบคอพขอมลเพอปองกนสญหาย และความคมใหเฉพาะคนทมสทธเทานนทขอมลเพอปองกนสญหาย และความคมใหเฉพาะคนทมสทธเทานนทจะเขาถงขอมลได
26
LOGOทาไหมตองใชฐานขอมล
ขอดของการใชฐานขอมล
27
มกลไกดแลการใชงานขอมลพรอมกนดกวา (Concurrent Data)
LOGOทาไหมตองใชฐานขอมล
ขอดของการใชฐานขอมล
4. มกลไกดแลการใชงานขอมลพรอมกนดกวา (Concurrent Data)(Concurrent Data)
ขณะทการใชงานขอมลพรอมๆ กนโดยเฉพาะกรณทมการแกไขดวยแลว เราเกบขอมลไวในไฟลใ ไ ไฟ ไ ป ผ ใชคนอนๆ จะไมสามารถเขาถงไฟลเดยวกนไดแมวาจะเปนขอมลคนละตวกตาม อยางเชน ขณะทผใชคนแรกกาลงแกไขขอมลสวนตวของนาย ก อย ถาผใชคนท 2 ตองเรยกดขอมลของนาย ข ซงเกบอยในไฟลเดยวกนจะไมสามารถทาไดข ซงเกบอยในไฟลเดยวกนจะไมสามารถทาได
แตในเหตการณเดยวกนถาเปนฐานขอมล ผใชคนท 2 จะสามารถเขาถงขอมลได (ขนกบความสามารถของซอฟตแวรดวย) โดยไมตอรอแตอยางใด จงสงผลใหการใชงานขอมลมความเรว) กวามาก
28
LOGOทาไหมตองใชฐานขอมล
ขอดของการใชฐานขอมล5. ควบคมสทธการเขาถงขอมลได (High Security)
ฐานขอมล (DB)USERNAMEUSERNAME
PASSWORDPASSWORD
LOGINLOGIN
29
LOGOทาไหมตองใชฐานขอมล
ขอดของการใชฐานขอมล5. ควบคมสทธการเขาถงขอมลได (High Security)
เนองจากการควบคมฐานขอมลเปนแบบศนยกลาง (Centralized เนองจากการควบคมฐานขอมลเปนแบบศนยกลาง (Centralized Control) เราจงสามารถควบคมไดเลยวาตองการใหใครทาอะไรไดบาง โดยกาหนดดวยชอ และรหสผาน พรอมๆ กนกาหนดสทธผใชงานคนโดยกาหนดดวยชอ และรหสผาน พรอมๆ กนกาหนดสทธผใชงานคนดงกลาวสามารถทาอะไรในฐานะขอมลไดบาง
นอกจากความปลอดภยทเกดจากการกาหนดสทธใหกบผใชแลว นอกจากความปลอดภยทเกดจากการกาหนดสทธใหกบผใชแลว ขอมลทเกบอยในฐานขอมลกมความปลอดภยดวยเชนกน โดยถงแมวาจะมใครแอบคดลอกขอมลไปใชไดโดยไมผานระบบการถงแมวาจะมใครแอบคดลอกขอมลไปใชไดโดยไมผานระบบการตรวจสอบชอผ ใชและรหสผาน ขอมลนนกจะไมสามารถนาไปใชประโยชนได เนองจากถกเกบดวยวธททาใหอานไมรเรอง ถาไมเรยกประโยชนได เนองจากถกเกบดวยวธททาใหอานไมรเรอง ถาไมเรยกขอมลมาใชดวยวธปกต
30
LOGOทาไหมตองใชฐานขอมล ใ ขอดของการใชฐานขอมล
6 เรยกดขอมลไดงายและเปนมาตรฐาน (Standard 6. เรยกดขอมลไดงายและเปนมาตรฐาน (Standard Query Language)
ไมวาเราจะเลอกใชซอฟตแวรฐานขอมลตวใด หรอฐานขอมลจะใชวธการเกบขอมลแบบใดกตาม การนาขอมลไปใชยงคงทาดวยวธเดม เนองจากมการกาหนดมาตรฐานขนมาใชกบฐานขอมล (SQL) ภาษาดงกลาวจงสามารถใชไดกบฐานขอมลทกยหอ
Select nameFrom studentWhere class=‘A’;
31
;
LOGOทายเรอง
ขอมลเปนสงทมความสาคญมาก เราตองเกบขอมลไวเปน ใ ใ ไ โ ใ อยางดเพอใหสามารถนามาใชไดเมอตองการ โดยในอดต
ขอมลจะถกเกบไวในรปแบบไฟล แตไฟลกมขอจากดเนองจากไมสะดวกตอการเปลยนแปลงโครงสรางขอมลในภายหลง มโอกาสเกบขอมลซาซอน ทาใหเกดปญหาในการ ญอพเดตขอมลตามมา และการเกบขอมลในไฟลยงเสยงตอความปลอดภยทใครๆ กแอบมาคดลอกขอมลไปไดงายความปลอดภยทใครๆ กแอบมาคดลอกขอมลไปไดงาย ฐานขอมลจงถกพฒนาขนเพอแกปญหาดงกลาวทเปน
ขอจากดของไฟล
32
LOGOรจกระบบฐานขอมล
ระบบฐานขอมล (D t b S t ) คออะไร ?ระบบฐานขอมล (Database System) คออะไร ?
ในหวขอทแลวเราพดถงฐานขอมลในแบบกวางๆ ซงพดกนทวไป ฐ ๆ เรยก “ระบบฐานขอมล” สนๆ วา “ฐานขอมล” ในความเปนจรงคาวา “ระบบฐานขอมล” มความหมายแตกตางกบวา “ฐานขอมล” กบวา ฐานขอมล
33
LOGOรจกระบบฐานขอมล
ระบบฐานขอมล (Database System) คออะไร ? จะประกอบดวย 4 สวนหลก ๆ คอ
USER C
DBMS Application A
USER A USER D
ฐานขอมล (DB)USER A USER D
A li ti Bฐ ( )
Application B
34
DBAUSER B
LOGOรจกระบบฐานขอมล
ระบบฐานขอมล (Database System) ประกอบดวย 4 คอ ระบบฐานขอมล (Database System) ประกอบดวย 4 คอ1. ฐานขอมล (Database) 2. ผดแลระบบ (Database Administrator)3 โปรแกรมใชงานฐานขอมล (Application Program)3. โปรแกรมใชงานฐานขอมล (Application Program)4. ผใชงาน (User)
35
LOGOระบบฐานขอมล
ในวชาฐานขอมลในวชาฐานขอมล คาวาฐานขอมล (Database)นนมความหมายแตกตาง
จากคาวา ระบบฐานขอมล (Database System) โดยฐานขอมลเปนเพยงแคสวนประกอบหนงของฐานขอมลฐ ฐ
36
LOGOองคประกอบหลกระบบฐานขอมล (Database System)
1 ฐานขอมล (Database) 1. ฐานขอมล (Database) ฐานขอมลถอเปนสวนหนงของระบบฐานขอมล หมายถงท
สาหรบเกบรวมทงความสมพนธของขอมลเหลานนดวย ตวอยางเชน “วาสนา” กบ “250/14” มความสมพนธกน โดยท
”วาสนา” เปนชอของคนๆ หนง และ “250/14” เปนบานเลขทของวาสนาของวาสนา
ระบบฐานขอมลหนง ๆ อาจะมฐานขอมลอยหลายตวกไดเพอประโยชนการใชงานทแตกตางกนไป
37
LOGOองคประกอบหลกระบบฐานขอมล (Database System)
1 ฐานขอมล (Database) (ตอ) 1. ฐานขอมล (Database) (ตอ) สาหรบวธจดเกบขอมลนนกเปนเชนเดยวกบแอพพลเคชนหรอ
โ โปรแกรมประเภทอนๆ คอ ฐานขอมลจะเกบขอมลไวในไฟลเชนกน โดยทผ ใชจะไมทราบฐ
เลยวาขอมลจะถกเกบอยอยางไร และจานวนไฟลทใชในฐานขอมลกจะแตกตางกน ขนอยกบยหอของฐานขอมล ฐานขอมลกจะแตกตางกน ขนอยกบยหอของฐานขอมล
ตวอยางเชน Microsoft Access จะเกบไวในไฟล *.mdb เพยงไฟลเดยว ซงแตกตางกบ Oracle จะมจานวนไฟลและ
ประเภทของไฟลจานวนมาก
38
LOGOองคประกอบหลกระบบฐานขอมล (Database System)
2 ซอฟตแวรจดการระบบฐานขอมล (DBMS) 2. ซอฟตแวรจดการระบบฐานขอมล (DBMS) ฐานขอมลเปนเพยงทสาหรบเกบขอมลตางๆ เทานน การนา
ไ ใ โ ขอมลจากฐานขอมลไปใชเปนหนาทของโปรแกรมอกตว ทเราจะเรยกวา ซอฟตแวรจดการระบบฐานขอมล Database Management System (DBMS)
DBMS จะทาหนาทเปนตวกลางระหวางฐานขอมลกบ DBMS จะทาหนาทเปนตวกลางระหวางฐานขอมลกบโปรแกรมทมาใชงานฐานขอมล และผใชงานในการตดตอไป ใ ใ ไ ปยงฐานขอมลเพอทางานทผใชสงมาใหสาเรจ ไมวาจะเปนการเพมขอมล การคนหา หรอวาการลบ
39
LOGOองคประกอบหลกระบบฐานขอมล (Database System)
3 โปรแกรมผใชงานฐานขอมล (Application Program) 3. โปรแกรมผใชงานฐานขอมล (Application Program) หมายถง โปรแกรมหรอแอพพลเคชนทพฒนาขนมาเพอใช
โ ไ ใ โ ประโยชนจากขอมลทเกบไวในฐานขอมล โดยอาจะเปนโปรแกรมททางานบนเครองคอมพวเตอรหรอทางานบนอนเทอรเนตกได
40
LOGOองคประกอบหลกระบบฐานขอมล (Database System)
4 ผใชงาน (User) 4. ผใชงาน (User) ผใชงานในทน หมายถง ทก ๆ คนทเกยวของกบฐานขอมล ไม
โ ใ วาจะเปน ผพฒนาโปรแกรมขนมาใชงานฐานขอมล (Application Programmer),ผออกแบบระบบฐานขอมล (Database Designer), ผดแลระบบฐานขอมล (DBA), หรอผใชงานทวไป (End User)ผใชงานทวไป (End User)
41
LOGOประเภทของฐานขอมล
เราสามารถแบงประเภทของฐานขอมลไดเปนเราสามารถแบงประเภทของฐานขอมลไดเปน 2 ประเภทหลกๆ
1. งานทมการเขยนขอมลตลอดเวลา(OLTP : Online Transaction Processing)
2. งานทอานขอมลเปนหลก(OLAP : Online Analytical Processing)(OLAP : Online Analytical Processing)
42
LOGOTransaction คอ อะไร
เปนหนวยของการทางานทคาสงใน Transaction จะตองถกทาจนเปนหนวยของการทางานทคาสงใน Transaction จะตองถกทาจนสาเรจทงหมด ถาไมอยางนน (มคาสงใดคาสงหนงไมสาเรจ) กตองทาใหเสมอนวาไมเคยเกด Transaction นนขนมาเลย ตองทาใหเสมอนวาไมเคยเกด Transaction นนขนมาเลย เพราะวางานบางอยางถาทาคางๆ คาๆ กจะทาใหขอมลไมถกตอง
15,000 4,500บญชตนทาง บญชปลายทาง
T1
14,500 4,500
T1
T2
14,500 5,000T3
43
,500 ,
LOGOประเภทของฐานขอมล
1 งานทมการเขยนขอมลตลอดเวลา1. งานทมการเขยนขอมลตลอดเวลา(OLTP : Online Transaction Processing)
ใ ใ ไ คอ งานททาใหเกดการเปลยนแปลงขอมลในฐานขอมลไมวาจะเปนการเพมเขาไปใหม การแกไขขอมลเดม หรอการลบขอมลทไมตองการกตาม โดยเราจะเรยนงานในทนวา TransactionTransaction
44
LOGOประเภทของฐานขอมล
2 งานทอานขอมลเปนหลก2. งานทอานขอมลเปนหลก(OLAP : Online Analytical Processing)
ไ คอ หรอการประมวลผลเชงวเคราะหแบบออนไลนเปนงานทนาขอมลจากฐานขอมลมาใชประโยชนโดยไมทาการเปลยนแปลงขอมลแตอยางใด โดบกอนจะนาขอมลมาใชอาจจะมการคดเลอกขอมลแยกมาเกบตางหากเพอใชในการอาจจะมการคดเลอกขอมลแยกมาเกบตางหากเพอใชในการวเคราะหหรอไมกได
45
LOGOประเภทของฐานขอมล
2 งานทอานขอมลเปนหลก (ตอ)2. งานทอานขอมลเปนหลก (ตอ)(OLAP : Online Analytical Processing)
ไ ใ เราจะมกจะไดยนคาวา Data Warehouse ในงานประเภท OLAP โดย Data Warehouse เปนฐานขอมลซงเกบขอมลสรปทไมมการเปลยนแปลงแลวมาจากงานประเภท OLTP และจากแหลงขอมลอนๆ เพอใชในการวเคราะหหรอใชในการและจากแหลงขอมลอนๆ เพอใชในการวเคราะหหรอใชในการควรขอมลทตองการ
46
LOGOความเปนมาและมาตรฐานของภาษา SQL
ความเปนมา ความเปนมา SQL ยอมาจาก Structured Query Language อานวา “S-Q-L” หรอ “SEQUEL” เปนภาษามาตรฐานทใชกบ Relational Databaseเปนภาษามาตรฐานทใชกบ Relational Database ภาษานทาใหผ ทไมมความรทางดานการเขยนโปรแกรม
สามารถตดตอกบฐานขอมลไดเอง ไมเหมอนกบในอดต เชน การเกบขอมลไวในระบบไฟล จาเปนตองใชโปรแกรมเมอรเทานนทจะสามารถ ตดตอและดงขอมลมาใชงานได
47
LOGOควร (Query) คออะไร ?
ควร (Query) คอ ควร (Query) คอ ควร เปนคาทใชในเรองของฐานขอมล หมายถง การคนหาขอมลทตองการจากฐานขอมล ซงเรา
สามารถ ระบเงอนไขไดดวยวาตองการขอมลทมคาเปน อยางไร การควรขอมลจะใชภาษาสาหรบควรขอมลโดยเฉพาะทเรยกวา ภาษา SQL เฉพาะทเรยกวา ภาษา SQL
48
LOGOประเภทคาสงของ SQL
โ คาสงทจดการโครงสรางขอมล (Data Definition Language)
ใ ใ CREATE คอ คาสงทใชในการสรางฐานขอมล
ALTER ส ใชใ ฟ ใ ฐ ALTER คอ คาสงทใชในการเพมฟลดในฐานขอมล
DROP คอ คาสงทใชในการลบฐานขอมล DROP คอ คาสงทใชในการลบฐานขอมล
49
LOGOประเภทคาสงของ SQL
คาสงทจดการกบขอมล (Data Manipulation Language) คาสงทจดการกบขอมล (Data Manipulation Language) SELECT คอ คาสงทใชในการเลอกขอมลจากฐานขอมล INSERT คอ คาสงทใชในการเพมขอมลจากฐานขอมล UPDATE คอ คาสงทใชในการปรบขอมลใหเปนปจจบนและUPDATE คอ คาสงทใชในการปรบขอมลใหเปนปจจบนและ
บนทกลงฐานขอมล DELETE คอ คาสงทใชในการลบขอมลจากฐานขอมล
50
LOGOประเภทคาสงของ SQL
คาสงทใชควบคมระบบฐานขอมล (Data Control Language) คาสงทใชควบคมระบบฐานขอมล (Data Control Language) GRANT คอ คาสงทใชในการกาหนดสทธการเขาใชงาน
ฐานขอมล REVOKE คอ คาสงทใชในการยกเลกสทธการเขาใชงาน
ฐานขอมล ใ ไ หมายเหต ทงสองคาสงนจะใชงานไดสาหรบฐานขอมลท
รองรบผใชงานหลายๆ คนเทานน สาหรบฐานขอมลเลก ทใชบนคอมพวเตอรทวไป ๆ อยางเชน MS Access จะไมสามารถ
ใชงานคาสงกลมนได
51
LOGOแบบฝกหด
1. ขอมลมความสาคญอยางไร จงอธบายพรอมยกตวอยางประกอบ ?
2. การเกบขอมลในไฟลมขอจากดอยางไร ?
3. ฐานขอมลชวยแกปญหาทเคยเกดขนกบเกบขอมลในไฟลไดอยางไร ?
4. ระบบฐานขอมล (Database System) ประกอบดวยกสวนอะไรบางจงอธบายอธบาย
5 จงใหความหมายของคาสง sql แตละตวทเรยนมา5. จงใหความหมายของคาสง sql แตละตวทเรยนมา
52