13
แนะนําการช้งานฐานข้อมูล ภาควิชาวิทยาศาสตร์ประยุกต์ คณะวิทยาศาสตร์และเทคโนโลยี สาขาวิชาคอมพิวเตอร์และสาขาวิชาเทคโนโลยีสารสนเทศ มหาวิทยาลัยราชภัฏนครสวรรค์ 1 LOGO ทําไหมต้องใช้ฐานข้อมูล าไหมต องใช ฐานข อมล ทาไหมตองใชฐานขอม ถ้าพ ดถึงเรื ่องการเก็บข้อม ลเราก็เคยได้ยิน าว ฐานข อม นมามากกอย และ อาจสงสัยด้วยว่า ฐานข้อม ลคืออะไร แค่ เกบข อม ลทมต องฐานข อม ลด วย เกไว้ในไฟล์ธรรมดาๆ อย่างเท็กซ์ไฟล์ หรือ ไฟ์ ์ไ ่ไ ไฟเวหร ออย างรแน นอนว จะต้องมีความแตกต่างกันระหว่างการเก็บ ป็ อม ลทงสองระเภท งจะเป็ นอย างรนจะได้มาเรียนกันใน วันนี ้กัน ^^ 2 LOGO ทําไหมต้องใช้ฐานข้อมูล ความสาคญของข อมล ความสาคญของขอม สสกอนจะดคาตอบทเรามาด กันก่อนว่าข้อม ลมีความสําคัญ อย่างไร ให้ลองคิดเล่นๆ ว่าในแต่ ละวนเราเกยวข องกบข อมล ละวนเราเกยวของกบขอม อย่างไร 3 LOGO ทําไหมต้องใช้ฐานข้อมูล ยกตั อย่าง ยกตวอยาง การใช โทรศพท ลองมาคดดเล นๆ าทกคร งทเรา การใชโทรศพท ลองมาคดด เลนๆ วาทกครงทเรา โทรศัพท์จะเกิดข้อม ลอะไรขึ ้นมาบ ้าง นท6 นยายน 2550 0292521081 โทรไป วนท 6 กนยายน 2550 0292521081 โทรไป 0292521081 025865868 4

Introduction Database

Embed Size (px)

DESCRIPTION

Introduction Database 4311701

Citation preview

Page 1: Introduction Database

ใแนะนาการใชงานฐานขอมลภาควชาวทยาศาสตรประยกต คณะวทยาศาสตรและเทคโนโลยสาขาวชาคอมพวเตอรและสาขาวชาเทคโนโลยสารสนเทศ มหาวทยาลยราชภฏนครสวรรค

1

LOGOทาไหมตองใชฐานขอมล

ทาไหมตองใชฐานขอมลทาไหมตองใชฐานขอมลถาพดถงเรองการเกบขอมลเรากเคยไดยน ไ คาวา “ฐานขอมล” กนมาไมมากกนอย และ

อาจสงสยดวยวา ฐานขอมลคออะไร แค ไ ใ เกบขอมลทาไมตองใชฐานขอมลดวย เกบ

ไวในไฟลธรรมดาๆ อยางเทกซไฟล หรอไฟ ไ ไ ไ ไฟลเวรดไมได หรออยางไรแนนอนวาจะตองมความแตกตางกนระหวางการเกบ ป ป ไ ขอมลทงสองประเภท ซงจะเปนอยางไรนนจะไดมาเรยนกนใน วนนกน ^^

2

LOGOทาไหมตองใชฐานขอมล

ความสาคญของขอมลความสาคญของขอมล

ไ ส ส กอนจะไดคาตอบทสงสย เรามาดกนกอนวาขอมลมความสาคญอยางไร ใหลองคดเลนๆ วาในแตละวนเราเกยวของกบขอมลละวนเราเกยวของกบขอมลอยางไร

3

LOGOทาไหมตองใชฐานขอมล

ยกตวอยางยกตวอยาง

การใชโทรศพท ลองมาคดดเลนๆ วาทกครงทเราการใชโทรศพท ลองมาคดดเลนๆ วาทกครงทเราโทรศพทจะเกดขอมลอะไรขนมาบาง

วนท 6 กนยายน 2550 0292521081 โทรไป วนท 6 กนยายน 2550 0292521081 โทรไป

0292521081 025865868

4

Page 2: Introduction Database

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

Page 3: Introduction Database

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

Page 4: Introduction Database

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

Page 5: Introduction Database

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

Page 6: Introduction Database

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

Page 7: Introduction Database

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

Page 8: Introduction Database

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

Page 9: Introduction Database

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

Page 10: Introduction Database

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

Page 11: Introduction Database

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

Page 12: Introduction Database

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

Page 13: Introduction Database

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