ระบบฐานขอ้ มลู
ระบบฐานขอ้ มลู ในการประกอบธรุ กจิ จะมขี อ้ มลู ตา่ งๆเกดิ ข้นึ มากมาย ยกตวั อยา่ งเชน่ ขอ้ มลู ลกู คา้ข้อมลู การสง่ั ของ ขอ้ มลู พนกั งาน ฯลฯ ซงึ่ ขอ้ มลู เหลา่ นจ้ี ะตอ้ งมกี ารเกบ็ รกั ษาทด่ี ี นอกจากนนั้ในการตดั สนิ ใจตา่ งๆจะมีขอ้ มลู ทต่ี อ้ งใชป้ ระมวลผลเพอ่ื ประกอบการตดั สนิ ใจเปน็ จานวนมากการนาขอ้ มลู เหลา่ นมี้ าใชน้ น้ั ถา้ ไมไ่ ดม้ กี ารจดั ระเบยี บการเกบ็ ทดี่ ี ก็ยอ่ มนามาใชไ้ ดอ้ ยา่ งยากลาบากทาไมตอ้ งมรี ะบบฐานขอ้ มลู ระบบฐานขอ้ มลู ทม่ี ปี ระสทิ ธภิ าพจะมหี นา้ ทห่ี ลกั ๆดงั ตอ่ ไปนี้ การเกบ็ รกั ษาขอ้ มลู ระบบฐานขอ้ มลู จะชว่ ยใหก้ ารเกบ็ รกั ษาขอ้ มลู เปน็ ระบบระเบียบ มีการจดั หมวดหมขู่ องขอ้ มลู ซงึ่ จะให้ผจู้ ดั เกบ็ ทางานไดส้ ะดวกมากขน้ึ และปอ้ งกนั ความผดิ พลาดได้ การนาขอ้ มลู ไปใช้ ขอ้ นจี้ ะเปน็ หวั ใจของระบบฐานขอ้ มลู เลยทเี ดยี ว ระบบฐานจะทาให้การดงึ ขอ้ มลู ออกมาใชส้ ะดวกและมปี ระสทิ ธภิ าพมากขน้ึ การสรปุ ขอ้ มลู และประมวลผลตา่ งๆจะทาไดง้ า่ ยขน้ึ ซง่ึ จะทาใหส้ ามารถนาขอ้ มลู ไปประกอบการตดั สินใจได้ ยกตวั อยา่ งเช่น การเกบ็ ขอ้ มลู ใบสงั่ ของจากลกู คา้ ถา้ เราเกบ็ โดยไมม่ รี ะบบเชน่ เกบ็ สาเนาใบเสรจ็ ทงั้ หมดไว้ เราก็จะมีเพยี งหลกั ฐานวา่ ใครสงั่ อะไรไปบา้ งเทา่ นน้ั แตถ่ า้ มกี ารเกบ็ ลงระบบฐานข้อมลู โดยเฉพาะอยา่ งยง่ิ เมอ่ื ใชค้ อมพวิ เตอรเ์ ขา้ ชว่ ย เราจะสามารถดงึ ขอ้ มลู สรปุ ตา่ งๆออกมาใชไ้ ด้ เชน่สามารถรวบรวมไดว้ า่ ลกู คา้ รายน้ี สงั่ อะไรบา้ ง สนิ คา้ รายการนถ้ี กู สงั่ ไปเทา่ ไร เหลอื อีกเทา่ ไรฯลฯ การแกไ้ ขขอ้ มลู เปน็ อกี ความสามารถหนง่ึ ทร่ี ะบบฐานขอ้ มลู จะชว่ ยใหท้ างานสะดวกข้นึ ยกตวั อย่างเชน่ จากขอ้ ทแี่ ลว้ ตวั อยา่ งใบสง่ั ของ ถา้ ลกู คา้ มีการเปลยี่ นหมายเลขโทรศพั ท์ตดิ ตอ่ เรากส็ ามารถแกท้ เี ดยี วได้ โดยไมต่ อ้ งเขา้ ไปแกใ้ นใบสง่ั ของแตล่ ะใบ เป็นตน้ ซงึ่ จากหนา้ ท่ขี องระบบฐานข้อมลู จะทาใหเ้ หน็ วา่ การเกบ็ ขอ้ มลู อยา่ งมรี ะบบกบั ไมม่ ีน้นั มคี วามสามารถและประโยชนใ์ ชส้ อยตา่ งกนั มาก ซงึ่ กค็ งจะทาใหเ้ หน็ ประโยชนข์ องฐานขอ้ มลู เดน่ ชดั ขึน้ระบบฐานขอ้ มูลคอมพวิ เตอร์ อนั ทจ่ี รงิ แลว้ นน้ั ระบบฐานขอ้ มลู ไมจ่ าเปน็ จะตอ้ งองิ กบั คอมพวิ เตอรเ์ สมอไปยกตวั อยา่ งเชน่ ระบบบตั รทะเบยี นหนงั สอื ในหอ้ งสมดุ ระบบบตั รคนไข้ ฯลฯ แมแ้ ตก่ ารทเ่ี ราจดบนั ทกึ หมายเลขโทรศพั ทข์ องเพอ่ื น กถ็ อื ไดว้ า่ เปน็ ระบบฐานขอ้ มลู อยา่ งหนง่ึ ซงึ่ ระบบดงั กลา่ วนี้ ถา้ มกี ารใชห้ ลกั ของการจดั การฐานขอ้ มลู ทถี่ กู ตอ้ งแลว้ ละก็ จะสามารถมคี วามสะดวกในการใชส้ อยไดใ้ นระดบั หนง่ึ แตท่ วา่ ในปจั จบุ นั เมอื่ เราพดู ถงึ ระบบฐานขอ้ มลู เรากม็ กั จะนึกถงึ ระบบฐานข้อมลู คอมพวิ เตอร์ การนาคอมพวิ เตอรม์ าใชใ้ นการจดั การฐานข้อมลู นัน้ อาจพดู ไดว้ า่ เปน็การใชค้ อมพวิ เตอรท์ ตี่ รงกบั ขอ้ เดน่ ทส่ี ดุ ของคอมพวิ เตอรอ์ ยา่ งหนงึ่ กค็ อื ใชก้ บั งานทม่ี กี ารทาซ้าเปน็ จานวนมาก มกี ารประมวลผลทเี่ ปน็ ระบบ ซง่ึ คอมพวิ เตอรจ์ ะไมม่ คี วามผดิ พลาดอนัเกดิ จากการเหนื่อยลา้ หรอื เบอ่ื หนา่ ยมาใชร้ ะบบฐานขอ้ มลู คอมพวิ เตอรก์ ันดีกวา่ จากตวั อยา่ งทยี่ กมา คงจะเห็นขอ้ ดขี อระบบฐานขอ้ มลู คอมพวิ เตอรแ์ ลว้ ในขัน้ ตอ่ ไปในการจะเร่ิมใชฐ้ านขอ้ มลู อนั ดบั แรกกค็ งจะเปน็ การเลอื กโปรแกรมจดั การฐานขอ้ มลู มาใช้ ในปจั จบุ นั โปรแกรมจดั การฐานขอ้ มลู มใี ห้เลอื กมากมายหลายชนดิ มที ง้ั โปรแกรมทข่ี ายในทอ้ งตลาดทวั่ ไป เชน่ Microsoft access, ORACLE ฯลฯ หรอื โปรแกรมทแี่ จกใหใ้ ชผ้ า่ นทาง
อินเตอรเ์ นต็ โดยไมต่ อ้ งเสยี คา่ ใชจ้ า่ ย เชน่ Mysql ฯลฯ อันทจี่ รงิ แลว้ นนั้ ในการพฒั นาระบบทถี่ กู ตอ้ งนนั้ จะตอ้ งเร่มิ จากการวเิ คราะหร์ ะบบกอ่ นวา่ ระบบของเราเปน็ เชน่ ไร จะมีขอ้ มลู อะไรบา้ งทใ่ี ชใ้ นระบบ ตอ้ งประเมนิ วา่ จานวนขอ้ มลูทงั้ หมดทจ่ี ะเกดิ ขนึ้ จะมปี ระมาณเทา่ ใด มกี ารใชฐ้ านขอ้ มลู ในลักษณะใดบา้ งเชน่ ตอ้ งออกรายงาน ตอ้ งมกี ารแสดงผลแบบเรยี ลไ์ ทม(์ real time) ฐานขอ้ มลู จะมกี ารเขา้ ใชพ้ รอ้ มกนั หลายคนหรอื ไม่ เปน็ ตน้ ซงึ่ เมอื่ ไดผ้ ลของการวเิ คราะหแ์ ลว้ จงึ นาไปเลอื กโปรแกรมจดั การฐานขอ้ มลูทเี่ หมาะสม สามารถรองรบั ระบบทเ่ี ราตอ้ งการใชไ้ ด้ แตส่ าหรบั ผเู้ รม่ิ ตน้ แลว้ แนะนาวา่ ใหเ้ รมิ่ ทดลองใชใ้ หค้ นุ้ เคยกบั ระบบการจดั การฐานขอ้ มลู กอ่ น เพราะแทบทกุ โปรแกรม ลกั ษณะการจดั การจะคอ่ นข้างคลา้ ยคลงึ กัน จะมขี อ้แตกตา่ งกแ็ ตว่ า่ การใชง้ านยากงา่ ยตา่ งกนั เทา่ นน้ั เชน่ หนา้ ตาของตวั โปรแกรม การจดั วางเมนูใชง้ าน ฟงั ชน่ั สนบั สนนุ การทางานตา่ งๆ ซงึ่ เมอ่ื มคี วามคนุ้ เคยแลว้ กจ็ ะทาใหส้ ามารถเลอื กโปรแกรมทเ่ี หมาะสมกบั ระบบงานทเี่ ป็นอยไู่ ด้หลกั การเลือกโปรแกรมระบบฐานข้อมลู การเลอื กโปรแกรมระบบฐานขอ้ มลู มีขอ้ ทค่ี วรคานงึ ถงึ ตอ่ ไปน้ีจานวนขอ้ มลู ท่รี องรบั ได้ องคก์ รขนาดยอ่ มอาจไมต่ อ้ งคานงึ ถงึ มากนกั แตต่ อ้ งคดิ ถงึ การขยายในอนาคตดว้ ยวิธกี ารนาขอ้ มลู ไปใช้ โปรแกรมระบบฐานข้อมลู ทกุ ชนดิ จะมกี ารเตรียมวธิ กี ารนาข้อมลู ไปใช้ไวอ้ ยแู่ ลว้ แตร่ ปู แบบของการนาไปใช้ จะแตกตา่ งกนั ในแตล่ ะประเภท ตรงน้ี เราตอ้ งคานงึ ถงึวา่ การนาไปใชข้ องเราเปน็ ลกั ษณะใด เชน่ เราตอ้ งการรายงานออกมาในรปู ตารางสรปุ หรอือาจตอ้ งการในรปู ของกราฟแสดงผล นอกจากนนั้ ยงั ตอ้ งคานงึ ถงึ วา่ การถา่ ยขอ้ มลู ไปยงัโปรแกรมอน่ื ๆทเี่ ก่ยี วขอ้ งกระทาไดห้ รอื ไม่ มรี ปู แบบการนาข้อมลู ออกตรงกบั ทต่ี อ้ งการหรอื ไม่เช่น ตอ้ งการนาขอ้ มลู ไปเขา้ โปรแกรมวเิ คราะหท์ างสถติ ิ เปน็ ตน้ความเปน็ มาตรฐาน ความแพรห่ ลาย ถา้ เราใชโ้ ปรแกรมทมี่ จี านวนผใู้ ชม้ าก กจ็ ะทาใหก้ ารแลกเปลี่ยนขอ้ มลู สะดวกขน้ึ นอกจากนน้ั ยงั สามารถ ขอความชว่ ยเหลอื และพฒั นาระบบตอ่ ได้โดยงา่ ยระบบความปลอดภยั ตอ้ งคานงึ ถงึ ทง้ั การเกบ็ สารองขอ้ มลู ในกรณเี กดิ ปญั หาทางฮารด์ แวร์และ ระบบปอ้ งกนั การเขา้ ถงึ ขอ้ มลู ในกรณที เ่ี ปน็ ขอ้ มลู ลบั ทอี่ าจมกี ารขโมยขอ้ มลู เกดิ ขน้ึราคา โดยปกตแิ ลว้ โปรแกรมทมี่ คี วามสามารถสงู กย็ อ่ มมรี าคาแพง เราอาจตอ้ งประเมนิ ดวู า่จรงิ ๆแลว้ เราตอ้ งการความสามารถนนั้ ๆหรือเปลา่คาไข ระบบฐานขอ้ มลู การเลอื กใช้จดั ทาโดย อ. ภมู ิ เหลอื งจามกี ร
โครงสรา้ งระบบฐานขอ้ มลู ระบบฐานขอ้ มลู ในปจั จบุ นั จะนยิ มใชฐ้ านขอ้ มลู แบบสมั พันธ์ (Relational Database)โครงสรา้ งพืน้ ฐานของฐานขอ้ มลู ประเภทนี้จะมดี งั ตอ่ ไปน้ีตาราง(Table) จะเปน็ ทเ่ี กบ็ ขอ้ มลู ของฐานข้อมลู จะมลี กั ษณะเปน็ ตาราง 2 มติ ิ โดยจะถอื วา่ ขอ้ มลู ในแนวนอน(แถว)เป็นขอ้ มลู หนงึ่ ชดุ เรยี กวา่ เรคคอรด์ (Record) ซง่ึ ขอ้ มลู ในแตล่ ะชดุ จะประกอบดว้ ยขอ้ มลู ตา่ งๆ ตามแนวตง้ั (คอลมั น)์ ซง่ึ เรยี กวา่ ฟลิ ด์ (Filed) ฟลิ ดท์ 1่ี ฟลิ ดท์ 2ี่ ฟลิ ดท์ ่ี 3 ชอื่ ฟลิ ด์ รหสัสนิ คา้ ชอ่ืสนิ คา้ ราคา 0001 พดั ลม 900 เรคคอรด์ ท่ี 0002 โคมไฟ 500 เ1รคคอรด์ ที่ 0003 ตเยู ้ น็ 7000 2เรคคอรด์ ที่ 3 รปู ท่ี 1โครงสรา้ งของตาราง จากรปู ท่ี 1 เป็นตวั อยา่ งตารางเกบ็ ขอ้ มลู สนิ คา้ โดยสนิ คา้ แตล่ ะชนดิ จะถอื วา่ เปน็ หนงึ่เรคคอรด์ ในแตล่ ะเรคคอรด์ จะมขี อ้ มลู ชนดิ ตา่ งๆ (ฟลิ ดต์ า่ งๆ) บรรจุอยู่ ซงึ่ ในหนงึ่ ฐานขอ้ มลู ก็จะประกอบดว้ ยตารางตงั้ แตห่ น่ึงตารางข้ึนไปอินเด็กซ์ (Index) อินเดก็ ซ์ จะเป็นฟลิ ดท์ ใ่ี ชช้ ว่ ยในการค้นหาข้อมลู การทางานของฟลิ ดท์ เ่ี ปน็ อนิ เดก็ ซก์ ็คอื จะมกี ารจดั เรยี งลาดบั โดยอตั โนมตั โิ ดยอาศยั ฟลิ ดอ์ ินเดก็ ซเ์ ปน็ ตวั อา้ งองิ การทม่ี อี นิ เดก็ ซ์กห็ มายความวา่ ขอ้ มลู ไดม้ กี ารจดั เรียงไวแ้ ลว้ ยกตวั อย่างเชน่ สมดุ โทรศพั ท์ ถา้ เราตอ้ งการตอ้ งการหาชอื่ คนที่ขนึ้ ต้นดว้ ยตวั อ.อา่ ง เรากส็ ามารถไปเปดิ คน้ ไดจ้ ากบรเิ วณทา้ ยเลม่ ไดเ้ ลยโดยไมต่ อ้ งดไู ปทลี ะหนา้ วา่ มชี อ่ื ทข่ี ้ึนตน้ ดว้ ย อ.อา่ งอยหู่ รอื ไม่ไพรมารย่ี ค์ ีย์ (Primary Key) ไพรมารยี่ ค์ ยี จ์ ะเปน็ ฟลิ ดท์ ส่ี ามารถเปน็ ตวั แทนเรคคอรด์ ทง้ั หมด คา่ ไพรมารี่ยค์ ยี จ์ ะตอ้ งไมซ่ ้ากนั เมื่อระบคุ า่ ไพรมารี่ยค์ ยี แ์ ลว้ จะตอ้ งสามารถอา้ งองิ ถงึ ฟลิ ดอ์ น่ื ๆไดเ้ ลย ยกตวั อยา่ งเชน่จากรปู ท1ี่ เมอื่ เราระบสุ นิ คา้ รหสั 0001 กจ็ ะหมายถงึ พดั ลมทรี่ าคา900 บาทไดเ้ ลยการเกบ็ ข้อมลู แบบสรา้ งความสมั พันธ์ ฐานขอ้ มลู แบบสมั พนั ธจ์ ะมจี ดุ เดน่ ท่ี พยายามแยกขอ้ มลู ออกมาเปน็ ชดุ ๆ (เปน็ ตารางอสิ ระ) แลว้ จงึ กาหนดความสมั พนั ธร์ ะหวา่ งตาราง(ขอ้ มลู )ขึ้น เพอ่ื เกบ็ ขอ้ มลู ของสงิ่ ทเี่ กดิ ขนึ้
การจดั เกบ็ ลกั ษณะนจ้ี ะชว่ ยลดความซา้ ซอ้ นของขอ้ มลู และจะชว่ ยใหก้ ารแกไ้ ขเปน็ ไปอยา่ งสะดวกและลดความผิดพลาดจากรปู ท2่ี จะเหน็ ไดว้ า่ ไดแ้ ยกขอ้ มลู ลกู คา้ และขอ้ มลู สินคา้ เปน็ อยา่ งละหนงึ่ ตารางแลว้ จงึ เกบ็ ขอ้ มลู การสงั่ ซอ้ื โดยสรา้ งเปน็ ตารางความสมั พนั ธ์ระหวา่ งลกู คา้ กบั สนิ คา้ ขึ้น ซง่ึขอ้ มลู ทนี่ ามาอา้ งองิ ในตารางความสมั พนั ธ์นน้ั กค็ อื ไพรมารยี่ ค์ ยี ์นน่ั เองลกู คา้ สนิ คา้ การสง่ซั อื้รหสัลกู คา้ ชอ่ื เบอรต์ ดิตอ่ รหสัสนิ คา้ ชอ่ืสนิ คา้ ราคา ลาดบัท่ี รหสัลกู คา้ รหสัสนิ คา้ จานวน001 กรงุ 1234567 0001 พดั ลม 900 1 001 0001 2002 สมบตั ิ 9876543 0002 โคมไฟ 500 2 002 0001 1 0003 ตเยู ้ น็ 7000 3 001 0003 1 รปู ที่ 2 การเกบ็ ขอ้ มลู โดยใชค้ วามสมั พันธ์ การสง่ซั อื้ลาดบัท่ี รหสัลกู คา้ ชอ่ื เบอรต์ ดิตอ่ รหสัสนิ คา้ ชอื่สนิ คา้ ราคา จานวน1 001 กรงุ 1234567 0001 พดั ลม 900 22 002 สมบตั ิ 9876543 0001 พดั ลม 900 13 001 กรงุ 1234567 0003 ตเยู ้ น็ 7000 1 รปู ท่ี 3 การเกบ็ ขอ้ มลู โดยไมใ่ ชค้ วามสมั พันธ์ เมอื่ เปรยี บเทียบ ระหวา่ รปู ที่2 กบั รปู ท3ี่ จะเหน็ ไดว้ า่ ในรปู ที่3น้นั ขอ้ มลู มคี วามซา้ ซอ้ นกนั ยกตวั อยา่ งเชน่ การสงั่ พดั ลมกจ็ ะตอ้ งเก็บชอื่ สนิ คา้ และราคาซา้ กันสองท่ี ซง่ึ ทจ่ี รงิแลว้ สามารถจาแนกไดจ้ ากรหสั สินคา้ ไดโ้ ดยตรง นอกจากนนั้ แลว้ ถา้ จะมกี ารแกช้ อ่ื จากพดั ลมเป็นพดั ลมตงั้ โตะ๊ กจ็ าเปน็ จะตอ้ งแกใ้ นทกุ รายการทเี่ ปน็ พดั ลมในตารางการสง่ั ซอื้ ในรปู ที่3 ซงึ่ถา้ เปน็ การเกบ็ ขอ้ มลู แบบใชค้ วามสมั พนั ธ์ (รูปท2ี่ ) กเ็ พยี งแกเ้ ฉพาะชอ่ื สนิ คา้ ในตารางสนิ คา้เพยี งแหง่ เดยี วเทา่ นน้ัคาไข โครงสรา้ งระบบฐานขอ้ มลู ตารางจดั ทาโดย อ. ภมู ิ เหลอื งจามกี ร
การออกแบบฐานขอ้ มลู และ ER-ไดอะแกรม เมื่อเรมิ่ ใชฐ้ านขอ้ มลู การออกแบบโครงสรา้ งของฐานข้อมลู จะเปน็ สงิ่ ทส่ี าคญั มากการออกแบบ จะใชแ้ ผนภมู คิ วามสมั พนั ธ์ระหวา่ งขอ้ มลู ทเี่ รยี กวา่ ER-ไดอะแกรม (EntityRelationship Diagram) ดงั ตวั อยา่ งในรปู ที่1เขา้ มาชว่ ยในการออกแบบ แผนภมู นิ ี้จะชว่ ยเรียบเรยี งความคดิ และชว่ ยทาใหม้ องความสมั พนั ธ์ระหวา่ งขอ้ มลู ตา่ งๆไดช้ ดั เจนยงิ่ ขน้ึ รปู ที่ 1 ตวั อยา่ งER-ไดอะแกรมลักษณะของ ER-ไดอะแกรม ER-ไดอะแกรมประกอบดว้ ยสามสว่ นใหญๆ่ คอืเอนทติ ี (Entity) เปน็ ตวั แทนของสงิ่ ทสี่ นใจ หรอื จะพดู อกี อยา่ งวา่ ตวั แทนของชดุ ขอ้ มลู หนงึ่ยกตวั อยา่ งเชน่ เอนทติ สี นิ คา้ เอนทติ ลี กู คา้ เอนทติ ใี บสงั่ ซอ้ื เปน็ ตน้ แทนดว้ ยสเี่ หลยี่ มพรอพเพอรต์ (้ี Property) เป็นคณุ สมบตั ิของเอนทติ ี ซง่ึ กค็ อื ขอ้ มลู จรงิ ของสง่ิ ทเ่ี ราสนใจ เชน่ เอนทติ สี นิ คา้ กจ็ ะมพี รอพเพอรต์ ี้ เชน่ รหสั สนิ คา้ ราคาตอ่ หนว่ ย เปน็ ตน้ แทนดว้ ยวงกลมความสมั พนั ธ์ (Relationship) เป็นการเชอ่ื มโยงระหวา่ งเอนทติ กี บั เอนทติ ี เชน่ ความสมั พนั ธร์ ะหว่างสนิ คา้ กบั ใบสงั่ซอื้ เปน็ ตน้ แทนดว้ ยสามเหลย่ี ม ความสมั พันธม์ ดี ว้ ยกันสามชนดิ คอื ความสมั พนั ธช์ นดิ หนง่ึตอ่ หนงึ่ (1-1) ความสัมพนั ธช์ นดิ หนง่ึ ตอ่ กลมุ่ (1-M) ความสมั พนั ธช์ นดิ กลมุ่ ตอ่ กลมุ่ (M-N) จากรปู ท1่ี จะอา่ นไดว้ า่ มขี อ้ มลู หลกั อยู่ 3 อยา่ ง (3 เอนทติ ี ,3 ตาราง) ไดแ้ ก่ ขอ้ มลูสนิ คา้ (Product) ขอ้ มลู การสง่ั ซ้อื (Order) ข้อมลู ลกู คา้ (Customer) ซงึ่ แตล่ ะตารางจะมีรายละเอียดยอ่ ยๆ อาทเิ ชน่ ตารางขอ้ มลู สนิ คา้ กจ็ ะมขี อ้ มลู ของรหสั สนิ คา้ (ProductID) ชอ่ืสนิ คา้ (ProductName) ราคาตอ่ หนว่ ย(UnitPrice) ปรมิ าณคงคลงั (UnitInStock)อย่เู ปน็ ตน้
สว่ นจากความสมั พนั ธก์ จ็ ะอา่ นไดว้ า่ “ในการสง่ั ซอ้ื แตล่ ะครง้ั จะประกอบดว้ ยสนิ คา้ ก่ีประเภทกไ็ ด้ หรอื สนิ คา้ แตล่ ะประเภทจะถกู สงั่ จากหลายการสง่ั ซอื้ กไ็ ด้” (ความสมั พนั ธช์ นดิกลมุ่ ตอ่ กลมุ่ ) กบั “แตล่ ะการสงั่ ซอื้ จะตอ้ งมผี สู้ งั่ สินคา้ เพียงคนเดียว แตท่ วา่ ลกู คา้ แตล่ ะคนสามารถมกี ารสงั่ ซอ้ื หลายครง้ั กไ็ ด้” (ความ สมั พนั ธช์ นดิ หนง่ึ ตอ่ กลมุ่ )เราจะเขยี น ER-ไดอะแกรมไดอ้ ยา่ งไรการไดม้ าซงึ่ ER-ไดอะแกรมในรปู ท1ี่ นัน้ จะมขี น้ั ตอนดงั ตอ่ ไปน้ี1. ศกึ ษารายละเอยี ดและลกั ษณะหนา้ ทง่ี านของระบบศกึ ษาและรวบรวมรายละเอยี ดเกยี่ วกบั ลกั ษณะหนา้ ทงี่ านของระบบ ขอ้ มลู ทเี่ กย่ี วขอ้ งขั้นตอนในการทางาน ตลอดจนขอ้ กาหนดตา่ งๆ ซง่ึ อาจทาไดด้ ว้ ยการสมั ภาษณห์ รอื ศกึ ษาจากแบบฟอรม์ ตา่ ง ๆ ทมี่ กี ารใชง้ านอยใู่ นระบบงานน้นั2. กาหนดเอนทติ ที ค่ี วรมใี นระบบฐานขอ้ มลูนารายละเอยี ดในข้อ1 มาทาการกาหนดเอนทติ ที จี่ าเป็นตอ้ งมอี ยใู่ นระบบฐานขอ้ มลูพรอ้ มทงั้ กาหนดพรอพเพอรต์ ข้ี องแตล่ ะเอนทติ ดี ว้ ย3. กาหนดความสมั พนั ธร์ ะหวา่ งเอนทติ ีกาหนดประเภทของความสมั พนั ธ์ระหวา่ งเอนทติ ี โดยพจิ ารณาจากขอ้ มลู ทไ่ี ด้ทาการศกึ ษามา4.ปรบั ปรงุ เอนทติ ี พรอพเพอรต์ ี้ และความสมั พนั ธ์ ใหเ้ หมาะสมทาการวเิ คราะห์ER-ไดอะแกรมทไี่ ดม้ าวา่ สอื่ ถงึ ระบบขอ้ มลู ทตี่ อ้ งการจรงิ หรอื ไม่ แลว้ทาการปรบั แตง่ ใหเ้ หมาะสม โดยอาจมกี ารเพ่มิ หรอื ลดเอนทติ หี รอื พรอพเพอรต์ ้ี ปรบั ปรงุ หรอืเปล่ยี นแปลงลกั ษณะความสมั พนั ธ์เปน็ ตน้คาไข ระบบฐานขอ้ มลู การออกแบบ ER-ไดอะแกรม เคลด็ ลบั -วิธกี าร บรหิ ารเทคโนโลยี่/สารสนเทศจดั ทาโดย อ. ภมู ิ เหลอื งจามกี ร
การจดั ระเบียบฐานขอ้ มลู (Normalization)ทาไมถงึ ตอ้ งจดั ระเบยี บฐานข้อมลูระบบฐานขอ้ มลู แบบใชค้ วามสมั พนั ธก์ นั น้ัน ขอ้ มลู จะถูกจดั แยกเขา้ สตู่ ารางยอ่ ยๆหลายๆตาราง การจดั ระเบยี บฐานขอ้ มลู อยา่ งถกู วิธจี ะชว่ ยใหก้ ารใชง้ านฐานข้อมลู มีประสทิ ธภิ าพยงิ่ ขนึ้ เชน่ ในแงข่ องการเกบ็ ขอ้ มลู จะชว่ ยลดความซา้ ซอ้ นในการทจี่ ะตอ้ งจดั เกบ็ข้อมลู อยา่ งเดียวกนั ในแงข่ องการแกไ้ ขจะชว่ ยใหส้ ามารถแกไ้ ขขอ้ มลู ไดอ้ ยา่ งถกู ตอ้ งและเป็นระบบมากขน้ึข้นั ตอนการจดั ระเบยี บฐานข้อมลู การจดั ระเบยี บฐานขอ้ มลู หรอื ทีเ่ รยี กวา่ การทา ”นอรม์ อลไลเซชนั่ ” นัน้ จะเปน็ การปรบัตารางใหเ้ ขา้ สรู่ ปู แบบมาตรฐานทีเ่ รยี กวา่ นอรม์ อลไลเซช่นั ฟอรม์ (Normalization Form ยอ่ดว้ ย NF) ซงึ่ จะมลี าดบั ขนั้ ตา่ งๆ ตง้ั แต่ 1NF, 2NF จนกระทงั่ ถงึ 5NF แตท่ วา่ ในการใชโ้ ดยปกติจะทาจนถงึ ระดบั 3NF ก็เพยี งพอ ในท่นี กี้ จ็ ะขอกลา่ วถงึ ระดบั 3NF เทา่ นนั้ นอรม์ อลไลเซซนั่ฟอรม์ ในลาดบั ทสี่ งู กวา่ จะตอ้ งมคี ณุ สมบตั ขิ องลาดบั ทตี่ า่ กวา่ อยใู่ นตวั ดว้ ย ดงั นน้ั ถา้ ทาจนถงึขั้น 3NF กห็ มายความวา่ จะมคี ณุ สมบตั ขิ อง1NFกบั 2NF อยดู่ ว้ ยการทาใหต้ ารางเขา้ สู่ 1NF ในระดบั 1NF จะมีกฎอยวู่ า่ หา้ มไมใ่ หม้ ชี อ่ งขอ้ มลู ทเี่ กบ็ คา่ มากกว่าหนง่ึ คา่ อยู่ จากตวั อยา่ งในรปู ท1่ี กจ็ ะไดว้ า่ ใหแ้ ตกข้อมลู ในตารางทางซา้ ยออกเปน็ เรคคอรด์ ยอ่ ยๆตามตารางทางดา้ นขวา Order FirstName LastName Order Order พลู วลติ สนิ ธเสุ ก มอื ถอืFirstName LastName Order พลู วลติ สนิ ธเสุ ก คอมพวิเตอร์พลู วลติ สนิ ธเสุ ก มอื ถอื ,คอมพวิเตอร,์เครอื่ งพมิ พ์ พลู วลติ สนิ ธเสุ ก เครอ่ื งพมิ พ์ศภุ กนั ยา ชณิ ประทปี มอื ถอื ,จอภาพ ศภุ กนั ยา ชณิ ประทปี มอื ถอื ศภุ กนั ยา ชณิ ประทปี จอภาพรปู ท่ี 1 การทา ใหต้ ารางเขา้ สู่ 1NFการทา ใหต้ ารางเขา้ สู่ 2NF ตารางทม่ี คี ณุ สมบตั ใิ นขน้ั 2NF จะมลี กั ษณะกลา่ วคอื เปน็ ตารางทมี่ ไี พรมารยี่ ค์ ยี ์(ข้อมลู ทเ่ี ปน็ ตวั แทนขอ้ มลู ทงั้ หมด) ซง่ึ เมอ่ื เลอื กคา่ ไพรมาร่ยี ค์ ยี แ์ ลว้ จะตอ้ งสามารถบอกขอ้ มลู ท่ีเหลือทง้ั หมดได้ ถา้ ตารางใดมไี พรมารย่ี ค์ ยี ์เพยี งตวั เดยี วกถ็ อื วา่ อยใู่ นระดบั 2NFอยแู่ ลว้ แตถ่ า้มไี พรมารยี่ ค์ ีย์ มากกวา่ หนงึ่ กใ็ หพ้ จิ ารณาวา่ ไพรมารี่ยค์ ยี ์แตล่ ะตวั สามารถชบ้ี ง่ ไปยังฟลิ ด์อ่นื ๆไดห้ รอื ไม่ ถา้ ได้ ใหแ้ ยกไพรมาร่ียค์ ยี พ์ รอ้ มทง้ั ฟลิ ดเ์ หลา่ นน้ั ออกมา ในรปู ที่ 2 จะเหน็ ไดว้ า่ จากตารางรายละเอยี ดการขายมีหมายเลขใบกากบั สนิ คา้(InvNo) กบั รหสั สนิ คา้ (ProId) เปน็ ไพรมาร่ียค์ ยี ์ ถา้ ระบหุ มายเลขใบกากบั สนิ คา้ กบั รหสั สินคา้แลว้ ละกจ็ ะสามารถบง่ บอกถงึ ขอ้ มลู ทเ่ี หลอื ทงั้ หมดได้ แตเ่ มอ่ื พจิ ารณาตอ่ ไปวา่ ไพรมารย่ี ค์ ยี ์แตล่ ะตวั บง่ ชอี้ ะไรไดบ้ า้ ง กจ็ ะพบวา่ หมายเลขใบกากบั สินคา้ สามารถบง่ ชถ้ี งึ วนั ที่ และ ลูกคา้ได้ เราจงึ ดงึ ขอ้ มลู ทง้ั หมดออกมาเปน็ ตารางใหม่ สว่ นรหสั สนิ คา้ ก็สามารถชบี้ ง่ ขอ้ มลู ทง้ั หมด
ของสนิ คา้ ได้ กจ็ งึ ดงึ ออกมาไดอ้ กี ตารางเชน่ กนั ตารางการขายInvNo InvDate ProdId ProdName BrandName Model Quantity CustId Title FirstName LastName Telephone10001 10/12/2002 2001 มอื ถอื โนเกยี 8210 3 1001 นาย พลู วลติ สนิ ธเสุ ก 123-456710001 10/12/2002 2002 คอมพวิเตอร์ เดล PowerEdge2500 5 1001 นาย พลู วลติ สนิ ธเสุ ก 123-456710001 10/12/2002 2003 เครอื่ งพมิ พ์ เคยีวเซอรา่ 1800 8 1001 นาย พลู วลติ สนิ ธเสุ ก 123-456710002 10/12/2002 2001 มอื ถอื โนเกยี 8210 1 1002 นส. ศภุ กนั ยา ชณิ ประทปี 234-567810002 10/12/2002 2004 จอภาพ โซนี่ E200 6 1002 นส. ศภุ กนั ยา ชณิ ประทปี 234-567810003 15/12/2002 2003 เครอ่ื งพมิ พ์ เคยีวเซอรา่ 1800 9 1001 นาย พลู วลติ สนิ ธเสุ ก 123-456710004 17/12/2002 2001 มอื ถอื โนเกยี 8210 7 1003 นาย อนรรฆพล เวยี งพล 345-6789ตารางสนิ คา้ProdId ProdName BrandName Model Price ตารางการขาย InvNo ProdId Quantity2001 มอื ถอื โนเกยี 8210 13000 10001 2001 3 10001 2002 52002 คอมพวิเตอร์ เดล PowerEdge2500 140000 10001 2003 82003 เครอื่ งพมิ พ์ เคยีวเซอรา่ 1800 280002004 จอภาพ โซนี่ E200 11000 10002 2001 1ตารางใบกากบัสนิ คา้ 10002 2004 6InvNo InvDate CustId Title FirstName LastName Telephone 10003 2003 910001 10/12/2002 1001 นาย พลู วลติ สนิ ธเสุ ก 123-4567 10004 2001 710001 10/12/2002 1001 นาย พลู วลติ สนิ ธเสุ ก 123-456710001 10/12/2002 1001 นาย พลู วลติ สนิ ธเสุ ก 123-456710002 10/12/2002 1002 นส. ศภุ กนั ยา ชณิ ประทปี 234-567810002 10/12/2002 1002 นส. ศภุ กนั ยา ชณิ ประทปี 234-5678รปู ท่ี 10003 15/12/2002 1001 นาย พลู วลติ สนิ ธเสุ ก 123-4567 2 การทาใหต้ ารางเขา้ สู่ 2NFการ 10004 17/12/2002 1003 นาย อนรรฆพล เวยี งพล 345-6789 ทา ใหต้ ารางเขา้ สู่ 3NFตารางทม่ี คี ณุ สมบตั ใิ นขนั้ 3NF จะมลี กั ษณะกลา่ วคอื ตอ้ งไมม่ ีฟลิ ดอ์ น่ื นอกจากไพรมารยี่ ค์ ยี ท์ สี่ ามารถชี้บง่ ไปยงั ฟลิ ดอ์ น่ื ได้ ถา้ มี ให้ดงึ ออกมาเปน็ ตารางใหม่จากรปู ท2่ี แลว้ ในตารางใบกากบั สนิ คา้ จะเหน็ ไดว้ า่ รหสั ลกู คา้ (CustId) สามารถชบ้ี ง่ไปยงั ฟลิ ดอ์ นื่ ๆได้ ดงั นนั้ การจะทาใหอ้ ยใู่ นขั้น 3NF กต็ อ้ งแยกขอ้ มลู ลกู คา้ ทง้ั หมดออกมาเปน็ตารางใหม่ซง่ึ กจ็ ะไดเ้ ปน็ ตารางในรปู ที่3 ตารางใบกากบัสนิ คา้ ตารางลกู คา้InvNo InvDate CustId10001 10/12/2002 1001 CustId Title FirstName LastName Telephone10002 10/12/2002 1002 1001 นาย พลู วลติ สนิ ธเสุ ก 123-456710003 15/12/2002 1001 1002 นส. ศภุ กนั ยา ชณิ ประทปี 234-567810004 17/12/2002 1003 1003 นาย อนรรฆพล เวยี งพล 345-6789 รปู ท่ี 3 การทาใหต้ ารางเขา้ สู่ 3NF
จะเหน็ ไดว้ า่ ข้อมลู ลดความ “ซ้าซอ้ น”ลงไดม้ าก จากตวั อยา่ งในรปู ท่ี 2 บน ทมี่ ขี อ้ มลูทง้ั หมด84 ชอ่ ง จะเหลอื เพยี ง64ชอ่ งเทา่ นน้ั (นบั จากตารางสินคา้ และตารางการขาย ในรปู ที่ 2และตารางใบกากบั สนิ คา้ และตารางลกู คา้ ในรปู ที่ 3) แตใ่ นขณะเดยี วกนั กจ็ ะมจี านวนตารางเพมิ่ ขึน้ ดว้ ยจาก1ตารางเปน็ 4ตาราง โครงสรา้ งก็มคี วาม”ซบั ซ้อน” มากขน้ึ ทาใหก้ ารใชง้ านอาจจะสบั สนได้ นอกจากนั้นการทม่ี ตี ารางยอ่ ยๆหลายตารางอาจทาใหก้ ารเขา้ ถงึ ขอ้ มลู ชา้ ลงดว้ ย ดงั นนั้ การจะทาถงึ ขนั้ ใด หรอื ทาใหส้ มบรู ณเ์ พยี งไรนน้ั ก็ขน้ึ อยกู่ บั ลกั ษณะขอ้ มลู ทจ่ี ะใช้คาไข ระบบฐานขอ้ มลู การจดั ระเบยี บฐานขอ้ มลู (Normalization)นอรม์ อลไลเซชนั่ ฟอรม์(Normalization Form ) เคลด็ ลบั -วธิ กี าร บรหิ ารเทคโนโลยี่/สารสนเทศจดั ทาโดย อ. ภมู ิ เหลอื งจามกี ร
Search
Read the Text Version
- 1 - 10
Pages: