Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore บทที่ 2 การจัดการระบบฐานข้อมูล

บทที่ 2 การจัดการระบบฐานข้อมูล

Published by Manote Keaowka, 2019-08-30 01:56:38

Description: ch2

Search

Read the Text Version

[การจัดการระบบฐานข้อมูล] [สปั ดาห์ ที* 2-3] [ระบบฐานขอ้ มูล] [นายมาโนชญ์ แกว้ กา่ ] [แผนกวชิ าเทคโนโลยีสารสนเทศและการส*ือสาร]

ระบบฐานข้อมูล ในการประกอบธุรกิจจะมีขอ้ มูลต่างๆเกิดขLึนมากมาย ยกตวั อยา่ งเช่น ขอ้ มูลลูกคา้ ขอ้ มูล การสงั* ของ ขอ้ มูลพนกั งาน ฯลฯ ซ*ึงขอ้ มูลเหล่านLีจะตอ้ งมีการเกบ็ รักษาท*ีดี นอกจากนLนั ในการ ตดั สินใจต่างๆจะมีขอ้ มูลที*ตอ้ งใชป้ ระมวลผลเพ*ือประกอบการตดั สินใจเป็นจาํ นวนมาก การนาํ ขอ้ มูลเหล่านLีมาใชน้ Lนั ถา้ ไม่ไดม้ ีการจดั ระเบียบการเกบ็ ที*ดี กย็ อ่ มนาํ มาใชไ้ ดอ้ ยา่ งยากลาํ บาก ทาํ ไมต้องมรี ะบบฐานข้อมูล ระบบฐานขอ้ มูลท*ีมีประสิทธิภาพจะมีหนา้ ท*ีหลกั ๆดงั ต่อไปนLี การเกบ็ รักษาข้อมูล ระบบฐานขอ้ มูลจะช่วยใหก้ ารเกบ็ รักษาขอ้ มูลเป็นระบบระเบียบ มีการ จดั หมวดหมู่ของขอ้ มูล ซ*ึงจะใหผ้ จู้ ดั เกบ็ ทาํ งานไดส้ ะดวกมากขLึน และป้องกนั ความผดิ พลาดได้ การนําข้อมูลไปใช้ ขอ้ นLีจะเป็นหวั ใจของระบบฐานขอ้ มูลเลยทีเดียว ระบบฐานจะทาํ ใหก้ าร ดึงขอ้ มูลออกมาใชส้ ะดวกและมีประสิทธิภาพมากขLึน การสรุปขอ้ มูลและประมวลผลต่างๆจะทาํ ได้ ง่ายขLึน ซ*ึงจะทาํ ใหส้ ามารถนาํ ขอ้ มูลไปประกอบการตดั สินใจได้ ยกตวั อยา่ งเช่น การเกบ็ ขอ้ มูล ใบสง*ั ของจากลูกคา้ ถา้ เราเกบ็ โดยไม่มีระบบเช่นเกบ็ สาํ เนาใบเสร็จทLงั หมดไว้ เรากจ็ ะมีเพียง หลกั ฐานวา่ ใครสง*ั อะไรไปบา้ งเท่านLนั แต่ถา้ มีการเกบ็ ลงระบบฐานขอ้ มูล โดยเฉพาะอยา่ งยงิ* เมื*อใช้ คอมพิวเตอร์เขา้ ช่วย เราจะสามารถดึงขอ้ มูลสรุป ต่างๆออกมาใชไ้ ด้ เช่น สามารถรวบรวมไดว้ า่ ลูกคา้ รายนLี สง*ั อะไรบา้ ง สินคา้ รายการนLีถูกสงั* ไปเท่าไร เหลืออีกเท่าไร ฯลฯ การแก้ไขข้อมูล เป็นอีกความสามารถหน*ึงที*ระบบฐานขอ้ มูลจะช่วยใหท้ าํ งานสะดวกขLึน ยกตวั อยา่ งเช่น จากขอ้ ที*แลว้ ตวั อยา่ งใบสงั* ของ ถา้ ลูกคา้ มีการเปล*ียนหมายเลขโทรศพั ทต์ ิดต่อ เราก็ สามารถแกท้ ีเดียวได้ โดยไม่ตอ้ งเขา้ ไปแกใ้ นใบสงั* ของแต่ละใบ เป็นตน้ ซ*ึงจากหนา้ ที*ของระบบฐานขอ้ มูลจะทาํ ใหเ้ ห็นวา่ การเกบ็ ขอ้ มูลอยา่ งมีระบบกบั ไม่มีนLนั มี ความสามารถและประโยชนใ์ ชส้ อยต่างกนั มาก ซ*ึงกค็ งจะทาํ ใหเ้ ห็นประโยชนข์ องฐานขอ้ มูล เด่นชดั ขLึน

ระบบฐานข้อมูลคอมพวิ เตอร์ อนั ท*ีจริงแลว้ นLนั ระบบฐานขอ้ มูลไม่จาํ เป็นจะตอ้ งอิงกบั คอมพิวเตอร์เสมอไป ยกตวั อยา่ ง เช่น ระบบบตั รทะเบียนหนงั สือในหอ้ งสมุด ระบบบตั รคนไข้ ฯลฯ แมแ้ ต่การท*ีเราจดบนั ทึก หมายเลขโทรศพั ทข์ องเพื*อน กถ็ ือไดว้ า่ เป็นระบบฐานขอ้ มูลอยา่ งหน*ึง ซ*ึงระบบดงั กล่าวนLี ถา้ มีการ ใชห้ ลกั ของการจดั การฐานขอ้ มูลท*ีถูกตอ้ งแลว้ ละก็ จะสามารถมีความสะดวกในการใชส้ อยไดใ้ น ระดบั หน*ึง แต่ทวา่ ในปัจจุบนั เมื*อเราพดู ถึงระบบฐานขอ้ มูล เรากม็ กั จะนึกถึงระบบฐาน ขอ้ มูลคอมพิวเตอร์ การนาํ คอมพิวเตอร์มาใชใ้ นการจดั การฐานขอ้ มูลนLนั อาจพดู ไดว้ า่ เป็นการใช้ คอมพิวเตอร์ที*ตรงกบั ขอ้ เด่นท*ีสุดของคอมพิวเตอร์อยา่ งหน*ึง กค็ ือ ใชก้ บั งานที*มีการทาํ ซLาํ เป็น จาํ นวนมาก มีการประมวลผลท*ีเป็นระบบ ซ*ึงคอมพิวเตอร์จะไม่มีความผดิ พลาดอนั เกิดจากการ เหนื*อยลา้ หรือเบ*ือหน่าย มาใช้ระบบฐานข้อมูลคอมพวิ เตอร์กนั ดกี ว่า จากตวั อยา่ งที*ยกมา คงจะเห็นขอ้ ดีขอระบบฐานขอ้ มูลคอมพิวเตอร์แลว้ ในขLนั ต่อไปในการ จะเร*ิมใชฐ้ านขอ้ มูล อนั ดบั แรกกค็ งจะเป็นการเลือกโปรแกรมจดั การฐานขอ้ มูลมาใช้ ในปัจจุบนั โปรแกรมจดั การฐานขอ้ มูลมีใหเ้ ลือกมากมายหลายชนิด มีทLงั โปรแกรมที*ขายในทอ้ งตลาดทว*ั ไป เช่น Microsoft access, ORACLE ฯลฯ หรือโปรแกรมที*แจกใหใ้ ชผ้ า่ นทางอินเตอร์เน็ตโดยไม่ตอ้ ง เสียค่าใชจ้ ่าย เช่น Mysql ฯลฯ อนั ที*จริงแลว้ นLนั ในการพฒั นาระบบท*ีถูกตอ้ งนLนั จะตอ้ งเริ*มจากการวเิ คราะห์ระบบก่อนวา่ ระบบของเราเป็นเช่นไร จะมีขอ้ มูลอะไรบา้ งที*ใชใ้ นระบบ ตอ้ งประเมินวา่ จาํ นวนขอ้ มูลทLงั หมดท*ี จะเกิดขLึนจะมีประมาณเท่าใด มีการใชฐ้ านขอ้ มูลในลกั ษณะใดบา้ งเช่น ตอ้ งออกรายงาน ตอ้ งมีการ แสดงผลแบบเรียลไ์ ทม(์ real time) ฐานขอ้ มูลจะมีการเขา้ ใชพ้ ร้อมกนั หลายคนหรือไม่ เป็นตน้ ซ*ึง เม*ือไดผ้ ลของการวเิ คราะห์แลว้ จึงนาํ ไปเลือกโปรแกรมจดั การฐานขอ้ มูลที*เหมาะสม สามารถ รองรับระบบที*เราตอ้ งการใชไ้ ด้ แต่สาํ หรับผเู้ ริ*มตน้ แลว้ แนะนาํ วา่ ใหเ้ ริ*มทดลองใชใ้ หค้ ุน้ เคยกบั ระบบการจดั การฐานขอ้ มูล ก่อน เพราะแทบทุกโปรแกรม ลกั ษณะการจดั การจะค่อนขา้ งคลา้ ยคลึงกนั จะมีขอ้ แตกต่างกแ็ ต่วา่ การใชง้ านยากง่ายต่างกนั เท่านLนั เช่นหนา้ ตาของตวั โปรแกรม การจดั วางเมนูใชง้ าน ฟังชน*ั สนบั สนุนการทาํ งานต่างๆ ซ*ึงเม*ือมีความคุน้ เคยแลว้ กจ็ ะทาํ ใหส้ ามารถเลือกโปรแกรมท*ีเหมาะสม กบั ระบบงานท*ีเป็นอยไู่ ด้

หลกั การเลือกโปรแกรมระบบฐานข้อมูล การเลือกโปรแกรมระบบฐานขอ้ มูลมีขอ้ ที*ควรคาํ นึงถึงต่อไปนLี จาํ นวนข้อมูลทรีG องรับได้ องคก์ รขนาดยอ่ มอาจไม่ตอ้ งคาํ นึงถึงมากนกั แต่ตอ้ งคิดถึงการขยายใน อนาคตดว้ ย วธิ ีการนําข้อมูลไปใช้ โปรแกรมระบบฐานขอ้ มูลทุกชนิด จะมีการเตรียมวธิ ีการนาํ ขอ้ มูลไปใชไ้ วอ้ ยู่ แลว้ แต่รูปแบบของการนาํ ไปใช้ จะแตกต่างกนั ในแต่ละประเภท ตรงนLี เราตอ้ งคาํ นึงถึงวา่ การ นาํ ไปใชข้ องเราเป็นลกั ษณะใด เช่น เราตอ้ งการรายงานออกมาในรูปตารางสรุป หรือ อาจตอ้ งการ ในรูปของกราฟแสดงผล นอกจากนLนั ยงั ตอ้ งคาํ นึงถึงวา่ การถ่ายขอ้ มูลไปยงั โปรแกรมอ*ืนๆที* เกี*ยวขอ้ งกระทาํ ไดห้ รือไม่ มีรูปแบบการนาํ ขอ้ มูลออกตรงกบั ที*ตอ้ งการหรือไม่ เช่น ตอ้ งการนาํ ขอ้ มูลไปเขา้ โปรแกรมวเิ คราะห์ทางสถิติ เป็นตน้ ความเป็ นมาตรฐาน ความแพร่หลาย ถา้ เราใชโ้ ปรแกรมท*ีมีจาํ นวนผใู้ ชม้ าก กจ็ ะทาํ ใหก้ าร แลกเปล*ียนขอ้ มูลสะดวกขLึน นอกจากนLนั ยงั สามารถ ขอความช่วยเหลือและพฒั นาระบบต่อได้ โดยง่าย ระบบความปลอดภยั ตอ้ งคาํ นึงถึงทLงั การเกบ็ สาํ รองขอ้ มูลในกรณีเกิดปัญหาทางฮาร์ดแวร์ และ ระบบป้องกนั การเขา้ ถึงขอ้ มูลในกรณีท*ีเป็นขอ้ มูลลบั ที*อาจมีการขโมยขอ้ มูลเกิดขLึน ราคา โดยปกติแลว้ โปรแกรมท*ีมีความสามารถสูงกย็ อ่ มมีราคาแพง เราอาจตอ้ งประเมินดูวา่ จริงๆ แลว้ เราตอ้ งการความสามารถนLนั ๆหรือเปล่า คาํ ไข ระบบฐานขอ้ มูล การเลือกใช้

โครงสร้างระบบฐานข้อมูล ระบบฐานขอ้ มูลในปัจจุบนั จะนิยมใชฐ้ านขอ้ มูลแบบสมั พนั ธ์ (Relational Database) โครงสร้างพLืนฐานของฐานขอ้ มูลประเภทนLีจะมีดงั ต่อไปนLี ตาราง(Table) จะเป็นที*เกบ็ ขอ้ มูลของฐานขอ้ มูล จะมีลกั ษณะเป็นตาราง 2 มิติ โดยจะถือวา่ ขอ้ มูลใน แนวนอน(แถว)เป็นขอ้ มูลหน*ึงชุด เรียกวา่ เรคคอร์ด (Record) ซ*ึงขอ้ มูลในแต่ละชุดจะประกอบดว้ ย ขอ้ มูลต่างๆ ตามแนวตLงั (คอลมั น)์ ซ*ึง เรียกวา่ ฟิ ลด์ (Filed) ฟิลดท์ *ี1 ฟิลดท์ *ี2 ฟิลดท์ ี*3 ชอ*ื ฟิลด์ รหสสนคา ั ิชอ้สนคื,า ิราค้ า 0001 พดลม ั 900 เรคคอร์ดท*ี 0002 โคมไฟ 500 เ1รคคอร์ดที* 0003 ตเยน ู ้ ็ 7000 2เรคคอร์ดที* 3 รูปท*ี 1โครงสร้างของตาราง จากรูปที* 1 เป็นตวั อยา่ งตารางเกบ็ ขอ้ มูลสินคา้ โดยสินคา้ แต่ละชนิดจะถือวา่ เป็นหน*ึงเรคค อร์ด ในแต่ละเรคคอร์ดจะมีขอ้ มูลชนิดต่างๆ (ฟิ ลดต์ ่างๆ) บรรจุอยู่ ซ*ึงในหน*ึงฐานขอ้ มูลกจ็ ะ ประกอบดว้ ยตารางตLงั แต่หน*ึงตารางขLึนไป อนิ เดก็ ซ์ (Index) อินเดก็ ซ์ จะเป็นฟิ ลดท์ ี*ใชช้ ่วยในการคน้ หาขอ้ มูล การทาํ งานของฟิ ลดท์ ี*เป็นอินเดก็ ซ์กค็ ือ จะมีการจดั เรียงลาํ ดบั โดยอตั โนมตั ิโดยอาศยั ฟิ ลดอ์ ินเดก็ ซ์เป็นตวั อา้ งอิง การท*ีมีอินเดก็ ซ์ก็ หมายความวา่ ขอ้ มูลไดม้ ีการจดั เรียงไวแ้ ลว้ ยกตวั อยา่ งเช่นสมุดโทรศพั ท์ ถา้ เราตอ้ งการตอ้ งการหา ช*ือคนท*ีขLึนตน้ ดว้ ยตวั อ.อ่าง เรากส็ ามารถไปเปิ ดคน้ ไดจ้ ากบริเวณทา้ ยเล่มไดเ้ ลย โดยไม่ตอ้ งดูไปที ละหนา้ วา่ มีชื*อท*ีขLึนตน้ ดว้ ย อ.อ่างอยหู่ รือไม่

