การ delete ข อม ลในตาราง ท ม การเช อมความสำพ น

เอกสารประกอบการอบรม หลกั สตู ร “Microsoft Excel 2016” Status Bar แสดงข้อมลู สรุปทางสถติ ิ Excel สามารถแสดงค่าการคานวณเบ้ืองต้น โดยไม่ต้องใช้สูตรคานวณ ซึ่งแสดงไว้ที่ Status Bar เม่ือ ผู้ใช้ทาการเลือกพื้นที่ที่ต้องการหาค่าการคานวณเบ้ืองต้น สามารถเพ่ิม หรือลดฟังก์ชันการใช้งานได้โดย คลิก ขวาที่ Status Bar แล้วเลอื กฟังกช์ นั ที่ตอ้ งการให้แสดงผล สำนักวิทยบริกำรและเทคโนโลยสี ำรสนเทศ มหำวทิ ยำลยั สวนดสุ ติ 75

บทท่ี 5. แบบจำลองอีอำร์ | 75 แผนบรหิ ารการสอนประจาบทที่ 5 แบบจาลองอีอาร์ หวั ข้อเน้อื หา 5.1. ความหมายของแบบจาลองอีอาร์ 5.2. ส่วนประกอบของแบบจาลองอีอาร์ 5.3. เอนทิตี (Entity) 5.3.1 Strong Entity 5.3.2 Weak Entity 5.3.3 Associative Entity 5.4 แอตทริบิวต์ (Attribute) 5.4.1 Simple Attribute 5.4.2 Composite Attribute 5.4.3 Multivalued Attribute 5.4.4 Derived Attribute 5.4.5 Key Attribute 5.5 รเี ลชน่ั ชีพ (Relationship) 5.5.1 One-to- One 5.5.2 One-to- Many 5.5.3 Many-to- One 5.5.4 Many-to- Many 5.6 คอนเนคทิวิตี (Connectivity) 5.7 คารด์ ินัลลติ ี (Cardinality) 5.8 สัญลกั ษณแ์ บบจาลองอีอารท์ ี่นิยม 5.9 พจนานกุ รมขอ้ มูล 5.10 ความหมายและประโยชนข์ องพจนานุกรมข้อมลู 5.11 ฝึกปฏิบัตกิ ารออกแบบอีอาร์ซ้ือขายสินค้า 5.12 ฝกึ ปฏบิ ตั กิ ารออกแบบพจนานกุ รมข้อมลู บทสรปุ คาถามทา้ ยบท เอกสารอา้ งองิ กำรบริหำรจัดกำรระบบฐำนขอ้ มูลเพ่อื งำนธุรกจิ

76 | บทท่ี 5. แบบจำลองอีอำร์ วตั ถุประสงค์เชิงพฤติกรรม 1. อธบิ ายความหมายของแบบจาลองอีอาร์ได้ 2. อธิบายความหมายเอนทิตีแต่ละชนิดได้ 3. อธิบายความหมายแอตทรบิ ิวต์แต่ละชนดิ ได้ 4. อธิบายความหมายและวเิ คระห์รีเลชั่นชพี แตล่ ะแบบได้ 5. อธิบายความหมายและระบุคอนเนคทิวติ ีและคาร์ดินัลลิตีได้ 6. อธิบายความหมายพจนานุกรมข้อมูลได้ 7. สามารถปฏิบัติการออกแบบอีอาร์ซ้ือขายสนิ ค้าได้ 8. สามารถปฏบิ ตั ิการออกแบบพจนานุกรมข้อมูลได้ วธิ ีสอนและกิจกรรมการเรียนการสอน 1. วิธสี อน 1.1 นาเข้าสู่บทเรียนโดยวีดทิ ศั น์ 1.2 ใชว้ ิธสี อนบรรยายแบบมสี ว่ นร่วม 1.3 ใชว้ ธิ ีสอนแบบกระบวนการกลุ่ม 1.4 ฝึกปฏิบตั กิ ารออกแบบอีอาร์ซ้ือขายสินค้า 1.5 ฝึกปฏิบัติการออกแบบพจนานกุ รมข้อมลู 2 กิจกรรมการเรยี นการสอน 2.1 เปดิ วิดีทัศน์เนอ้ื หาแบบจาลองอีอาร์ พร้อมทงั้ ต้ังโจทย์ประเดน็ คาถามก่อนเรียน 2.2 การบรรยายโดยใช้ PowerPoint 2.3 ฝึกปฏบิ ัตกิ ารออกแบบอีอาร์ซื้อขายสินคา้ 2.4 ฝึกปฏิบัติการออกแบบพจนานุกรมข้อมลู 2.5 นกั ศึกษาตอบคาถามท้ายบทเป็นการบ้าน สื่อการเรยี นการสอน 1. เอกสารประกอบการสอนวชิ าการบรหิ ารจัดการระบบฐานข้อมลู เพ่ืองานธรุ กิจ บทที่ 5 ระบบจดั การฐานข้อมูลมายดอสควิ แอล 2. โปรแกรม PowerPoint 3. โปรแกรม Visio 4. กระดานไวท์บอร์ด 5. ใบงาน การวัดและประเมนิ ผล 1. สังเกตพฤติกรรมของนกั ศึกษาการมสี ่วนรว่ มในการถามตอบการบรรยาย 2. ตรวจผลการปฏิบัติการออกแบบแผนภาพอีอาร์ซ้ือขายสนิ ค้า 3. ตรวจผลการปฏิบตั ิการออกแบบพจนานุกรมข้อมลู 4. ตรวจการตอบคาถามท้ายบท กำรบรหิ ำรจัดกำรระบบฐำนขอ้ มูลเพื่องำนธุรกิจ

บทที่ 5 แบบจำลองออี ำร์ (ER-Model) จากเนอื้ หาฐานขอ้ มูลเชงิ สัมพันธ์ทาใหเ้ ราทราบโครงสร้างของข้อมลู เปน็ ตาราง 2 มิติ แต่หาก จะแสดงลักษณะข้อมูลดังกล่าวจะทาใหม้ องเหน็ ภาพยาก จึงมผี ้อู อกแบบแผนภาพที่ใช้ในการอธบิ าย โครงสรา้ งขอ้ มูลของฐานขอ้ มูลเชิงสมั พันธ์ เรียกวา่ แบบจาลองอีอาร์ ซ่งึ ในบนทจ่ี ะกลา่ วถงึ ความหมาย แบบจาลองออี าร์ ส่วนประกอบของแบบจาลองอีอาร์ หลกั การในการออกแบบแบบจาลองออี าร์ และ สญั ลกั ษณ์แบบจาลองอีอาร์ที่นิยม รวมถึงใหน้ กั ศกึ ษาแบ่งกลุ่มในการฝึกปฏิบตั ิการออกแบบจาลองอี อารแ์ สดงโครงสรา้ งขอ้ มลู ทางธุรกจิ แล้วนาเสนอผลการวิเคราหอ์ อกแบบหนา้ ชนั้ เรียน 5.1 ควำมหมำยของแผนภำพออี ำร์ วเิ ชียร เปี่ยมชยั สวัสด์ิ (2547:62) กลา่ ววา่ แบบจาลองออี าร์ (Entity relationship model :ER) แบบจาลองอีอารเ์ ปน็ เคร่ืองมือท่ีช่วยในการออกแบบเพื่ออธบิ ายข้อมูลตา่ ง ๆ ในรูปแบบของเอน ติตี้และความสัมพันธ์ระหว่างเอนทิตี อีกทั้งยังเป็นที่นิยมในการอย่างแพร่หลายในการออกแบบ ฐานข้อมูล เนื่องจากสามารถใช้หลักการในการแปลงความต้องการให้ผู้ใช้อยู่ในรูปแบบของแผนผัง พรอ้ มทง้ั รายละเอยี ดทจี่ าเปน็ ต่อการสร้างฐานข้อมูล โอภาส เอี่ยมสิริวงศ์ (2551 : 56) ได้กล่าวว่า แบบจาลองอีอาร์จะเป็นแบบจาลองเชิงแนวคิด (Conceptual Data Model) ท่ีใช้แสดงลักษณะโดยรวมของข้อมูลในระบบโดยจะนาเสนอในรูปแบบ ของแผนภาพหรือไดอะแกรมท่ีมักเรียกกันว่า แผนภาพอีอาร์ หรืออีอาร์ไดอะแกรม วัตถุประสงค์ของ แบบจาลองก็คือต้องการนาเสนอให้เกิดความเข้าใจแบบและผู้ใช้งานโดยผู้ออกแบบฐานข้อมูลซึ่งเป็น ผรู้ บั ผดิ ชอบซ่งึ จะเปน็ ผู้สร้างแบบจาลองช่ืออะไรข้นึ มาใชส้ อ่ื สารกับผู้ใช้เพื่อใหเ้ กิด ภำพที่ 5.1 ตัวอย่างแผนภาพอีอารแ์ สดงโครงสร้างฐานข้อมูลสนิ คา้ OTOP ท่ีมา : ผ้เู ขยี น การบริหารจัดการระบบฐานข้อมลู เพื่องานธรุ กจิ นริ นั ดร ผานจิ

78 | บทท่ี 5 แบบจำลองออี ำร์ สรปุ แผนภาพอีอาร์ คือ แบบจาลองทใ่ี ช้อธิบายโครงสรา้ งฐานข้อมูล เป็นแบบจาลองข้อมูลท่ี ไดร้ บั ความนิยมในปจั จุบนั ใช้ในการอธบิ ายโครงสรา้ งของข้อมลู และความสัมพันธ์ของข้อมูล 5.2 สว่ นประกอบของแบบจำลองออี ำร์ สว่ นประกอบของแบบจาลองอีอาร์ประกอบดว้ ย 3 ส่วน ดังนี้ 5.2.1 เอนทติ ี (Entity) เป็นวัตถุ สิ่งของ ท่เี ราสนใจในการจัดเกบ็ ข้อมูลใน ระบบงานนั้น ๆ สัญลักษณร์ ูปสี่เหล่ียมผนื ผ้า และมีช่ือเอนทิตกี ากับใน สเี่ หล่ียมผนื ผ้า นักศกึ ษา สนิ ค้า รายการสงั่ ซ้ือ ภำพที่ 5.2 ตวั อยา่ งเอนทติ ี (Entity) ทีม่ า : ผเู้ ขียน 5.2.2 แอททรบิ ิว (Attribute) เป็นคุณสมบตั ิของเอนทติ ี สัญลักษณ์รูปวงรี และมีช่อื แอททริ บิว กากับในวงรี รหัสนกั ศกึ ษา ช่ือสนิ ค้า อายุ ภำพท่ี 5.3 ตวั อยา่ งแอททรบิ ิว (Attribute) ทมี่ า : ผเู้ ขียน 5.2.3 ควำมสัมพันธ์ (Relationship) คือ ความสัมพันธร์ ะหวา่ งเอนทติ ี สัญลักษณ์สเ่ี หลีย่ ม ขนมเปยี กปูน และมชี ือ่ ของความสมั พนั ธเ์ ปน็ คากริยา เชน่ ทางาน, ให้บริการ, ม,ี สงั กดั ใหบ้ ริการ สงั กดั ภำพที่ 5.4 ตัวอยา่ งความสมั พนั ธ์ (Relationship) ที่มา : ผเู้ ขียน กำรบรหิ ำรจัดกำรระบบฐำนข้อมูลเพอ่ื งำนธุรกิจ