ไพรมารGีย์คยี ์ (Primary Key) ไพรมาร*ียค์ ียจ์ ะเป็นฟิ ลดท์ *ีสามารถเป็นตวั แทนเรคคอร์ดทLงั หมด ค่าไพรมาร*ียค์ ียจ์ ะตอ้ งไม่ ซLาํ กนั เมื*อระบุค่าไพรมารี*ยค์ ียแ์ ลว้ จะตอ้ งสามารถอา้ งอิงถึงฟิ ลดอ์ *ืนๆไดเ้ ลย ยกตวั อยา่ งเช่น จากรูป ท*ี1 เมื*อเราระบุสินคา้ รหสั 0001 กจ็ ะหมายถึง พดั ลมท*ีราคา900 บาทไดเ้ ลย การเกบ็ ข้อมูลแบบสร้างความสัมพนั ธ์ ฐานขอ้ มูลแบบสมั พนั ธ์จะมีจุดเด่นท*ี พยายามแยกขอ้ มูลออกมาเป็นชุดๆ (เป็นตารางอิสระ) แลว้ จึงกาํ หนดความสมั พนั ธ์ระหวา่ งตาราง(ขอ้ มูล)ขLึน เพื*อเกบ็ ขอ้ มูลของส*ิงท*ีเกิดขLึน การจดั เกบ็ ลกั ษณะนLีจะช่วยลดความซLาํ ซอ้ นของขอ้ มูล และจะช่วยใหก้ ารแกไ้ ขเป็นไปอยา่ งสะดวกและลด ความผดิ พลาด จากรูปท*ี2จะเห็นไดว้ า่ ไดแ้ ยกขอ้ มูลลูกคา้ และขอ้ มูลสินคา้ เป็นอยา่ งละหน*ึงตาราง แลว้ จึง เกบ็ ขอ้ มูลการสง*ั ซLือโดยสร้างเป็นตารางความสมั พนั ธ์ระหวา่ งลูกคา้ กบั สินคา้ ขLึน ซ*ึงขอ้ มูลท*ีนาํ มา อา้ งอิงในตารางความสมั พนั ธ์นLนั กค็ ือไพรมารี*ยค์ ียน์ นั* เอง ลกคา ู ้ ิ่ สนคา ิ ้ การสงซอ &ั ื* รหสลกคา ั ู ช้ อ เื-บอรตดตอ์ รหสสนคา ั ิชอ้สนคื,า ิราค้ า ล ดบท าํ รหั สลี& กคา ั รู ห้สสนคา ั ิจ น้ วน าํ 001 กรง ุ 1234567 0001 พดลม ั 900 1 001 0001 2 0002 โคมไฟ 500 2 002 0001 1 002 สมบต 9876ิั543 0003 ตเยน ู ้ ็ 7000 3 001 0003 1 รูปที* 2 การเกบ็ ขอ้ มูลโดยใชค้ วามสมั พนั ธ์ การสงซอ ั& ื* ล ดบท าํ รหั สลี& กคา ั ู ช้ อ เ&ืบอรตดตอ์ ริ ห่ สสนคา ั ิชอ้สนคื&า ิราค้ า จ นวน าํ 1 001 กรง ุ 1234567 0001 พดลม ั 900 2 2 002 สมบต 9876ิั543 0001 พดลม ั 900 1 3 001 กรง ุ 1234567 0003 ตเยน ู ้ ็ 7000 1 รูปที* 3 การเกบ็ ขอ้ มูลโดยไม่ใชค้ วามสมั พนั ธ์

เม*ือเปรียบเทียบ ระหวา่ รูปที*2 กบั รูปท*ี3 จะเห็นไดว้ า่ ในรูปท*ี3นLนั ขอ้ มูลมีความซLาํ ซอ้ นกนั ยกตวั อยา่ งเช่นการสงั* พดั ลมกจ็ ะตอ้ งเกบ็ ชื*อสินคา้ และราคาซLาํ กนั สองท*ี ซ*ึงท*ีจริงแลว้ สามารถ จาํ แนกไดจ้ ากรหสั สินคา้ ไดโ้ ดยตรง นอกจากนLนั แลว้ ถา้ จะมีการแกช้ ื*อจากพดั ลม เป็นพดั ลมตLงั โตะ๊ กจ็ าํ เป็นจะตอ้ งแกใ้ นทุกรายการที*เป็นพดั ลมในตารางการสงั* ซLือในรูปที*3 ซ*ึงถา้ เป็นการเกบ็ ขอ้ มูล แบบใชค้ วามสมั พนั ธ์ (รูปที*2) กเ็ พียงแกเ้ ฉพาะช*ือสินคา้ ในตารางสินคา้ เพียงแห่งเดียวเท่านLนั คาํ ไข โครงสร้างระบบฐานขอ้ มูล ตาราง จดั ทาํ โดย อ. ภูมิ เหลืองจามีกร

การออกแบบฐานข้อมูลและ ER-ไดอะแกรม เมื*อเร*ิมใชฐ้ านขอ้ มูล การออกแบบโครงสร้างของฐานขอ้ มูล จะเป็นส*ิงที*สาํ คญั มาก การ ออกแบบ จะใชแ้ ผนภูมิความสมั พนั ธ์ระหวา่ งขอ้ มูลท*ีเรียกวา่ ER-ไดอะแกรม (Entity Relationship Diagram) ดงั ตวั อยา่ งในรูปที*1เขา้ มาช่วยในการออกแบบ แผนภูมินLีจะช่วยเรียบเรียงความคิด และ ช่วยทาํ ใหม้ องความสมั พนั ธ์ระหวา่ งขอ้ มูลต่างๆไดช้ ดั เจนยงิ* ขLึน รูปท*ี 1 ตวั อยา่ งER-ไดอะแกรม ลกั ษณะของ ER-ไดอะแกรม ER-ไดอะแกรมประกอบดว้ ยสามส่วนใหญ่ๆคือ เอนทติ ี (Entity) เป็นตวั แทนของส*ิงท*ีสนใจ หรือจะพดู อีกอยา่ งวา่ ตวั แทนของชุดขอ้ มูลหน*ึง ยกตวั อยา่ งเช่น เอนทิตีสินคา้ เอนทิตีลูกคา้ เอนทิตีใบสง*ั ซLือ เป็นตน้ แทนดว้ ยส*ีเหล*ียม พรอพเพอร์ต(ีN Property) เป็นคุณสมบตั ิของเอนทิตี ซ*ึงกค็ ือ ขอ้ มูลจริงของสิ*งที*เราสนใจ เช่น เอนทิตีสินคา้ กจ็ ะมี พรอพเพอร์ตLี เช่น รหสั สินคา้ ราคาต่อหน่วย เป็นตน้ แทนดว้ ยวงกลม