บทท่ี 5 แบบจำลองอีอำร์ | 79 5.3 เอนทติ ี (Entity) เอนทิตี หมายถึง ส่ิงท่ีเราสนใจในการจัดเก็บข้อมูล ซึ่งอาจเป็นได้ท้ังรูปธรรม เช่น คน, รถ, สถานที่, วัตถุ, สัตว์, และนามธรรม เหตุการณ์และแนวความคิด เช่น ลงทะเบียน, การขาย, การยืม, การประกวด, สมคั รสอบ เป็นต้น แบบฝึกหัดในช้ันเรียนให้นักศึกษายกตัวอย่างเอนทติ ีทเี่ ปน็ 1. บคุ คล 2. สถานท่ี 3. วตั ถุ 4. เหตกุ ารณ์ 5.3.1 เอนทิตปี กติ (Strong Entity หรือ Regular Entity) เป็นเอนทิตีท่ีมีคุณสมบัติช้ีเฉพาะไม่ข้ึนกับเอนทิตีอ่ืน เช่น เอนทิตีสินค้า, เอนทิตีผู้ผลิต สินค้า, เอนทติ ีลกู คา้ เป็นตน้ สญั ลักษณ์รูปสีเ่ หล่ยี มผนื ผ้า และมีชอ่ื เอนทติ ีกากบั ในส่ีเหล่ียมผืนผ้า นักศึกษา สนิ ค้า ภำพท่ี 5.5 สัญลักษณ์เอนทติ ีปกติ ท่มี า : ผ้เู ขยี น 5.3.2 เอนทิตีอ่อนแอ (Weak Entity) เอนทติ ีอ่อนแอเป็นเอนทิตีทไ่ี มส่ ามารถเกดิ ขึ้นได้ตามลาพัง ต้องอาศยั เอนทติ ีอื่น เช่น สัญลักษณส์ ่เี หล่ียมผืนผา้ ซ้อนกนั และมีชื่อเอนทติ กี ากบั ในสเี่ หลย่ี มผืนผา้ ดงั กลา่ ว ชารOะrคdeา่ rงวด ชาระคา่ งวด ภำพท่ี 5.6 สญั ลักษณ์เอนทิตีออ่ นแอ ทม่ี า : ผูเ้ ขยี น เอนทิตีชาระคา่ งวดเปน็ เอนทิตอี ่อนแอเพราะตอ้ งอาศยั ข้อมลู จากเอนติตยี ืมเงนิ ถ้าไม่มี เอนตติ ียมื เงนิ กจ็ ะไมส่ ามารถระบชุ าระค่างวดได้ กำรบริหำรจัดกำรระบบฐำนขอ้ มูลเพ่อื งำนธุรกจิ

80 | บทที่ 5 แบบจำลองอีอำร์ เอนทิตี Order เป็นเอนทติ ีอ่อนแอเพราะต้องอาศยั ขอ้ มูลจากเอนติตีลูกค้า และข้อมูล จากเอนติตีสินค้า ถ้าไม่มเี อนติตีเอนตติ ลี กู คา้ และเอนตติ ีสินค้าจะไมส่ ามารถระบบรายละเอียดใน เอนทติ ี Order ได้ 5.3.3 Associative Entity Associative Entity เป็นเอนทติ ที ที่ าหน้าท่ีแปลงความสมั พันธ์จาก Many to Many ไป เป็น One to Many เชน่ ความสัมพันธ์ระหวา่ งเอนติตนี ักศึกษากับเอนตติ รี ายวิชา สญั ลักษณเ์ อนทิตี Associative ลงทะเบียน นกั ศึกษา M ลงทะเบยี น N รายวชิ า นกั ศึกษา 1 M ลงทะเบยี น M 1 รายวิชา ภำพที่ 5.7 สญั ลกั ษณ์เอนทติ ี Associative ท่มี า :ผเู้ ขยี น 5.4 แอตทริบิวต์ (Attribute) แอตทริบิวต์ หมายถงึ คุณสมบตั ขิ องเอนทิตที ี่เราสนใจ สัญลักษณแ์ อตทรบิ วิ ต์เป็นรูปวงรี และมชี ่ือแอตทริบิวต์กากับภายใน 5.4.1 แอตทริบิวต์อย่ำงงำ่ ย (Simple Attribute) แอททรบิ ิวต์ทไ่ี ม่สามารถแยกข้อมูลออกเป็นข้อมลู ย่อย ๆ ไดอ้ ีก ตวั อยา่ งเชน่ รหัส นักศึกษา, ชอื่ สถานที่, เพศ, ราคา กำรบริหำรจัดกำรระบบฐำนขอ้ มูลเพ่ืองำนธุรกจิ

บทท่ี 5 แบบจำลองอีอำร์ | 81 รหัสนกั ศกึ ษา ชอื่ นา้ ตก ราคา ภำพที่ 5.8 ตวั อยา่ งแอททริบิวต์ท่ีอย่างงา่ ย ทีม่ า :ผู้เขียน 5.4.2 คอมโพสติ แอททรบิ วิ ต์ (Composite Attribute) แอททรบิ วิ ต์ทส่ี ามารถแบ่งแยกออกเป็นแอททรบิ วิ ต์ย่อย ๆ ได้อกี ตัวอย่างเชน่ ทอี่ ยู่, ทะเบยี นรถ ตาบล อาเภอ เลขท่ี ทอ่ี ยู่ จังหวดั เลขทะเบยี น จงั หวัด Composite Attribute ทะเบยี น รถ ภำพท่ี 5.9 ตวั อย่างแอททรบิ ิวตท์ ส่ี ามารถแบง่ แยกได้ ท่มี า :ผู้เขียน 5.4.3 มลั ติแวลูแอททรบิ วิ ต์ (Multivalued Attribute) แอททรบิ วิ ต์ที่สามารถมีคา่ ได้หลายค่า เช่น 1. แอททริบวิ ต์วุฒกิ ารศกึ ษา ท่ีสามารถใส่ได้หลายคา่ ท้ัง ปริญญาตรี, ปรญิ ญาโท, ปรญิ ญาเอก กำรบริหำรจัดกำรระบบฐำนขอ้ มูลเพ่ืองำนธุรกิจ

82 | บทที่ 5 แบบจำลองอีอำร์ วฒุ กิ ารศกึ ษา ภำพที่ 5.10 ตัวอยา่ งแอททริบิวต์ท่สี ามารถมคี า่ ได้หลายคา่ ทมี่ า :ผ้เู ขยี น 2. แอททริบวิ ต์เบอรโ์ ทรศัพท์ ทีแ่ ต่ละคนสามารถมไี ดห้ ลายคา่ เบอรโ์ ทรศัพท์ ภำพท่ี 5.11 ตวั อย่างแอททริบวิ ตท์ ส่ี ามารถมีคา่ ได้หลายค่า ทีม่ า :ผเู้ ขียน 5.4.4 ดไี ลน์แอททรบิ วิ ต์ (Derived Attribute) แอททรบิ วิ ต์ท่เี กิดจากการคานวณ เช่น 1. แอททรบิ ิวต์อายุ เกิดจากการคานวณจากวนั เกิด อายุ 2. แอททรบิ วิ ต์ราคาสนิ ค้ารวม vat เกดิ จากการคานวณ ราคา*อัตรา vat ราคาสนิ ค้ารวม vat ภำพที่ 5.12 ตวั อยา่ งแอททรบิ ิวต์ที่เกิดจากการคานวณ ท่มี า :ผ้เู ขียน 5.4.5 คยี แ์ อตทรบิ วิ ต์ (Key Attribute) แอตทริบวิ ต์คยี ์หลัก ทีบ่ ่งบอกความเป็นเอกลักษณ์ของแต่ละทูเพิล ชอื่ ของแอตทริบวิ ต์ ใหข้ ีดเสน้ ใต้ กำรบริหำรจัดกำรระบบฐำนขอ้ มูลเพอ่ื งำนธุรกจิ

บทท่ี 5 แบบจำลองออี ำร์ | 83 รหัสนกั ศึกษา รหสั สนิ คา้ ภำพท่ี 5.13 ตัวอยา่ งแอตทรบิ วิ ต์คีย์หลัก ท่มี า :ผูเ้ ขียน 5.5 รีเลชันชพี (Relationship) รเี ลชันชีพ หมายถงึ ความสัมพนั ธร์ ะหวา่ งเอนติตี ในฐานข้อมลู เชิงสมั พันธ์เอนติตี สามารถเชอ่ื มโยงกนั ได้ ในแผนภาพอีอาร์เพื่อใหส้ ามารถแสดงการเช่ือมโยงดงั กลา่ ว โดยมี รเี ลชันชีพแสดงความสมั พนั ธ์ระหวา่ งเอนติตี การตงั้ ชอ่ื ของรีเลชันชพี ทัว่ ไปจะใช้คากิริยา เชน่ สอน, ลงทะเบยี น, สัง่ ซ้ือ, ยมื , คนื เป็นต้น ตวั อย่าง สินค้า M ผลิต 1 ผ้ผู ลติ พนกั งาน M สังกดั 1 แผนก นกั เรยี น M ลงทะเบยี น N วิชา ภำพท่ี 5.14 ตัวอยา่ งรีเลช่นั ชพี ทม่ี า :ผู้เขียน โดยมีประเภทของความสมั พันธ์ 3 ประเภทคอื หนึง่ ต่อหนึ่ง (1:1), หนง่ึ ตอ่ กลุ่ม (1:M) และ กลุ่มตอ่ กลุ่ม (M:N) เรยี กวา่ คอนเนคทวิ ิตี (Connectivity) และจานวนของเอนทติ ีหน่งึ มีความสัมพันธก์ ับเอนทติ หี นงึ่ เชน่ พนักงานหน่งึ คนลาได้ไม่เกิน 10 คร้งั และการลาแต่ละช่วงห้ามเกนิ 5 คน เรียกว่า คาร์ดินัลลิตี (Cardinality) กำรบริหำรจัดกำรระบบฐำนข้อมูลเพอื่ งำนธุรกิจ

84 | บทที่ 5 แบบจำลองอีอำร์ คอนเนคทิวิตี พนักงาน 1 ทา M ลา (0,10) (1,3) คาร์ดินลั ลติ ี ภำพท่ี 5.15 ความสมั พันธ์ระหวา่ งเอนทิตลี ูกคา้ และเอนทิตีใบเสรจ็ ท่มี า :ผ้เู ขยี น 5.5.1 ควำมสมั พนั ธ์แบบหน่ึงตอ่ หนึ่ง (One-to-One) ความสมั พนั ธร์ ะหว่างเอนตติ ีแบบวันทูวัน หรอื หน่งึ ต่อหนงึ่ เชน่ 1. ประชาชน 1 คนมีใบขับข่ไี ด้ 1 ใบ และใบขบั ขแ่ี ตล่ ะใบก็เปน็ ของแต่ละคน ประชาชน 1 มี 1 ใบขับข่ี ภำพที่ 5.16 ความสัมพันธร์ ะหวา่ งเอนทิตปี ระชาชน และเอนทิตใี บขับขี่ ท่มี า :ผเู้ ขยี น 2. ผลิตภัณฑ์ 1 ชนิ้ มหี มายเลขอาหารและยา (เลข อย.) ได้ 1 หมายเลข และเลข อย. 1 หมายเลขใช้กบั ผลติ ภัณฑ์ได้ 1 รายการ ผลิตภณั ฑ์ 1 ลงทะเบยี น 1 อาหารและยา ภำพที่ 5.17 ความสัมพันธร์ ะหว่างเอนทิตีผลติ ภัณฑ์ และเอนทิตีอาหารและยา ทม่ี า :ผเู้ ขยี น กำรบรหิ ำรจัดกำรระบบฐำนข้อมูลเพ่ืองำนธุรกจิ

บทท่ี 5 แบบจำลองอีอำร์ | 85 5.5.2 ควำมสมั พันธ์แบบหนึ่งตอ่ กลุ่ม (One-to-Many) ความสมั พนั ธร์ ะหวา่ งเอนติตีแบบวนั ทูเมน่ี หรอื หนึ่งต่อกลุ่ม เช่น 1. ความสมั พนั ธร์ ะหว่างลูกค้า กบั ใบเสรจ็ เป็นแบบหนึ่งต่อกลุม่ เพราะ ลูกค้า 1 คนมี ใบเสร็จไดห้ ลายใบ แต่ใบเสร็จแต่ละใบเปน็ ของลกู ค้าคนเดยี ว ลูกค้า 1 มี M ใบเสรจ็ ภำพท่ี 5.18 ความสมั พันธ์ระหว่างเอนทิตีลกู ค้า และเอนทิตีใบเสรจ็ ท่ีมา :ผเู้ ขยี น 2. ความสัมพันธ์ระหว่างผู้ผลิตกับสนิ ค้า เป็นแบบหน่ึงตอ่ กลมุ่ เพราะผู้ผลิตแต่ละ รายสามารถผลติ สนิ ค้าไดห้ ลายสินค้า แต่สนิ คา้ แต่ละรายการเปน็ ของผ้ผู ลิตเพียงผู้ผลติ เดียว ผูผ้ ลติ 1 มี M สนิ คา้ ภำพที่ 5.19 ความสมั พนั ธ์ระหว่างเอนทิตผี ู้ผลติ และเอนทิตีสินคา้ ทีม่ า :ผู้เขียน 5.5.3 ควำมสัมพนั ธ์แบบกลมุ่ ตอ่ กลุม่ (Many-to-Many) ความสัมพนั ธร์ ะหวา่ งเอนตติ ีแบบเมนีท่ ูเมนี่ หรือ กลุ่มต่อกลุ่ม เช่น 1. ความสมั พันธ์ระหวา่ งสินค้า กับใบส่ังซ้ือ เปน็ แบบกลุ่มต่อกลุม่ เพราะ สนิ ค้า 1 รายการสามารถสั่งซอื้ ไดห้ ลายครง้ั (หลายใบสั่งซื้อ) และใบสงั่ ซ้ือ 1 ใบสามารถส่ังซื้อสินค้าได้หลาย รายการ ใบสั่งซ้ือ M มี M สนิ ค้า ภำพท่ี 5.20 ความสมั พนั ธ์ระหว่างเอนทติ ีผ้ผู ลิต และเอนทิตีสนิ คา้ ทีม่ า :ผเู้ ขียน กำรบริหำรจัดกำรระบบฐำนข้อมูลเพอื่ งำนธุรกจิ

86 | บทท่ี 5 แบบจำลองอีอำร์ 2. ความสมั พันธร์ ะหว่างลกู ค้า กบั เท่ียวบิน เป็นแบบกลุ่มต่อกลมุ่ เพราะ ลูกค้า 1 คน สามารถซื้อต๋ัวเทย่ี วบินได้หลายเทย่ี ว และแต่ละเทยี่ วบินมีลูกคา้ หลายคน ลกู คา้ M มี N เทย่ี วบิน ภำพท่ี 5.21 ความสมั พนั ธร์ ะหวา่ งเอนทติ ลี ูกค้า และเอนทิตีเทย่ี วบนิ ท่ีมา : ผูเ้ ขียน สญั ลกั ษณ์แบบจาลองมหี ลายรูปแบบแตโ่ ดยสว่ นมากนิยมออกแบบๆจาลองข้อมูลด้วยอีอาร์แบบ Chen และแบบ Crow’s Foot ภำพท่ี 5.22 สัญลกั ษณ์แบบจาลองอีอาร์แบบ Chen และแบบ Crow’s Foot ท่ีมา : Peter Rob and Carlos Coronel, 2009:42 และนอกจากแบบจาลองขอ้ มูลดว้ ยอีอาร์แบบ Chen และอีอาร์แบบ Crow’s Foot ยังมี ผู้พัฒนาขึ้นมาอกี จานวนมากอยา่ งเช่น กำรบริหำรจัดกำรระบบฐำนขอ้ มูลเพอ่ื งำนธุรกิจ

บทท่ี 5 แบบจำลองอีอำร์ | 87 5.6 สัญลกั ษณ์แบบจำลองอีอำรท์ ีน่ ิยม แบบจาลองอีอาร์มีผู้คดิ คน้ ขนึ้ เป็นจานวนมาก แล้วแตผ่ ู้ใช้งานเลือกใช้ ในเอกสารเลม่ น้ีใช้ แบบจาลองออี าร์รปู แบบ Chen ในการอธิบายโรงสรา้ งข้อมูลซึง่ คิดคน้ โดย Peter Chen ภำพที่ 5.23 สัญลักษณ์แบบจาลองอีอาร์ทีน่ ิยม ท่มี า : //slideplayer.com/slide/4490085/ 5.7 ฝึกปฏบิ ัตกิ ำรออกแบบออี ำรแ์ สดงโครงสร้ำงข้อมลู ทำงธรุ กิจ ให้นกั ศึกษาแบ่งกลมุ่ วิเคราะห์และออกแบบแผนภาพออี าร์อธิบายโครงสรา้ งของฐานขอ้ มูลท่ี นักศึกษาสนใจแล้วให้นาเสนอหนา้ ชนั้ เรยี นกลุ่มละ15 นาที 5.8 บทสรปุ แบบจาลองออี าร์ คอื แบบจาลองทใ่ี ชอ้ ธิบายโครงสรา้ งฐานขอ้ มลู เปน็ แบบจาลองข้อมูลทไ่ี ดร้ บั ความนิยมในปัจจุบนั กำรบรหิ ำรจัดกำรระบบฐำนขอ้ มูลเพือ่ งำนธุรกจิ

88 | บทที่ 5 แบบจำลองอีอำร์ สว่ นประกอบของแบบจาลองออี าร์ประกอบด้วย 3 สว่ น 1. เอนทติ ี (Entity) หมายถงึ สง่ิ ทเี่ ราสนใจในการจดั เกบ็ ข้อมลู ซง่ึ อาจเป็นไดท้ ้งั รูปธรรม เช่น คน, รถ, สถานที่, วตั ถุ, สัตว,์ และนามธรรม เหตกุ ารณแ์ ละแนวความคิด เชน่ ลงทะเบียน, การขาย, การยมื , การประกวด, สมคั รสอบ เปน็ ต้น สญั ลักษณ์รปู ส่ีเหล่ียมผนื ผ้า และมชี ื่อเอนทิตีกากบั ใน ส่ีเหลี่ยมผนื ผา้ ตวั อย่างเอนทิตี นักศึกษา สินคา้ รายการสัง่ ซอื้ 2. แอททรบิ วิ (Attribute) เป็นคุณสมบตั ิของเอนทิตีท่เี ราสนใจ สญั ลักษณแ์ อตทรบิ วิ ต์เป็นรปู วงรี และมชี อ่ื แอตทริบวิ ต์กากับภายใน ตัวอย่างแอททริบวิ รหัสนกั ศกึ ษา ช่ือสนิ ค้า อายุ 3. ความสมั พนั ธ์ (Relationship) คือ ความสัมพันธ์ระหวา่ งเอนตติ ี ในฐานข้อมลู เชงิ สมั พนั ธ์ เอนติตีสามารถเช่อื มโยงกันได้ ในแผนภาพอีอาร์เพอื่ ให้สามารถแสดงการเชื่อมโยงดังกล่าว โดยมี รีเลชันชีพแสดงความสัมพันธ์ระหว่างเอนติตี การตง้ั ชอ่ื ของรีเลชันชพี ท่วั ไปจะใชค้ ากิรยิ า เชน่ สอน, ลงทะเบยี น, สั่งซื้อ, ยมื , คนื เปน็ ตน้ ตวั อย่างความสมั พนั ธ์ ความสมั พันธ์แบบหน่ึงต่อหนึ่ง (One-to-One) ประชาชน 1 มี 1 ใบขบั ข่ี ความสมั พันธ์แบบหน่ึงต่อกลุ่ม (One-to-Many) ลูกคา้ 1 มี M ใบเสรจ็ ความสมั พนั ธ์แบบกลุ่มตอ่ กลมุ่ (Many-to- Many) กำรบริหำรจัดกำรระบบฐำนขอ้ มูลเพื่องำนธุรกจิ

บทท่ี 5 แบบจำลองอีอำร์ | 89 ใบสงั่ ซื้อ M มี M สนิ คา้ คอนเนคทิวิตี พนกั งาน 1 ทา M ลา (0,10) (1,3) คาร์ดนิ ลั ลติ ี กำรบริหำรจัดกำรระบบฐำนข้อมูลเพอ่ื งำนธุรกจิ

90 | บทที่ 5 แบบจำลองออี ำร์ คำถำมท้ำยบท 1. เอนทติ ีและแอททรบิ วิ แตกตา่ งกันอยา่ งไร 2. ให้ออกแบบแผนภาพอีอาร์ท่ีมี Derived Attribute ประกอบอยู่ดว้ ยอะไรบ้าง 3. จงอธิบายความหมาย พร้อมทั้งยกตวั อย่างประกอบ (ไมใ่ ห้ใช้ตัวอยา่ งในเอกสาร ประกอบการสอนน้)ี 3.1 ความสมั พนั ธ์แบบหนึ่งตอ่ หนึ่ง (One-to-One) 3.2 ความสมั พนั ธแ์ บบหนึ่งต่อกลุ่ม (One-to-Many) 3.3 ความสมั พันธ์แบบกลุ่มต่อกลุ่ม (Many-to- Many) 4. คอนเนคทิวติ ีและคาร์ดินลั ลติ ี แตกต่างกนั อย่างไร พร้อมวาดแผนภาพประกอบ (หา้ มใช้ ตวั อยา่ งในเอกสารประกอบการสอนน้ี) 5. จงเขียนแผนภาพอีอาร์แสดงโครงสร้างข้อมลู ระบบยืมคนื อุปกรณส์ านักงานของบรษิ ัท โดยใหส้ ามารถตรวจสอบได้ว่าใคร ยมื อุปกรณ์อะไร นาไปใช้ในงานกิจกรรมใด ตอ้ งส่งคืน วันที่เท่าไหร่ พนักงานสามารถคน้ หาอุปกรณ์ทตี่ อ้ งการใชง้ านไดว้ า่ อปุ กรณ์ใดว่างอปุ กรณ์ ใดถูกยืมไป และมีกาหนดส่งคืนวันทีเ่ ทา่ ไหร่ กำรบริหำรจัดกำรระบบฐำนขอ้ มูลเพ่ืองำนธุรกจิ

บทท่ี 5 แบบจำลองอีอำร์ | 91 เอกสำรอำ้ งองิ กติ ติ ภักดวี ัฒนะกลุ . (2521). ระบบฐำนข้อมลู (Database Systems). กรงุ เทพฯ : เคทีพคี อม แอนด์คอนซัลท.์ วเิ ชยี ร เปยี่ มชยั สวสั ด.์ิ (2547). ระบบฐำนข้อมลู (พิมพ์คร้ังที่ 2). กรุงเทพฯ: สานักพิมพ์ ส.ส.ท. โอภาส เอ่ยี มสริ ิวงศ์. (2551). ระบบฐำนข้อมลู (Database Systems). กรุงเทพฯ : ซเี อ็ดยูเคช่นั . Dr. Edgar E Codd. (1990). The RELATIONAL MODEL for DATABASE MANAGEMENT: VERSION 2. Massachusetts: ADDISON-WESLEY PUBLISHING COMPANY. Peter Rob and Carlos Coronel. (2009). Database Systems: Design, Implementation, and Management. Massachusetts: Course Technology. กำรบรหิ ำรจัดกำรระบบฐำนข้อมูลเพื่องำนธุรกิจ

92 | บทท่ี 5 แบบจำลองออี ำร์ กำรบรหิ ำรจัดกำรระบบฐำนขอ้ มูลเพ่อื งำนธุรกจิ

บทท่ี 6 ระบบจัดการฐานข้อมูล MySQL | 93 แผนบรหิ ารการสอนประจาบทที่ 6 ระบบจัดการฐานขอ้ มลู MySQL หัวขอ้ เนื้อหา 6.1 ระบบจัดการฐานข้อมูล MySQL 6.2 การติดตัง้ MySQL 6.3 การสร้างฐานข้อมูล 6.4 ชนดิ ของข้อมูลของ MySQL 6.5 การสรา้ งตาราง 6.6 การเช่ือมความสมั พันธร์ ะหวา่ งตาราง 6.7 phpMyAdmin 6.8 ฝกึ ปฏิบัตกิ าร 6.8.1 การสร้างฐานขอ้ มูลซอ้ื ขายสินคา้ 6.8.2 การสรา้ งตารางซื้อขายสินค้า บทสรปุ คาถามท้ายบท เอกสารอา้ งอิง วตั ถปุ ระสงคเ์ ชิงพฤตกิ รรม 1. อธิบายความหมายระบบจัดการฐานข้อมลู MySQL ได้ 2. สามารถทาการตดิ ตัง้ MySQL ได้ 3. สามารถสร้างฐานข้อมูลได้ 4. อธบิ ายความหมายของชนิดของข้อมูลใน MySQL ได้ 5. สามารถสร้างตารางได้ 6. สามารถเชื่อมความสมั พนั ธ์ระหว่างตารางได้ 7. สามารถใช้ phpMyAdmin ได้ 8. ออกแบบและสร้างฐานข้อมลู , สรา้ งตารางซอ้ื ขายสินค้า และเช่อื มตารางได้ การบริหารจัดการระบบฐานข้อมูลเพอื่ งานธุรกิจ