ความสัมพนั ธ์ (Relationship) เป็นการเชื*อมโยงระหวา่ งเอนทิตีกบั เอนทิตี เช่น ความสมั พนั ธ์ระหวา่ งสินคา้ กบั ใบสงั* ซLือ เป็นตน้ แทนดว้ ยสามเหล*ียม ความสมั พนั ธ์มีดว้ ยกนั สามชนิดคือ ความสมั พนั ธ์ชนิดหน*ึงต่อหน*ึง (1- 1) ความสมั พนั ธ์ชนิดหน*ึงต่อกลุ่ม (1-M) ความสมั พนั ธ์ชนิดกลุ่มต่อกลุ่ม (M-N) จากรูปท*ี1จะอ่านไดว้ า่ มีขอ้ มูลหลกั อยู่ 3 อยา่ ง (3 เอนทิตี ,3 ตาราง) ไดแ้ ก่ ขอ้ มูลสินคา้ (Product) ขอ้ มูลการสง*ั ซLือ(Order) ขอ้ มูลลูกคา้ (Customer) ซ*ึงแต่ละตารางจะมีรายละเอียดยอ่ ยๆ อาทิเช่น ตารางขอ้ มูลสินคา้ กจ็ ะมีขอ้ มูลของรหสั สินคา้ (ProductID) ช*ือสินคา้ (ProductName) ราคา ต่อหน่วย(UnitPrice) ปริมาณคงคลงั (UnitInStock)อยเู่ ป็นตน้ ส่วนจากความสมั พนั ธ์กจ็ ะอ่านไดว้ า่ “ในการสง*ั ซLือแต่ละครLังจะประกอบดว้ ยสินคา้ ก*ี ประเภทกไ็ ด้ หรือสินคา้ แต่ละประเภทจะถูกสงั* จากหลายการสง*ั ซLือกไ็ ด”้ (ความสมั พนั ธ์ชนิดกลุ่ม ต่อกลุ่ม) กบั “แต่ละการสง*ั ซLือจะตอ้ งมีผสู้ ง*ั สินคา้ เพียงคนเดียว แต่ทวา่ ลูกคา้ แต่ละคนสามารถมีการ สงั* ซLือหลายครLังกไ็ ด”้ (ความ สมั พนั ธ์ชนิดหน*ึงต่อกลุ่ม) เราจะเขยี น ER-ไดอะแกรมได้อย่างไร การไดม้ าซ*ึง ER-ไดอะแกรมในรูปที*1 นLนั จะมีขLนั ตอนดงั ต่อไปนLี 1. ศึกษารายละเอยี ดและลกั ษณะหน้าทงGี านของระบบ ศึกษาและรวบรวมรายละเอียดเก*ียวกบั ลกั ษณะหนา้ ที*งานของระบบ ขอ้ มูลที*เกี*ยวขอ้ ง ขLนั ตอนในการทาํ งาน ตลอดจนขอ้ กาํ หนดต่างๆ ซ*ึงอาจทาํ ไดด้ ว้ ยการสมั ภาษณ์หรือศึกษาจาก แบบฟอร์มต่าง ๆ ท*ีมีการใชง้ านอยใู่ นระบบงานนLนั 2. กาํ หนดเอนทติ ที คGี วรมใี นระบบฐานข้อมูล นาํ รายละเอียดในขอ้ 1 มาทาํ การกาํ หนดเอนทิตีที*จาํ เป็นตอ้ งมีอยใู่ นระบบฐานขอ้ มูล พร้อม ทLงั กาํ หนดพรอพเพอร์ตLีของแต่ละเอนทิตีดว้ ย 3. กาํ หนดความสัมพนั ธ์ระหว่างเอนทติ ี กาํ หนดประเภทของความสมั พนั ธ์ระหวา่ งเอนทิตี โดยพิจารณาจากขอ้ มูลที*ไดท้ าํ การศึกษา มา 4.ปรับปรุงเอนทติ ี พรอพเพอร์ตีN และความสัมพนั ธ์ ให้เหมาะสม ทาํ การวเิ คราะห์ER-ไดอะแกรมที*ไดม้ าวา่ ส*ือถึงระบบขอ้ มูลที*ตอ้ งการจริงหรือไม่ แลว้ ทาํ การปรับแต่งใหเ้ หมาะสม โดยอาจมีการเพิ*มหรือลดเอนทิตีหรือพรอพเพอร์ตLี ปรับปรุงหรือ เปล*ียนแปลงลกั ษณะความสมั พนั ธ์เป็นตน้

คาํ ไข ระบบฐานขอ้ มูล การออกแบบ ER-ไดอะแกรม เคลด็ ลบั -วธิ ีการ บริหารเทคโนโลย/ี* สารสนเทศ

การจดั ระเบยี บฐานข้อมูล (Normalization) ทาํ ไมถงึ ต้องจดั ระเบยี บฐานข้อมูล ระบบฐานขอ้ มูลแบบใชค้ วามสมั พนั ธ์กนั นLนั ขอ้ มูลจะถูกจดั แยกเขา้ สู่ตารางยอ่ ยๆหลายๆ ตาราง การจดั ระเบียบฐานขอ้ มูลอยา่ งถูกวธิ ีจะช่วยใหก้ ารใชง้ านฐานขอ้ มูลมีประสิทธิภาพยง*ิ ขLึน เช่น ในแง่ของการเกบ็ ขอ้ มูล จะช่วยลดความซLาํ ซอ้ นในการที*จะตอ้ งจดั เกบ็ ขอ้ มูลอยา่ งเดียวกนั ใน แง่ของการแกไ้ ขจะช่วยใหส้ ามารถแกไ้ ขขอ้ มูลไดอ้ ยา่ งถูกตอ้ งและเป็นระบบมากขLึน ขNนั ตอนการจดั ระเบียบฐานข้อมูล การจดั ระเบียบฐานขอ้ มูลหรือที*เรียกวา่ การทาํ ”นอร์มอลไลเซชนั* ” นLนั จะเป็นการปรับ ตารางใหเ้ ขา้ สู่รูปแบบมาตรฐานที*เรียกวา่ นอร์มอลไลเซชนั* ฟอร์ม (Normalization Form ยอ่ ดว้ ย NF) ซ*ึงจะมีลาํ ดบั ขLนั ต่างๆ ตLงั แต่ 1NF, 2NF จนกระทง*ั ถึง 5NF แต่ทวา่ ในการใชโ้ ดยปกติ จะทาํ จนถึง ระดบั 3NF กเ็ พียงพอ ในที*นLีกจ็ ะขอกล่าวถึงระดบั 3NF เท่านLนั นอร์มอลไลเซซน*ั ฟอร์มในลาํ ดบั ที* สูงกวา่ จะตอ้ งมีคุณสมบตั ิของลาํ ดบั ท*ีต*าํ กวา่ อยใู่ นตวั ดว้ ย ดงั นLนั ถา้ ทาํ จนถึงขLนั 3NF กห็ มายความ วา่ จะมีคุณสมบตั ิของ1NFกบั 2NF อยดู่ ว้ ย การทาํ ให้ตารางเข้าสู่ 1NF ในระดบั 1NF จะมีกฎอยวู่ า่ หา้ มไม่ใหม้ ีช่องขอ้ มูลที*เกบ็ ค่ามากกวา่ หน*ึงค่าอยู่ จากตวั อยา่ ง ในรูปที*1 กจ็ ะไดว้ า่ ใหแ้ ตกขอ้ มูลในตารางทางซา้ ยออกเป็นเรคคอร์ดยอ่ ยๆตามตารางทางดา้ นขวา Order FirstName LastName Order Order พลวลต ู ิ สนธเสกิ ุ มอถอ ื ื FirstName LastName Order พลวลต ู ิ สนธเสกิ ุ คอมพวเตอร ิ ์ พลวลต ู ิ สนธเสกิ ุ มอถอ,คอื มพื วเตอร,เคิ รอง์ พมื4 พ ิ์ พลวลต ู ิ สนธเสกิ ุ เครองพมื4 พ ิ ์ ศภกนยาุ ั ชณประทิ ป มอถี อ ,จอื ภืาพ ศภกนยาุ ั ชณประทิ ป มอถี อ ื ื ศภกนยาุ ั ชณประทิ ป จอภี าพ รูปท*ี 1 การทาํ ใหต้ ารางเขา้ สู่ 1NF

การทาํ ให้ตารางเข้าสู่ 2NF ตารางที*มีคุณสมบตั ิในขLนั 2NF จะมีลกั ษณะกล่าวคือ เป็นตารางที*มีไพรมารี*ยค์ ีย์ (ขอ้ มูลที* เป็นตวั แทนขอ้ มูลทLงั หมด) ซ*ึงเมื*อเลือกค่าไพรมารี*ยค์ ียแ์ ลว้ จะตอ้ งสามารถบอกขอ้ มูลที*เหลือ ทLงั หมดได้ ถา้ ตารางใดมีไพรมาร*ียค์ ียเ์ พียงตวั เดียวกถ็ ือวา่ อยใู่ นระดบั 2NFอยแู่ ลว้ แต่ถา้ มีไพรมาร*ีย์ คีย์ มากกวา่ หน*ึง กใ็ หพ้ ิจารณาวา่ ไพรมารี*ยค์ ียแ์ ต่ละตวั สามารถชLีบ่งไปยงั ฟิ ลดอ์ ื*นๆไดห้ รือไม่ ถา้ ได้ ใหแ้ ยกไพรมาร*ียค์ ียพ์ ร้อมทLงั ฟิ ลดเ์ หล่านLนั ออกมา ในรูปท*ี 2 จะเห็นไดว้ า่ จากตารางรายละเอียดการขายมีหมายเลขใบกาํ กบั สินคา้ (InvNo) กบั รหสั สินคา้ (ProId) เป็นไพรมารี*ยค์ ีย์ ถา้ ระบุหมายเลขใบกาํ กบั สินคา้ กบั รหสั สินคา้ แลว้ ละกจ็ ะ สามารถบ่งบอกถึงขอ้ มูลท*ีเหลือทLงั หมดได้ แต่เม*ือพิจารณาต่อไปวา่ ไพรมาร*ียค์ ียแ์ ต่ละตวั บ่งชLีอะไร ไดบ้ า้ ง กจ็ ะพบวา่ หมายเลขใบกาํ กบั สินคา้ สามารถบ่งชLีถึงวนั ท*ี และ ลูกคา้ ได้ เราจึงดึงขอ้ มูลทLงั หมด ออกมาเป็นตารางใหม่ ส่วนรหสั สินคา้ กส็ ามารถชLีบ่งขอ้ มูลทLงั หมดของสินคา้ ได้ กจ็ ึงดึงออกมาได้ อีกตารางเช่นกนั