94 | บทท่ี 6 ระบบจัดการฐานขอ้ มูล MySQL วิธีสอนและกจิ กรรมการเรยี นการสอน 1. วธิ ีสอน 1.1 นาเขา้ สู่บทเรียนโดยวีดิทัศน์ 1.2 ใช้วธิ สี อนบรรยายแบบมสี ว่ นรว่ ม 1.3 ใชว้ ิธีสอนแบบกระบวนการกลุ่ม 1.4 ฝึกปฏิบัตสิ รา้ งฐานขอ้ มลู 1.5 ฝึกปฏิบตั ิสรา้ งตารางซ้ือขายสินคา้ 2 กจิ กรรมการเรยี นการสอน 2.1 เปดิ วดิ ีทัศน์เนอื้ หาระบบจัดการฐานข้อมลู MySQL พร้อมทั้งตงั้ โจทยป์ ระเด็น คาถามกอ่ นเรียน 2.2 การบรรยายโดยใช้โปรแกรม PowerPoint 2.3 ฝกึ ปฏบิ ัติการใช้โปรแกรม phpMyAdmin 2.4 ฝกึ ปฏิบัตกิ ารสรา้ งฐานข้อมูล สรา้ งตารางซอื้ ขายสนิ ค้า และเช่อื มตาราง 2.5 นักศึกษาตอบคาถามท้ายบทเปน็ การบา้ น สอ่ื การเรยี นการสอน 1. เอกสารประกอบการสอนวชิ าการบริหารจัดการระบบฐานข้อมูลเพ่ืองานธุรกิจ บทท่ี 6. ระบบจัดการฐานขอ้ มูล MySQL 2. PowerPoint 3. โปรแกรม phpMyAdmin 4. โปรแกรม Xampp 5. ใบงาน การวดั และประเมินผล 1. สงั เกตพฤติกรรมของนักศกึ ษาการมสี ่วนรว่ มในการถามตอบการบรรยาย 2. ตรวจผลการการสร้างฐานขอ้ มลู สร้างตารางซือ้ ขายสินค้า และเช่ือมตาราง 3. ตรวจการตอบคาถามท้ายบท การบริหารจัดการระบบฐานขอ้ มูลเพอื่ งานธุรกจิ

บทที่ 6 ระบบจดั การฐานข้อมลู มายเอสคิวแอล (MySQL Database) เม่ือได้วิเคราะห์และออกแบบโครงสร้างของข้อมูลในบทท่ี 5 แล้ว ในบทที่ 6 จะกล่าวถึง ซอฟต์แวร์ระบบจัดการฐานข้อมูล โดยเลือกระบบจัดการฐานข้อมูลมายเอสคิวแอล ต้ังแต่ข้ันตอนใน การติดตั้งระบบจัดการฐานข้อมูลมายเอสคิวแอล การเช่ือมต่อฐานข้อมูล การสร้างฐานข้อมูล การ สร้างตาราง การเชื่อมความสัมพันธ์ระหว่างตาราง และแบบฝึกหัดเชิงปฏิบัติการ โดยเป็นการเรียน การสอนเชิงปฏิบตั กิ ารเพื่อใหน้ กั ศกึ ษาสามารถนาไปสร้างฐานข้อมลู จริงในการทางาน 6.1 ระบบจดั การฐานข้อมูลมายเอสควิ แอล มายเอสคิวแอล (MySQL) เป็นโปรแกรมระบบจัดการฐานข้อมูลที่มีประสิทธิภาพ เป็นระบบ จัดการฐานข้อมูลเชิงสัมพันธ์ (RDBMS) มีโครงสรา้ งการจัดเกบ็ ข้อมูลในรูปแบบของตาราง 2 มิติ คือ แถว และคอลัมน์ มีการเช่ือมโยงข้อมูลกันระหว่างตาราง รองรับคาส่ัง SQL อีกทัง้ สามารถใช้รว่ มกับ ภาษาท่ีทางานฝ่ังเซิร์ฟเวอร์ เช่น ภาษา php, asp.net, asp หรือ jsp หรือทางานร่วมกับภาษาท่ี ทางานฝ่ังไคลเอนต์ เช่น Java, C#, VB.net ได้เป็นอย่างดี โดยมายเอสคิวแอลสามารถทางานได้บน ระบบปฏิบัติการที่หลากหลาย เช่น Linux, FreeBSD, Mac OS รวมทั้ง Microsoft Windows ปัจจุบันนิยมติดตั้งเป็นฐานข้อมูลสาหรับเว็บแอพลิเคชัน โดยเฉพาะเว็บท่ีพัฒนาด้วยภาษา PHP ภาพท่ี 6.1 ผใู้ ช้งานฐานขอ้ มูลมายเอสคิวแอล ท่มี า : //www.mysql.com/customers/ การบรหิ ารจัดการระบบฐานข้อมูลเพือ่ งานธุรกจิ นริ นั ดร ผานจิ

96 | บทที่ 6 ระบบจัดการฐานข้อมูลมายเอสคิวแอล ซ่งึ ปัจจุบนั กย็ ังมีผู้ใชฐ้ านข้อมูลมายเอสควิ แอลทมี่ ชี อ่ื เสยี ง เชน่ Facebook, Google, NASA, Netflix, Twitter, Yahoo, YouTube, Wikipedia เป็นต้น ภาพท่ี 6.2 ตราสญั ลกั ษณ์มายเอสควิ แอล ทมี่ า : //www.mysql.com/common/logos/logo-mysql-170x115.png 6.2 การติดตงั้ MySQL ขัน้ ตอนการติดตง้ั ในการเรยี นการสอนวิชาการบรหิ ารจดั การระบบฐานขอ้ มลู เพ่ืองานธุรกิจน้ี ในการตดิ ตง้ั ฐานขอ้ มลู Mysql จะใชโ้ ปรแกรม Xampp ซง่ึ ยอ่ มาจาก X = Cross Platform (Windows, MAC OS, Solaris and Linux) A = Apache M = MySQL P = PHP P = Perl (Xampp Team, 2014) ภาพที่ 6.3 โลโก้โปรแกรม Xampp ทีม่ า : ผเู้ ขียน โดยสามารถดาวโหลดไดท้ ี่เวบ็ ไซต์ //www.apachefriends.org/ โดยมขี ้นั ตอนการ ตดิ ตง้ั โดยการฝกึ ปฏบิ ตั ิการในห้องเรยี น การบริหารจัดการระบบฐานขอ้ มูลเพ่ืองานธุรกิจ

บทท่ี 6 ระบบจดั การฐานขอ้ มูลมายเอสควิ แอล | 97 ภาพที่ 6.4 เว็บไซต์ //www.apachefriends.org/ ทมี่ า : ผู้เขียน เลือกดาวน์โหลดตรงตามระบบปฏิบตั ิการทีก่ าลังใชง้ าน ซ่งึ Xampp สนบั สนุนทั้ง ระบบปฏิบัตกิ าร Windows, Linux, Os X แลว้ ทาการติดต้ัง ภาพท่ี 6.5 คลิก Next > เพอ่ื ตดิ ตงั้ ท่ีมา : ผู้เขียน การบรหิ ารจัดการระบบฐานข้อมูลเพื่องานธุรกจิ

98 | บทท่ี 6 ระบบจัดการฐานข้อมูลมายเอสควิ แอล ภาพที่ 6.6 เลอื ก Component ทีต่ อ้ งการติดต้งั ท่ีมา : ผเู้ ขยี น ภาพที่ 6.7 เลอื กโฟล์เดอร์ท่ีต้องการติดตั้ง ทมี่ า : ผเู้ ขยี น การบริหารจัดการระบบฐานข้อมูลเพอ่ื งานธุรกิจ

บทท่ี 6 ระบบจัดการฐานข้อมูลมายเอสควิ แอล | 99 ภาพที่ 6.8 การติดตัง้ เสรจ็ สมบูรณ์ ทม่ี า : ผู้เขียน เราจะฝกึ ปฏิบัตติ ดิ ต้งั ฐานข้อมลู Mysql ไป พร้อม ๆ กนั คะ่ เมื่อติดต้ังเสรจ็ ใหท้ าการเปิดโปรแกรม XAMPP Control Panel การบรหิ ารจัดการระบบฐานขอ้ มูลเพ่ืองานธุรกิจ

100 | บทที่ 6 ระบบจัดการฐานข้อมูลมายเอสควิ แอล ภาพท่ี 6.9 หน้าจอ XAMPP Control Panel ที่มา : ผู้เขยี น ใหท้ าการรนั ฐานข้อมลู MySql โดยกดทปี่ ุม่ Start ดงั ภาพที่ 6.10 ภาพท่ี 6.10 การรนั ฐานข้อมูล MySql ท่ีมา : ผู้เขียน 6.3 การเช่อื มต่อฐานขอ้ มลู ฐานข้อมูลมายเอสคิวแอลมีระบบรักษาความปลอดภัยในการเชื่อมต่อฐานข้อมูล ต้องระบุช่ือ ผู้ใช้งานและรหัสผา่ น ถึงสามารถเข้าใช้งานฐานขอ้ มูลได้ การเชือ่ ตอ่ สามารถทาการเชอ่ื มต่อด้วยคาสง่ั mysql -u ชื่อผใู้ ช้งาน –p รหัสผ่าน การบริหารจัดการระบบฐานข้อมูลเพ่อื งานธุรกจิ

บทที่ 6 ระบบจัดการฐานข้อมูลมายเอสคิวแอล | 101 ตวั อยา่ ง 6.3 การเชือ่ มต่อฐานข้อมูล mysql -u root –p 1234 ภาพที่ 6.11 การเชื่อมต่อมายเอสควิ แอล ท่ีมา : ผเู้ ขยี น ถ้าหากทาการเช่อื มต่อฐานขอ้ มลู สาเร็จ จะปรากฏข้อความตอ้ นรบั การเช่ือมต่อสาเร็จ โดยขึน้ พร้อม Mysql> เพ่ือรอรับคาสง่ั ภาพที่ 6.12 แสดงผลการเชอ่ื มต่อสาเรจ็ ทมี่ า : ผูเ้ ขยี น 6.4 การสรา้ งฐานข้อมูล การสร้างฐานข้อมูลใช้คาสั่ง CREATE DATABASE โดยบัญชีผู้ใช้ต้องมีสิทธิในการใช้สร้าง ฐานข้อมูลเท่าน้นั ถึงมีสิทธิ สร้างฐานข้อมูลไดม้ รี ูปแบบการสร้าง ดังต่อไปนี้ (Paul DuBois,2014:5) รูปแบบที่ 1. CREATE DATABASE ชื่อฐานขอ้ มลู ; ตวั อยา่ ง 6.4 การสร้างฐานข้อมลู ชือ่ shopping CREATE DATABASE shopping; การบรหิ ารจัดการระบบฐานขอ้ มูลเพ่ืองานธุรกจิ

102 | บทท่ี 6 ระบบจัดการฐานข้อมูลมายเอสคิวแอล ตัวอย่าง 6.5 การสร้างฐานข้อมลู ช่อื buengkan CREATE DATABASE buengkan; ภาพที่ 6.13 การสรา้ งฐานข้อมูลชอื่ buengkan ท่มี า : ผู้เขียน รูปแบบที่ 2. กาหนดรูปแบบการเขา้ รหัสการเขา้ รหัสชุดอักขระด้วย CREATE DATABASE ชื่อฐานข้อมูล CHARACTER SET รหัสของชดุ ตวั อักษร COLLATE รหัสตวั อกั ษร; ตวั อยา่ ง 6.6 การสรา้ งฐานข้อมลู ชอื่ shopping โดยกาหนดรหัสของชุดตัวอักษรเปน็ UTF8 CREATE DATABASE shopping CHARACTER SET utf8 COLLATE utf8_general_ci; สามารถแสดงรายชื่อฐานข้อมูลไดด้ ้วยคาสง่ั SHOW DATABASES; 6.5 ชนิดของขอ้ มลู ของฐานขอ้ มลู มายเอสควิ แอล ชนิดของข้อมูลในฐานข้อมูลมายเอสคิวแอล ใช้สาหรับกาหนดประเภทหรือรูปแบบข้อมูลของ ฟิลด์ต่าง ๆ ของแตล่ ะตาราง โดยการกาหนดรูปแบบของฟิลด์จะต้องระบุท้งั ชนิดของข้อมูลและขนาด ของขอ้ มลู ชนิดของข้อมูลมีหลายรูปแบบ แบ่งไดด้ งั น้ี 1. ข้อมลู ประเภทข้อความ (String) 2. ข้อมูลประเภทตัวเลข (Numeric) 3. ขอ้ มูลประเภทวนั ที่ (Date/time) การบริหารจัดการระบบฐานขอ้ มูลเพือ่ งานธุรกิจ

บทท่ี 6 ระบบจดั การฐานข้อมูลมายเอสคิวแอล | 103 6.5.1 ข้อมูลประเภทข้อความ (String) เป็นขอ้ มลู สาหรบั เก็บข้อความหรอื ตวั อักษร (Oracle Corporation, 2017:1513) ตารางท่ี 6.1 ขอ้ มูลประเภทข้อความ (String) ชนิดข้อมูล ขนาดสุงสุด คาอธิบาย โดย size หมายถงึ ขนาดตวั อักษรท่ี CHAR(size) 255 ตวั อักษร สามารถเกบ็ ได้โดยจะกาหนดขนาดของ ฟลิ ด์เทา่ กับขนาดของ size VARCHAR(size) 255 ตวั อกั ษร โดย size หมายถงึ ขนาดตัวอักษรที่ สามารถเก็บไดโ้ ดยขนาดของฟิลด์จะ TINYTEXT(size) 255 ตัวอักษร เทา่ กบั ขนาดของข้อมลู โดย size หมายถงึ ขนาดตัวอักษรท่ี TEXT(size) 65,535 ตัวอักษร สามารถเก็บได้ โดย size หมายถงึ ขนาดตวั อักษรท่ี MEDIUMTEXT(size) 16,777,215 สามารถเก็บได้ LONGTEXT(size) ตัวอักษร โดย size หมายถึงขนาดตวั อักษรท่ี สามารถเก็บได้ 4GB หรอื 4,294,967,295 โดย size หมายถึงขนาดตัวอักษรท่ี ตัวอักษร สามารถเกบ็ ได้ BINARY(size) 255 ตัวอักษร โดย size หมายถึงขนาด binary characters ที่สามารถเกบ็ ได้โดยขนาด VARBINARY(size) 255 ตวั อกั ษร ของฟลิ ด์จะเท่ากับขนาดของข้อมลู (ตงั้ แต่ MySQL 4.1.2) โดย size หมายถงึ ขนาด binary characters ทส่ี ามารถเกบ็ ได้โดยขนาด ของฟลิ ด์จะเทา่ กับขนาดของขอ้ มูล (ตัง้ แต่ MySQL 4.1.2) การบรหิ ารจัดการระบบฐานขอ้ มูลเพ่อื งานธุรกจิ

104 | บทท่ี 6 ระบบจัดการฐานขอ้ มูลมายเอสคิวแอล 6.5.2 ข้อมูลประเภทตัวเลข (Numeric) ข้อมลู ประเภทตัวเลขมีทง้ั เลขจานวนเต็ม และเลขจานวนจริง ซงึ่ ผ้อู อกแบบฐานข้อมูล ตอ้ งพจิ ารณาวา่ รปู แบบไหนเหมาะสมในการกาหนดชนิดข้อมลู ใหก้ ับฟลิ ด์ เช่น ฟิลด์เก็บข้อมลู อายคุ น ควรกาหนดเป็น TINYINT แบบ Unsigned ท่สี ามารถเก็บอายคุ นไดต้ ั้งแต่ 0 ถึง 255 เพราะใชพ้ น้ื ท่ี ขนาดที่เกบ็ 1 ไบต์ ทั้งท่ี SMALLINT กส็ ามารถกาหนดได้แต่ต้องใช้พน้ื ท่ีขนาดท่ีเกบ็ 2 ไบต์ (Oracle Corporation, 2017:1488) ตารางที่ 6.2 ขอ้ มูลประเภทตัวเลข (Numeric) ชนิดข้อมูล ขนาดทเ่ี กบ็ คาอธิบาย BIT(size) size บิต เกบ็ ข้อมลู บิต เชน่ bit(8) หมายถงึ สามารถเก็บ TINYINT(size) 1 ไบต์ ได้ 8 บิต '10100011' SMALLINT(size) 2 ไบต์ เลขจานวนเตม็ ค่าท่ีเปน็ ไปได้มีดังน้ี MEDIUMINT(size) 3 ไบต์ 1. Signed ค่า -128 ถึง 127 INT(size) หรอื 2. Unsigned ค่า 0 ถึง 255 INTEGER(size) 4 ไบต์ เลขจานวนเต็ม ค่าที่เป็นไปได้มดี งั นี้ 1. Signed ค่า -32768 ถงึ 32767 BIGINT(size) 8 ไบต์ 2. Unsigned ค่า 0 ถงึ 65535 เลขจานวนเตม็ คา่ ท่ีเป็นไปได้มดี งั น้ี 1. Signed ค่า -8388608 ถงึ 8388607 2. Unsigned คา่ 0 ถึง 16777215. เลขจานวนเตม็ คา่ ท่เี ป็นไปได้มดี ังน้ี 1. Signed ค่า -2147483648 ถึง 2147483647 2. Unsigned คา่ 0 ถึง 4294967295 เลขจานวนเตม็ คา่ ทเ่ี ป็นไปได้มีดังนี้ 1. Signed ค่า -9223372036854775808 ถึง 9223372036854775807 2. Unsigned คา่ 0 ถงึ 18446744073709551615 DECIMAL(m,d) ดงั การคานวณ เลขทศนิยม โดยมีคา่ ด้านล่าง m จานวนตวั เลขท้ังหมด อย่รู ะหวา่ ง 1 ถงึ 65 d จานวนตวั เลขหลงั ทศนยิ ม อยรู่ ะหว่าง 0 ถึง การบริหารจัดการระบบฐานขอ้ มูลเพอ่ื งานธุรกจิ

บทท่ี 6 ระบบจดั การฐานข้อมูลมายเอสคิวแอล | 105 ชนดิ ขอ้ มูล ขนาดที่เก็บ คาอธิบาย 30 FLOAT(m,d) 4 ไบต์ เช่น กาหนดใหส้ ามารถเกบ็ ค่าสูงสุด คือ DOUBLE(m,d) 8 ไบต์ 99999.99 BOOL 1 ไบต์ กก็ าหนด DECIMAL(8,2) BOOLEAN 1 ไบต์ Single precision floating point number. Double precision floating point number. ค่าทางตรรกะ ค่าท่ีเป็นไปได้มีดงั นี้ 0 ถ้าเป็นเทจ็ 1 ถา้ เปน็ จริง ค่าทางตรรกะ ค่าทีเ่ ป็นไปได้มีดังนี้ 0 ถ้าเป็นเท็จ 1 ถา้ เปน็ จริง การคานวณจานวนไบต์ขอ้ มูล DECIMAL มีตารางเป็นการกาหนดจานวนไบต์สาหรับเก็บข้อมูล ตัวอย่างเช่น DECIMAL(20,6) จะมีเลข หน้าจดุ ทศนิยม 14 หลกั และหลงั จดุ ทศนิยม 6 หลกั XXXXXXXXX XXXXX . XXXXXX รวมเป็น 10 ไบต์ 4 ไบต์ 3 ไบต์ 3 ไบต์ Leftover Digits จานวนไบต์ 00 1–2 1 3–4 2 5–6 3 7–9 4 การบรหิ ารจัดการระบบฐานขอ้ มูลเพื่องานธุรกิจ

106 | บทที่ 6 ระบบจัดการฐานข้อมูลมายเอสคิวแอล 6.5.3 ข้อมูลประเภทวนั ท่ี (Date/time) รูปแบบข้อมลู ประเภทวันที่และเวลา (Oracle Corporation, 2017:1491) ตารางที่ 6.3 ข้อมูลประเภทวนั ท่แี ละเวลา ชนิดข้อมลู รูปแบบ คาอธิบาย สาหรบั เก็บขอ้ มูลวันโดยสามารถ 'YYYY-MM-DD' บนั ทกึ ระหว่างวันที่ '1000-01-01' ถึง '9999-12-31' DATE Y ปี ค.ศ. M เดอื น สาหรับเก็บข้อมลู วันและเวลาโดย D วนั สามารถบันทึกระหวา่ ง '1000-01- 01 00:00:00' ถึง '9999-12-31 DATETIME 'YYYY-MM-DD 23:59:59' HH:MM:SS' สาหรับเกบ็ ข้อมลู วันและเวลา H ชัว่ โมง สามารถบันทึกระหวา่ ง '1970-01- M นาที 01 00:00:01' UTC ถึง '2038-01- S วินาที 19 03:14:07' UTC โดยสามารถ ปรับปรงุ วันเวลาใหเ้ ป็นปจั จุบนั TIMESTAMP 'YYYY-MM-DD โดยอตั โนมัติ เมื่อมีการ เพ่ิม/แก้ไข HH:MM:SS' ข้อมูล ของแต่ละแถวในตาราง '-838:59:59' ถึง '838:59:59' TIME 'HH:MM:SS' YEAR(2|4) กาหนดรปู แบบปี รปู แบบปสี ามารถกาหนดรปู แบบ ได้ 2 แบบ YEAR (2) เช่น 19 YEAR (4) เชน่ 2519 ถ้าไม่กาหนดหมายถึง 4 การบริหารจัดการระบบฐานข้อมูลเพื่องานธุ รกจิ

บทท่ี 6 ระบบจดั การฐานข้อมูลมายเอสควิ แอล | 107 6.6 การสรา้ งตาราง คาสั่ง CREATE TABLE เปน็ คาส่ังทใี่ ช้ในการสรา้ งตาราง (Paul Wilton, 2005:25-27) รปู แบบท่ี 1 การสร้างตาราง table_name CREATE TABLE table_name ( column1 datatype(size), column2 datatype(size), column3 datatype(size), .... PRIMARY KEY (column ทีเ่ ป็น PK) ); ตัวอย่าง 6.7 สรา้ งตาราง category column datatype CREATE TABLE category ( CategoryID tinyint(3) unsigned NOT NULL AUTO_INCREMENT, CateName varchar(255) DEFAULT NULL, PRIMARY KEY (CategoryID) ); column ที่เปน็ PK ผลการสรา้ งตาราง ทดลองใส่ข้อมูล ภาพที่ 6.14 ผลการสร้างตาราง category การบรหิ ารจัดการระบบฐานข้อมูลเพื่องานธุรกจิ

108 | บทที่ 6 ระบบจัดการฐานข้อมูลมายเอสคิวแอล ที่มา : ผูเ้ ขยี น รปู แบบท่ี 2 สรา้ งตารางพร้อมกาหนดการเขา้ รหัสภาษาให้กบั ตาราง CREATE TABLE table_name ( column1 datatype(size), column2 datatype(size), column3 datatype(size), .... PRIMARY KEY (column ท่เี ปน็ PK) ) ENGINE=InnoDB DEFAULT CHARSET= charset_name; ตวั อย่าง 6.8 สรา้ งตารางพร้อมกาหนดการเข้ารหสั ภาษาแบบ utf8 CREATE TABLE category ( CategoryID tinyint(3) unsigned NOT NULL AUTO_INCREMENT, CateName varchar(255) DEFAULT NULL, PRIMARY KEY (CategoryID) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 6.7 การเชื่อมความสัมพันธ์ระหว่างตาราง การออกแบบฐานข้อมูลท่ีดีคือการลดความซ้าซ้อนของข้อมูล โดยการแยกข้อมูลออกเป็น หลายๆ ตารางโดยแต่ละตารางก็จะมีคุณสมบัตขิ องแต่ละตารางแล้วทาการระบุความสัมพันธ์ระหว่าง ตาราง โดยสามารถเช่อื มความสมั พนั ธ์ระหวา่ งตารางได้ 2 รูปแบบ ดงั น้ี 1. สรา้ งความสัมพนั ธ์ระหว่างตารางพรอ้ มกบั การสร้างตาราง 2. เช่อื มความสมั พนั ธร์ ะหว่างตารางภายหลงั 6.7.1 สร้างความสัมพันธ์ระหวา่ งตารางพร้อมกับการสร้างตาราง เปน็ การสรา้ งตารางใหมพ่ รอ้ มกบั เชือ่ มความสัมพันธร์ ะหวา่ งตาราง ตัวอย่าง แผนภาพอีอาร์ไดอะแกรมแสดงความสัมพันธ์ระหว่างตาราง Category หมวดหมู่ สนิ คา้ และตาราง Product สนิ ค้า เป็นความสัมพันธ์แบบ One to Many รายการสนิ คา้ หนึ่งรายการ อยู่ในหมวดหมู่สินค้าหนึ่งหมวดในแต่ละหมวด ส่วนรายการหมวดสินค้า 1 หมวดจะมีสินค้าหลาย รายการ category 1 M Product การบริหารจัดการระบบฐานข้อมูลเพอื่ งานธุรกจิ

บทท่ี 6 ระบบจัดการฐานข้อมูลมายเอสควิ แอล | 109 การแปลงจากแผนภาพอีอาร์มาสร้างเป็นตาราง หลักในการแปลงในการสร้างตารางให้นา Primary Key ของฝ่งั วนั ไปใส่ฟงั Many ทาใหต้ ารางสินคา้ มี ฟลิ ด์ categoryID เพม่ิ ตาราง category จากตาราง category เมื่อต้องการสร้างตารางสินค้า (Product) โดยเช่ือมโยงข้อมลู หมวดหมู่ สนิ ค้ากับตาราง category รหสั สินคา้ หมวดหมู่สชนิ อื่ คสา้ นิ คา้ ราคา ProductID CategoryID ProductName Price ตาราง Product การสรา้ งตาราง Product พร้อมท้งั เชอื่ มความสัมพนั ธ์กบั ตาราง category CREATE TABLE product ( ProductID int(4) unsigned NOT NULL AUTO_INCREMENT, CategoryID tinyint(3) unsigned DEFAULT NULL, ProductName varchar(255) NOT NULL, นา Primary Key ของฝั่ง 1มา Price float(8,2) unsigned DEFAULT NULL, ใส่ฝ่ัง Many ทาให้ตารางสนิ ค้า มี ฟวิ ด์ categoryID เพ่มิ PRIMARY KEY (ProductID), KEY product_ibfk_1 (CategoryID) USING BTREE, CONSTRAINT product_ibfk_1 FOREIGN KEY (CategoryID) REFERENCES category (CategoryID) ON UPDATE CASCADE ) ENGINE=InnoDB DEFAULT CHARSET=utf8; โดยระบุ KEY ช่อื fk (ฟลิ ด์กาหนดเป็น index) USING BTREE, การบรหิ ารจัดการระบบฐานขอ้ มูลเพอื่ งานธุรกิจ

110 | บทที่ 6 ระบบจัดการฐานข้อมูลมายเอสคิวแอล CONSTRAINT ชื่อfk FOREIGN KEY (ฟิลดท์ อี่ ้างอิง) REFERENCES ชอ่ื ตารางเชอ่ื ม (ฟลิ ดอ์ า้ งองิ ในตารางอน่ื ) ON UPDATE CASCADE ผลจากคาสงั่ ดงั กล่าวทาใหท้ ั้งตารางทั้ง 2 ตารางเช่ือมเขา้ ด้วยกนั ภาพที่ 6.15 ตัวอย่างขอ้ มลู ในตาราง Product ทม่ี า : ผู้เขียน ทดสอบเพิ่มข้อมลู ใหมโ่ ดยกาหนดหมวดหมู่สนิ ค้า (CategoryID) คือ 99 จะไมส่ ามารถเพ่ิม ขอ้ มูลได้เนื่องจากไม่มีค่าข้อมูล CategoryID เทา่ กบั 99 ท่ีตาราง Category ภาพท่ี 6.16 แสดงข้อผดิ พลาดในเพมิ่ ขอ้ มูลทไี่ มม่ ี CategoryID ในตารางท่ีสมั พนั ธ์ ทม่ี า : ผเู้ ขยี น การบริหารจัดการระบบฐานข้อมูลเพื่องานธุ รกจิ

บทท่ี 6 ระบบจัดการฐานข้อมูลมายเอสควิ แอล | 111 6.7.2 เชื่อมความสัมพนั ธร์ ะหว่างตารางภายหลงั เป็นการปรับปรุงโครงสร้างของตารางใหมโ่ ดยเพิ่มการเช่อื มความสัมพันธร์ ะหวา่ งตาราง ตัวอยา่ ง 6.9 สร้างตาราง Category1 CREATE TABLE Category1 ( CategoryID tinyint(3) unsigned NOT NULL AUTO_INCREMENT, CateName varchar(255) DEFAULT NULL, PRIMARY KEY (CategoryID) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; ตัวอย่าง 6.10 สร้างตาราง Product1 CREATE TABLE Product1 ( ProductID int(4) unsigned NOT NULL AUTO_INCREMENT, CategoryID tinyint(3) unsigned DEFAULT NULL, ProductName varchar(255) NOT NULL, Price float(8,2) unsigned DEFAULT NULL, PRIMARY KEY (ProductID), ) ENGINE=InnoDB DEFAULT CHARSET=utf8; ตาราง Product1 ชอื่ สนิ ค้า ราคา ProductName Price รหัสสินค้า หมวดหมสู่ นิ คา้ ProductID CategoryID ตาราง Category1 หมวดสนิ คา้ CateName รหสั หมวดสินค้า CategoryID ภาพที่ 6.17 ตาราง Product1 และตาราง Category1 ทีย่ ังไมเ่ ชื่อมความสัมพันธ์ ทม่ี า : ผเู้ ขยี น การบรหิ ารจัดการระบบฐานขอ้ มูลเพื่องานธุรกิจ

112 | บทท่ี 6 ระบบจัดการฐานข้อมูลมายเอสคิวแอล จากคาส่ัง CREATE TABLE จะพบว่ายังไม่มีการเชื่อมความสัมพันธ์ระหว่างตาราง Product1 และตาราง Category1 แต่ก็สามารถเช่ือมความสัมพนั ธ์ภายหลังไดด้ ้วยคาสั่ง Alter Table ซึ่งต้องไป กาหนดเชือ่ มความสัมพันธ์ท่ีตาราง Product1 ดังน้ี ตวั อย่าง 6.11 การเชอื่ มความสัมพันธ์ระหวา่ งตาราง Product1 และตาราง Category1 ALTER TABLE product1 // ปรับปรงุ ตาราง product1 ADD CONSTRAINT category_ID // เพ่มิ กฏการเชอ่ื มสมั พนั ธ์ FOREIGN KEY (CategoryID) // กาหนดคียน์ อกคือ CategoryID REFERENCES // เชื่อมความสัมพันธ์กับตาราง category1(CategoryID) category1 ฟิลด์ CategoryID ON DELETE NO ACTION // กาหนดเงอ่ื นไขเม่อื มกี ารลบ ON UPDATE CASCADE; //หรือปรับปรุงข้อมลู ON DELETE หมายถงึ เม่อื มีการลบขอ้ มลู ในตารางทเ่ี ชอ่ื มจะใหด้ าเนนิ การอย่างไร ON UPDATE หมายถงึ เมอื่ มีการปรบั ปรุงข้อมูลในตารางทเ่ี ชือ่ มจะให้ดาเนนิ การอยา่ งไร โดยมรี ูปแบบดังตอ่ ไปน้ี RESTRICT หมายถึง ไมอ่ นุญาตให้ลบหรือแกไ้ ขคา่ ข้อมลู ใน PRIMARY KEY ถ้ามี ขอ้ มลู ทีอ่ า้ งองิ กับตารางอ่นื อยู่ CASCADE หมายถึง ถ้ามีการลบหรือแก้ไขคา่ ขอ้ มลู ใน PRIMARY KEY แลว้ ค่า ขอ้ มลู ใน FOREIGN KEY ให้ดาเนินการตาม SET NULL หมายถึง ถา้ มกี ารลบหรอื แกไ้ ขคา่ ข้อมลู ใน PRIMARY KEY ให้ เปล่ียนคา่ ข้อมูลใน FOREIGN KEY เปน็ ค่าว่าง NULL NO ACTION หมายถงึ ถา้ มกี ารลบหรือแกไ้ ขคา่ ขอ้ มูลใน PRIMARY KEY ค่าข้อมลู ใน FOREIGN KEY ไม่ตอ้ งทาอะไร 6.8 การยกเลิกหรอื ลบความสมั พันธร์ ะหวา่ งตาราง การยกเลิกหรือลบความสมั พันธโ์ ดยใชค้ าสัง่ DROP FOREIGN KEY ดงั ตวั อย่าง ตวั อย่าง 6.12 การยกเลิกความสมั พันธ์ ALTER TABLE product1  DROP FOREIGN KEY category_ID; การบริหารจัดการระบบฐานขอ้ มูลเพ่อื งานธุรกิจ

บทที่ 6 ระบบจดั การฐานข้อมูลมายเอสควิ แอล | 113  ช่ือท่ถี ูกกาหนดในการสร้างความสัมพันธ์ ผลการรนั คาส่ัง DROP FOREIGN KEY [SQL] ALTER TABLE product1 DROP FOREIGN KEY category_ID; Affected rows: 0 Time: 0.119s 6.9 แบบฝึกหัดเชงิ ปฏิบตั กิ าร ให้นักศึกษาสร้างตารางและเช่ือมความสัมพันธ์ระหว่างตารางของฐานข้อมูล ในฐานข้อมูล MySQL ดงั ตอ่ ไปน้ี แลว้ นาเสนอหน้าชั้นเรียน ในการสร้างตารางให้นักศึกษาพิจารณาความเหมาะสมของชนิดข้อมูลและขนาดของแต่ละฟิลด์ ดว้ ย 6.9.1 ฝึกสรา้ งตารางและเชื่อมตารางซ้ือขายสินค้า การบรหิ ารจัดการระบบฐานข้อมูลเพื่องานธุรกิจ

114 | บทท่ี 6 ระบบจดั การฐานขอ้ มูลมายเอสควิ แอล 6.9.2 ฝึกปฏิบตั ิสรา้ งตารางและเชอื่ มตารางระบบการลา 6.10 บทสรปุ ระบบจัดการฐานข้อมูลมายเอสคิวแอล เป็นระบบจดั การฐานข้อมูลเชิงสัมพันธ์ (RDBMS) มีโครงสร้างการจัดเก็บข้อมูลในรูปแบบของตาราง 2 มิติ คือ แถว และคอลัมน์ มีการเช่ือมโยงข้อมูล กันระหว่างตาราง รองรับคาสั่ง SQL ในการใช้งานฐานข้อมูลต้องดาเนินการการติดต้ังฐานข้อมูลมาย เอสคิวแอล สามารถดาวน์โหลดได้ท่ีเว็บไซต์ www.mysql.com ส่วนในเอกสารประกอบการสอนน้ี จะใช้โปรแกรม Xampp โดยสามารถดาว์โหลดได้ทเ่ี วบ็ ไซต์ //www.apachefriends.org/ ฐานข้อมูลมายเอสคิวแอลมีระบบรักษาความปลอดภัยในการเช่ือมต่อฐานข้อมูล ต้องระบุ ชื่อผใู้ ชง้ านและรหัสผา่ น ถงึ สามารถเข้าใชง้ านฐานข้อมูลได้ โดยมรี ูปแบบดังนี้ mysql -u ช่ือผ้ใู ชง้ าน –p รหสั ผา่ น ฐานข้อมูลมายเอสคิวเอลเก็บข้อมูลในรูปแบบตาราง โดยแต่ละตารางจะจัดเก็บไวใ้ นฐานข้อมูล ซ่งึ ทาให้ตอ้ งมีการสรา้ งฐานขอ้ มลู กอ่ นสร้างตารางด้วยคาส่งั CREATE DATABASE ชื่อฐานข้อมูล; สามารถแสดงรายชอื่ ฐานข้อมลู ได้ด้วยคาส่งั SHOW DATABASES; การบริหารจัดการระบบฐานขอ้ มูลเพอ่ื งานธุรกจิ

บทท่ี 6 ระบบจดั การฐานข้อมูลมายเอสคิวแอล | 115 ในการสร้างตารางจะต้องสร้างหลังจากท่ีสร้างฐานข้อมูลเป็นท่ีเรียบร้อย โดยออกแบบ โครงสร้างตาราง ในแต่ละตารางจะประกอบไปด้วยฟิลด์ต่าง ๆ ซึ่งเป็นคุณสมบัติของแต่ละตารางซ่ึง ฟิลด์เหล่านั้นจะมีรูปแบบชนิดข้อมูลของฟิลด์ต่าง ๆ เช่น 1. ข้อมูลประเภทข้อความ (String) 2. ข้อมูลประเภทตัวเลข (Numeric) 3. ข้อมูลประเภทวันท่ี (Date/time) โดยการสร้างตารางจะใช้ คาสั่ง CREATE TABLE โดยตารางต่าง ๆ มีการเช่ือมโยงเข้าหากัน ซ่ึงสามารถเชื่อมโยงในตอนสร้าง ตารางหรอื เพิม่ การเชอื่ มโยงในภายหลงั ก็ได้ การบริหารจัดการระบบฐานขอ้ มูลเพื่องานธุรกจิ

116 | บทที่ 6 ระบบจดั การฐานขอ้ มูลมายเอสคิวแอล คาถามท้ายบท 1.จงอธิบายโครงสร้างของฐานขอ้ มูลมายเอสควิ แอล 2.ใหน้ กั ศกึ ษาอธบิ ายชนดิ ขอ้ มลู ในฐานข้อมูลมายเอสคิวแอลมา 20 ชนดิ 3.ฟลิ ด์ข้อมูลเกบ็ อายุ ควรใช้รูปแบบขอ้ มูลแบบใด 4.จากตารางหมวดหมู่สินค้า Category และตารางสินค้า Product ให้นักศึกษาทาการสร้าง ตาราง Supplier สาหรับเก็บข้อมูลผู้ผลิตสินค้า เละเชื่อมความสัมพันธ์กับตารางสินค้า Product โดยตัวอยา่ งโครงสร้างข้อมลู ผู้ผลิตสินคา้ มดี งั น้ี ฟิลด์ ความหมาย ชนิดขอ้ มูล ขนาด supID รหัสกลมุ่ ผู้ผลิต supName ชอื่ กลุ่มผูผ้ ลิต supDate วนั ที่ลงทะเบียนกลมุ่ ชมุ ชน supAddress ที่อย่กู ลุ่มผู้ผลิต supProvince จงั หวดั ทผ่ี ผู้ ลติ ตั้งอยู่ supZipcode รหัสไปรษณีย์ supMobile หมายเลขโทรศัพท์ supWeb เว็บไซต์ ในสว่ นชนิดขอ้ มูลและขนาดของข้อมูลใหน้ ักศกึ ษาทาการวเิ คราะห์และกาหนดขอ้ มูลตามความ เหมาะสม การบรหิ ารจัดการระบบฐานข้อมูลเพ่ืองานธุรกิจ

บทท่ี 6 ระบบจดั การฐานข้อมูลมายเอสควิ แอล | 117 เอกสารอา้ งอิง บัณฑิต จามรภูติ. (2537). คู่มือการใชง้ านภาษา SQL. กรงุ เทพฯ.สวัสดี ไอท.ี มณีโชติ สมานไทย. (2546). คมู่ อื การออกแบบฐานข้อมูลและภาษา SQL. กรงุ เทพฯ : อินโพเฟรสดิ วลี อ็ ปเปอร์บูค๊ . วรรณวภิ า ตติ ถะสริ .ิ (2545). คู่มือเรยี น SQL ด้วยตนเอง. กรงุ เทพฯ : พมิ พ์ด.ี โอภาส เอ่ียมสิริวงศ.์ (2551). ระบบฐานข้อมูล (Database Systems). กรงุ เทพฯ : ซเี อ็ดยูเคช่นั . Marc Delisle. ( 2006). Creating your MySQL Database: Practical Design Tips and Techniques. Birmingham: Packt Publishing. Oracle Corporation. (2017). MySQL™ Reference Manual. Retrieved December 10, 2017. Web site: //downloads.mysql.com/docs/refman-5.7-en.a4.pdf. Paul DuBois. (2014). MySQL Cookbook (THIRD EDITION). California: O’Reilly Media, Inc. Paul Wilton and John W. Colby. (2005). Beginning SQL. Indianapolis: Wiley Publishing. การบรหิ ารจัดการระบบฐานข้อมูลเพอ่ื งานธุรกิจ

118 | บทท่ี 6 ระบบจดั การฐานขอ้ มูลมายเอสควิ แอล การบรหิ ารจัดการระบบฐานขอ้ มูลเพ่อื งานธุรกจิ

บทท่ี 7 นอรม์ ลั ไลซเ์ ซชนั่ | 119 แผนบรหิ ารการสอนประจาบทท่ี 7 นอร์มลั ไลซ์เซชน่ั หวั ขอ้ เนอ้ื หา 7.1 วัตถุประสงค์ของนอร์มัลไลซ์เซชนั่ 7.2 รเี ลชนั ทย่ี งั ไมเ่ ป็นบรรทัดฐาน 7.3 ฟังก์ชันนัลดเี พนเดนซี 7.4 นอร์มลั ไลซเ์ ซชน่ั ขน้ั ที่ 1 7.5 พารเ์ ชยี ลดีเพนเดนซี 7.6 นอรม์ ลั ไลซเ์ ซช่ันขน้ั ที่ 2 7.7 ทรานชทิ ฟี ดเี พนเดนซี 7.8 นอรม์ ัลไลซเ์ ซชน่ั ข้นั ท่ี 3 7.9 นอร์มัลไลซเ์ ซช่ันขัน้ ที่ Boyce-Codd บทสรุป คาถามท้ายบท เอกสารอ้างอิง วตั ถปุ ระสงคเ์ ชิงพฤตกิ รรม 1. อธบิ ายวตั ถปุ ระสงคข์ องนอรม์ ัลไลซ์เซชนั่ ได้ 2. อธิบายความหมายและวิเคราะห์รเี ลชนั ท่ยี งั ไมเ่ ป็นบรรทัดฐานได้ 3. อธบิ ายฟงั ก์ชนั นัลดเี พนเดนซีได้ 4. อธิบายความหมายและวเิ คราะห์นอร์มลั ไลซ์เซช่ันขน้ั ท่ี 1 ได้ 5. อธิบายพาร์เชยี ลดีเพนเดนซีได้ 6. อธบิ ายความหมายและวเิ คราะห์นอรม์ ัลไลซ์เซชน่ั ขน้ั ท่ี 2 ได้ 7. อธิบายทรานชทิ ีฟดเี พนเดนซีได้ 8. อธิบายความหมายและวเิ คราะห์นอรม์ ลั ไลซเ์ ซชั่นข้นั ท่ี 3 ได้ 9. อธิบายความหมายและรปู แบบนอร์มลั ไลซเ์ ซช่ันขัน้ ที่ Boyce-Codd ได้ การบริหารจัดการระบบฐานข้อมูลเพ่อื งานธุรกจิ

120 | บทท่ี 7 นอร์มลั ไลซเ์ ซชนั่ วธิ ีสอนและกจิ กรรมการเรียนการสอน 1. วิธีสอน 1.1 นาเขา้ ส่บู ทเรียนโดยวดี ิทัศน์ 1.2 ใชว้ ธิ สี อนบรรยายแบบมสี ว่ นรว่ ม 1.3 ใช้วธิ สี อนแบบกระบวนการกลมุ่ 1.4 ฝึกวิเคราะหก์ ารนอร์มัลไลซ์เซชนั่ 2 กิจกรรมการเรียนการสอน 2.1 เปดิ วดิ ที ัศน์เน้ือหานอรม์ ัลไลซ์เซช่นั พร้อมทงั้ ต้งั โจทย์ประเด็นคาถามก่อนเรียน 2.2 การบรรยายโดยใช้ PowerPoint 2.3 แบง่ กล่มุ ระดมความคดิ เหน็ ในการวเิ คราหก์ ารนอรม์ ลั ไลซ์เซชั่นแตล่ ะขั้นตอน พรอ้ มสุ่มกลุ่มอธิบายหน้าชั้นเรยี น 2.4 นกั ศกึ ษาตอบคาถามท้ายบทเป็นการบ้าน สอื่ การเรียนการสอน 1. เอกสารประกอบการสอนรายวิชา การบริหารจดั การระบบฐานขอ้ มลู เพือ่ งานธุรกิจ บทที่ 7. นอรม์ ลั ไลซ์เซช่นั 2. โปรแกรม PowerPoint 3. กระดาษ A4 4. กระดานไวท์บอร์ด 5. ใบงาน การวดั และประเมินผล 1. สังเกตพฤติกรรมของนักศกึ ษาการมสี ว่ นร่วมในการถามตอบการบรรยาย 2. ตรวจผลการวิเคราะห์การนอร์มลั ไลซ์เซชนั่ ของแตล่ ะกลุม่ 3. ตรวจการตอบคาถามทา้ ยบท การบริหารจัดการระบบฐานข้อมูลเพอ่ื งานธุรกจิ

บทที่ 7 นอร์มัลไลซ์เซชัน (Normalization) ในการวเิ คราะหแ์ ละออกแบบฐานข้อมูลในบางครั้งผู้วิเคราะห์อาจทาการวิเคราะห์โครงสร้างของ ตารางได้ไมส่ มบรู ณ์ อาจจะเน่ืองมาจากประสบการณ์ในการวิเคราะห์ เพื่อเป็นการปรับปรุงโครงสร้าง ข้อมูลของแต่ละตารางให้ถูกต้องมากข้ึนจึงมีข้ันตอนในการตรวจสอบการออกแบบดังกล่าว เรียกว่า นอร์มัลไลซ์เซชัน เพื่อลดความซ้าซ้อนของข้อมูล โดยเน้ือหาในบทท่ี 7 ได้กล่าวถึง ความหมายของ นอร์มัลไลซ์เซชัน ประโยชน์ของการนอร์มัลไลเซชัน รูปแบบที่เป็นบรรทัดฐานตั้งแต่ ขั้นท่ี 1 ถึง ขั้นที่ 3 และการฝึกปฏิบัตกิ ารนอร์มลั ไลซเ์ ซชันฐานข้อมูล ดงั รายละเอียดตอ่ ไปนี้ 7.1 นอรม์ ัลไลซเ์ ซชัน Peter Rob and Carlos Coronel, (2009):153) กล่าวว่า ฐานข้อมูลเชิงสัมพันธ์มีลักษณะ โครงสร้างของข้อมูลเป็นตาราง 2 มิติ ในการออกแบบโครงสร้างข้อมูล ผู้วิเคราะห์จะทาการวิเคราะห์ และออกแบบโครงสร้างข้อมูลของระบบน้ันๆ ว่ามีโครงสร้างการจัดเก็บข้อมูลเป็นเช่นไร โดยนิยมใช้ แบบจาลองอีอาร์อธิบายโครงสร้างของข้อมูล ในการออกแบบโครงสร้างข้อมูลบางครั้งนักวิเคราะห์ อาจวเิ คราะหโ์ ครงสร้างของตารางไดไ้ ม่สมบูรณ์ ดังนัน้ เพ่ือเป็นการปรบั ปรงุ โครงสร้างข้อมูลของแต่ละตาราง ซ่งึ จะทาใหช้ ่วยลดความผิดปกติ ของข้อมูล ลดความซา้ ซอ้ นของขอ้ มลู ด้วยการทาเป็นใหเ้ ปน็ บรรทัดฐาน เรียกว่า Normalization วิเชียร เป่ียมชัยสวัสด์ิ. (2547:93-94) การนอร์มัลไลเซชันเป็นกระบวนการในการกาหนด แอทริบิวต์ให้กับแต่ละเอนทิตี เพ่ือให้ได้โครงสร้างของข้อมูลท่ีดี สามารถควบคุมความซ้าซ้อนของ ขอ้ มูลหลีกเลี่ยงความผิดพลาดปกติของข้อมูล โดยท่ัวไปผลลัพธ์ของการนอร์มัลไลเซชันจะได้ตารางท่ี มีโครงสร้างซับซ้อนน้อยลง แต่จานวนของตารางจะมากข้ึน การนอร์มัลไลเซชันมีการทางาน ตามลาดบั ชนั้ ซ่งึ เรยี กว่า นอร์มัลฟอร์ม มที ั้งหมด 5 ลาดับชน้ั กิตติ ภักดีวัฒนะกุล. (2521:144) นอร์มัลไลเซชันเป็นวิธีการที่ใช้ในการตรวจสอบและแก้ไข ปัญหาทางด้านความซ้าซ้อนของข้อมูลโดยการ ดาเนินการให้ข้อมูลในแต่ละรีเลชันอยู่ในหน่วยที่เล็ก ที่สุดที่ไมส่ ามารถแยกยอ่ ยได้อกี โดยยังคงความสัมพันธ์ระหว่างข้อมูลในรเี รชันต่าง ๆ ไว้ตามหลักการ ที่กาหนดไวใ้ นรีเลชันโมเดล สรุปได้ว่านอร์มัลไลซ์เซชัน หมายถึงกระบวนการปรับเปล่ียนโครงสร้างข้อมูลในฐานข้อมูล เพื่อลดความซ้าซ้อนของข้อมูลหลีกเลี่ยงความผิดปกติของข้อมูล สาหรับฐานข้อมูลเชิงสัมพันธ์ การบรหิ ารจดั การระบบฐานข้อมลู เพอ่ื งานธรุ กจิ นิรนั ดร ผานิจ

122 | บทท่ี 7 นอรม์ ลั ไลซเ์ ซชนั่ กระบวนการนอร์มัลไลเซชันมีการแบ่งออกเป็นขั้น ๆ เรียกว่า Normal Form หรือรูปแบบบรรทัด ฐาน ซง่ึ คดิ คน้ โดย อัดก้า เอฟ.คอดด์ (Edgar F. Codd) ภาพท่ี 7.1 อ.ี เอฟ.คอดด์ (E.F.Codd) ที่มา : //en.wikipedia.org/wiki/Edgar_F._Codd เพื่อให้เข้าใจปัญหาทเี่ กดิ จากความซา้ ซ้อนของข้อมูล ขอยกตวั อย่างประกอบ ดงั นี้ รเี ลชัน Product1 แสดงข้อมูลสนิ คา้ และข้อมูลลกู ค้าท่ีซื้อสินคา้ productID productName Price Supplier 1 ครีมมะขาม 50 กลุ่มแปรรปู มะขามหวานนา้ กอ้ 2 นา้ เสาวรสผสมนา้ ผ้งึ 150 กลุ่มเกษตรกรเลย้ี งผงึ้ บา้ นเฝ้าไร่ 3 ปลาสม้ บ้านไผส่ ีทอง 150 ชุมชนแปรรปู อาหารบา้ นไผ่สที อง 4 น้าพรกิ ปลากรอบทรงเครอื่ งไผส่ ี 50 ชมุ ชนแปรรปู อาหารบา้ นไผ่สีทอง ทอง 5 มะขามแปรรูปสามรส 45 กลมุ่ แปรรปู มะขามหวานนา้ กอ้ 6 ผา้ ซิ่นยอ้ มคราม 750 กลมุ่ หัตถกรรมทอผา้ พ้ืนเมืองสอ่ งดาว 7 ผ้าไหมซิน่ ตนี จกลายโบราณ 2500 กลุ่มผา้ ซนิ่ ตีนจกรตั นา 8 ผ้าฝา้ ยลายพญานาค 1200 กล่มุ หตั ถกรรมทอผ้าพน้ื เมอื งส่องดาว 9 50 ชมุ ชนไขเ่ ค็มเสรมิ ไอโอดนี บ้านหนอง ไขเ่ คม็ ไอโอดีนสมนุ ไพรใบเตย สระพัง 10 หมอนแปรรูปผ้าพื้นเมอื ง 120 กลมุ่ หตั ถกรรมทอผ้าพื้นเมืองสอ่ งดาว 11 เสื้อผา้ พื้นเมอื ง 300 กลมุ่ หัตถกรรมทอผา้ พ้นื เมืองสอ่ งดาว 12 มะขามกวนนา้ กอ้ 50 กลมุ่ แปรรูปมะขามหวานนา้ ก้อ 13 นา้ ผึ้งเดอื น 5 250 กลมุ่ เกษตรกรเลย้ี งผงึ้ บ้านเฝ้าไร่ 14 น้าผ้งึ เฝ้าไรพ่ อเพียง 200 กลมุ่ เกษตรกรเลี้ยงผงึ้ บ้านเฝา้ ไร่ จากรเี ลชัน Product1 จะพบวา่ มีข้อมลู ที่ซ้าซ้อนกนั ซึ่งทาให้มีความผิดปกติดงั น้ี การบรหิ ารจัดการระบบฐานข้อมูลเพอ่ื งานธุรกจิ

บทท่ี 7 นอรม์ ลั ไลซเ์ ซชนั่ | 123  ความผดิ ปกตจิ ากการเพ่ิมข้อมูล (Insert Anomaly) จากรเี ลชัน Product1 ถ้า กาหนดให้ รหัสสินค้าเป็นคยี ์หลัก หากต้องการเพมิ่ ข้อมูลผู้ผลิตสินคา้ OTOP รายใหม่ (เพ่มิ เฉพาะ ข้อมูลผูผ้ ลติ สนิ ค้า แตผ่ ้ผู ลติ ยังไมม่ ีสนิ คา้ ) จะไมส่ ามารถเพ่ิมได้เน่ืองจากแอตทรบิ ิวต์รหัสสนิ ค้าท่ีเปน็ คียห์ ลกั เป็นค่าว่างไม่ได้  ความผดิ ปกติจากการเปลยี่ นแปลงข้อมูล (Update Anomaly) เน่ืองจากรเี ลชัน Product1 มีขอ้ มูลซ้าซ้อนกนั เป็นจานวนมาก หากต้องการปรบั ปรงุ ขอ้ มูลใด ๆ จะต้องใช้เวลาในการ แก้ไขข้อมูลนาน  ความผดิ ปกตจิ ากการลบข้อมลู (Deletion Anomaly) อาจทาให้ข้อมลู บางส่วนสญู หายได้เช่น ถา้ ทาการลบข้อมูลสนิ ค้า ไขเ่ ค็มไอโอดีนสมนุ ไพรใบเตย รหัสสนิ คา้ 9 จะทาใหข้ ้อมลู ผู้ผลิต สนิ คา้ โอทอป ชมุ ชนไขเ่ ค็มเสรมิ ไอโอดนี บ้านหนองสระพัง ซ่งึ มีเพยี งแห่งเดยี วในฐานข้อมูลกจ็ ะสญู หายไปดว้ ย จากความผิดปกติจากการเพ่ิมขอ้ มูล, ความผิดปกตจิ ากการเปลย่ี นแปลงขอ้ มูล, ความผิดปกติ จากการลบข้อมลู ดังกลา่ วจึงจาเปน็ ตอ้ งมีกระบวนการทาให้เปน็ รูปแบบท่เี ปน็ บรรทดั ฐาน เพื่อทาการ วิเคราะห์ความสัมพันธ์ของแอตทรบิ ิวต์ของแตล่ ะรีเลชัน เพื่อให้ความซ้าซ้อนของข้อมูลในแต่ละรเี ลชนั ลดลง รปู แบบที่เปน็ บรรทัดฐาน โดยมีรปู แบบที่เป็นบรรทัดฐาน ดังนี้ ภาพที่ 7.2 ขนั้ ตอนการนอรม์ ัลไลเซชนั ท่ีมา : ผเู้ ขียน การบริหารจัดการระบบฐานขอ้ มูลเพือ่ งานธุรกิจ

124 | บทท่ี 7 นอรม์ ัลไลซเ์ ซชนั่ ซ่งึ การนอรม์ ลั ไลเซชนั ย่ิงทาการจดั รปู แบบท่ีเป็นบรรทดั ฐานมากช้นั เทา่ ไหรจ่ ะทาใหจ้ านวนเอน ตติ ย้ี ิ่งเพิ่มมากข้นึ สาหรบั เอกสารประกอบการสอนนจี้ ะอธบิ ายข้นั ตอนการนอร์มลั ไลเซชัน รูปแบบที่ เปน็ บรรทดั ฐานข้ันท่ี 1 ถึงรูปแบบทเ่ี ปน็ บรรทัดฐานขน้ั ที่ 3 7.2 ประโยชน์ของการนอรม์ ัลไลเซชนั เพือ่ ให้โครงสรา้ งของข้อมูลมีประสทิ ธิภาพ และเปน็ การลดความซา้ ซ้อนของข้อมลู ทาให้ ลดปญั หาความขดั แยง้ ของข้อมลู อกี ดว้ ย สรปุ ไดด้ ังนี้ (Gavin Powell, 2006:49) 1. ลดพื้นท่ีการจดั เก็บข้อมูล 2. เป็นการจดั โครงสรา้ งข้อมลู ดีขนึ้ 3. แก้ไขปัญหาความผิดปกติของขอ้ มลู 7.3 รูปแบบทีเ่ ปน็ บรรทัดฐานข้ันท่ี 1 (First Normal Form : 1NF) รีเลชนั ใด ๆ จะอยูใ่ นรปู แบบทีเ่ ปน็ บรรทดั ฐานขน้ั ที่ 1 ก็ต่อเมอื่ ทุกแอตทริบวิ ต์ในแต่ละ ทูเพิลมี ค่าของข้อมูลเพียงค่าเดียว (Single valued) หรือไม่มกี ลุ่มข้อมูลซ้า (Repeating Group) ตวั อยา่ งท่ี 7.1 การจดั รปู แบบท่เี ปน็ บรรทดั ฐานขน้ั ที่ 1 ท่ีมีกลุ่มข้อมูลซา้ ตาราง 7.1 แสดงรายการส่งั ซ้ือสนิ ค้าทม่ี ีกลุ่มขอ้ มูลซ้า เลขท่ใี บสัง่ ซือ้ รหสั สินค้า จานวนสนิ คา้ Product1 50 1234 Product2 65 Product3 120 1235 Product2 60 Product4 100 1236 Product2 50 Product5 40 1237 Product4 90 Product3 150 1238 Product1 80 จากตาราง 7.1 จะพบวา่ มีกล่มุ ขอ้ มูลซา้ จึงไม่อยู่ในรปู แบบทีเ่ ปน็ บรรทดั ฐานที่ 1 จึงทาการขจัด กลมุ่ ข้อมลู ซ้าโดยทาการแยกแตล่ ะแอทรบิ วิ ต์ให้มีข้อมลู เพียงคา่ เดียว (Single Value) ดังตารางท่ี 7.2 การบริหารจัดการระบบฐานขอ้ มูลเพื่องานธุรกิจ

กระทู้ที่เกี่ยวข้อง

Toplist

โพสต์ล่าสุด

แท็ก

ไทยแปลอังกฤษ แปลภาษาไทย ห่อหมกฮวกไปฝากป้าmv โปรแกรม-แปล-ภาษา-อังกฤษ พร้อม-คำ-อ่าน แปลภาษาอาหรับ-ไทย Terjemahan ข้อสอบคณิตศาสตร์ พร้อมเฉลย แปลภาษาอังกฤษเป็นไทย pantip ศัพท์ทางทหาร military words แอพแปลภาษาอาหรับเป็นไทย การ์ดแคปเตอร์ซากุระ ภาค 4 พจนานุกรมศัพท์ทหาร ศัพท์ทหาร ภาษาอังกฤษ pdf ห่อหมกฮวกไปฝากป้า หนังเต็มเรื่อง ไทยแปลอังกฤษ ประโยค lmyour แปลภาษา การ์ดแคปเตอร์ซากุระ ภาค 3 ประปาไม่ไหล วันนี้ ฝยก. ย่อมาจาก หยน ห่อหมกฮวก แปลว่า เมอร์ซี่ อาร์สยาม ล่าสุด แปลภาษาจีน ่้แปลภาษา onet ม3 การ์ดแคปเตอร์ซากุระ ภาค 1 ข้อสอบโอเน็ต ม.3 ออกเรื่องอะไรบ้าง ตตตตลก บบบย ห่อหมกฮวกไปฝากป้า คาราโอเกะ เขียน อาหรับ แปลไทย เนื้อเพลง ห่อหมกฮวก แปลไทย asus zenfone 2e กรมส่งเสริมการปกครองท้องถิ่น การประปานครหลวง ก่อนจะนิ่งก็ต้องกลิ้งมาก่อน เนื้อเพลง ข้อสอบภาษาอังกฤษ ม.ปลาย พร้อมเฉลย คะแนน o-net โรงเรียน ชขภใ ชื่อเต็ม ร.9 คําอ่าน ตัวอย่าง flowchart ขั้นตอนการทํางาน นยน. ย่อมาจาก ทหาร บทที่ 1 ที่มาและความสําคัญของปัญหา ฝสธ. ย่อมาจาก มัดหัวใจเจ้าชายเย็นชา 2 ซับไทย มัดหัวใจเจ้าชายเย็นชา 2 เต็มเรื่อง ยศทหารบก เรียงลําดับ ระเบียบกระทรวงการคลังว่าด้วยการจัดซื้อจัดจ้างและการบริหารพัสดุภาครัฐ พ.ศ. 2560 รัชกาลที่ 10 ห่อหมกฮวกไปฝากป้า คอร์ด