ตารางการขาย InvNo InvDate ProdId ProdName BrandName Model Quantity CustId Title FirstName LastName Telephone 10001 10/12/2002 2001 มอถอ ื ื โนเกย ี 8210 3 1001 นาย พลวลต ู ิ สนธเสกิ ุ 123-4567 10001 10/12/2002 2002 คอมพวเตอร ิ เดล์ PowerEdge2500 5 1001 นาย พลวลต ู ิ สนธเสกิ ุ 123-4567 10001 10/12/2002 2003 เครองพมื9 พ เคิ ยว์เซอรี า 1่ 800 8 1001 นาย พลวลต ู ิ สนธเสกิ ุ 123-4567 10002 10/12/2002 2001 มอถอ ื ื โนเกย ี 8210 1 1002 นส. ศภกนยาุ ั ชณประทิ ป 2ี34-5678 10002 10/12/2002 2004 จอภาพ โซน 9ี E200 6 1002 นส. ศภกนยาุ ั ชณประทิ ป 2ี34-5678 10003 15/12/2002 2003 เครองพม9ื พ เคิ ยว์เซอรี า 1่ 800 9 1001 นาย พลวลต ู ิ สนธเสกิ ุ 123-4567 10004 17/12/2002 2001 มอถอ ื ื โนเกย ี 8210 7 1003 นาย อนรรฆพล เวยงพล ี 345-6789 ตารางสนคา ิ ้ ProdId ProdName BrandName Model Price ตารางการขาย 2001 มอถอ ื ื โนเกย ี 8210 13000 InvNo ProdId Quantity 2002 คอมพวเตอร ิ เดล์ PowerEdge2500 140000 10001 2001 3 2003 เครองพม4ื พ เคิ ยวเ์ ซอรี า 1่ 800 28000 10001 2002 5 2004 จอภาพ โซน ี4 E200 11000 10001 2003 8 10002 2001 1 ตารางใบก กบสนาํ คาั ิ ้ 10002 2004 6 InvNo InvDate CustId Title FirstName LastName Telephone 10001 10/12/2002 1001 นาย พลวลต ู ิ สนธเสกิ ุ 123-4567 10003 2003 9 10001 10/12/2002 1001 นาย พลวลต ู ิ สนธเสกิ ุ 123-4567 10001 10/12/2002 1001 นาย พลวลต ู ิ สนธเสกิ ุ 123-4567 10004 2001 7 10002 10/12/2002 1002 นส. ศภกนยาุ ั ชณประทิ ป 234ี-5678 10002 10/12/2002 1002 นส. ศภกนยาุ ั ชณประทิ ป 234ี-5678 10003 15/12/2002 1001 นาย พลวลต ู ิ สนธเสกิ ุ 123-4567 10004 17/12/2002 1003 นาย อนรรฆพล เวยงพล ี 345-6789 รูปที* 2 การทาํ ใหต้ ารางเขา้ สู่ 2NF

การทาํ ให้ตารางเข้าสู่ 3NF ตารางท*ีมีคุณสมบตั ิในขLนั 3NF จะมีลกั ษณะกล่าวคือ ตอ้ งไม่มีฟิ ลดอ์ ื*น นอกจากไพรมาร*ีย์ คียท์ ี*สามารถชLีบ่งไปยงั ฟิ ลดอ์ ื*นได้ ถา้ มี ใหด้ ึงออกมาเป็นตารางใหม่ จากรูปท*ี2แลว้ ในตารางใบกาํ กบั สินคา้ จะเห็นไดว้ า่ รหสั ลูกคา้ (CustId) สามารถชLีบ่งไปยงั ฟิ ลดอ์ ื*นๆได้ ดงั นLนั การจะทาํ ใหอ้ ยใู่ นขLนั 3NF กต็ อ้ งแยกขอ้ มูลลูกคา้ ทLงั หมดออกมาเป็นตารางใหม่ ซ*ึงกจ็ ะไดเ้ ป็นตารางในรูปท*ี3 ตารางใบก กบสนาํ คาั ิ ้ ตารางลกคา ู ้ InvNo InvDate CustId CustId Title FirstName LastName Telephone 10001 10/12/2002 1001 1001 นาย พลวลต ู ิ สนธเสกิ ุ 123-4567 10002 10/12/2002 1002 1002 นส. ศภกนยาุ ั ชณประทิ ป 234ี-5678 10003 15/12/2002 1001 1003 นาย อนรรฆพล เวยงพล ี 345-6789 10004 17/12/2002 1003 รูปท*ี 3 การทาํ ใหต้ ารางเขา้ สู่ 3NF จะเห็นไดว้ า่ ขอ้ มูลลดความ “ซLาํ ซอ้ น”ลงไดม้ าก จากตวั อยา่ งในรูปที* 2 บน ที*มีขอ้ มูล ทLงั หมด84 ช่อง จะเหลือเพียง64ช่องเท่านLนั (นบั จากตารางสินคา้ และตารางการขาย ในรูปที* 2 และ ตารางใบกาํ กบั สินคา้ และตารางลูกคา้ ในรูปท*ี 3) แต่ในขณะเดียวกนั กจ็ ะมีจาํ นวนตารางเพ*ิมขLึนดว้ ย จาก1ตารางเป็น4ตาราง โครงสร้างกม็ ีความ”ซบั ซอ้ น” มากขLึน ทาํ ใหก้ ารใชง้ านอาจจะสบั สนได้ นอกจากนLนั การท*ีมีตารางยอ่ ยๆหลายตารางอาจทาํ ใหก้ ารเขา้ ถึงขอ้ มูลชา้ ลงดว้ ย ดงั นLนั การจะทาํ ถึง ขLนั ใด หรือ ทาํ ใหส้ มบูรณ์เพียงไรนLนั กข็ Lึนอยกู่ บั ลกั ษณะขอ้ มูลท*ีจะใช้ คาํ ไข ระบบฐานขอ้ มูล การจดั ระเบียบฐานขอ้ มูล (Normalization)นอร์มอลไลเซชน*ั ฟอร์ม (Normalization Form ) เคลด็ ลบั -วธิ ีการ บริหารเทคโนโลย/ี* สารสนเทศ


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook