The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

หน่วยที่ 9 หลักการออกแบบฐานข้อมูล

Discover the best professional documents and content resources in AnyFlip Document Base.
Search

หน่วยที่ 9 หลักการออกแบบฐานข้อมูล

หน่วยที่ 9 หลักการออกแบบฐานข้อมูล

ก คำนำ รายงานเล่มนี้จัดทำขึ้นเพื่อเป็นส่วนหนึ่งของวิชา การวิเคราะห์และออกแบบระบบเชิงวัตถุชั้น ปวส.2 เพื่อให้ได้ศึกษาหาความรู้ในเรื่อง หลักการออกแบบฐานข้อมูลและได้ศึกษาอย่างเข้าใจเพื่อเป็นประโยชน์กับการ เรียนผู้จัดทำหวังว่า รายงานเล่มนี้จะเป็นประโยชน์กับผู้อ่าน หรือนักเรียน นักศึกษา ที่กำลังหาข้อมูลเรื่องนี้อยู่ หาก มีข้อแนะนำหรือข้อผิดพลาดประการใด ผู้จัดทำขอน้อมรับไว้และขออภัยมา ณ ที่นี้ด้วย คณะผู้จัดทำ


ข สารบัญ เรื่อง หน้า คำนำ ก สารบัญ ข ขั้นตอนการพัฒนาระบบ 1-4 แผนภาพอีอาร์ไดอะแกรม 5 แอตทริบิวต์ 6 ความสัมพันธ์ระหว่างเอนติตี้ 7 ระดับของรีเลชันชิพ 8-10 การออกแบบฐานข้อมูลด้วย ER-Diagram 11 การตรวจสอบความสมดุลระหว่างแผนภาพกระแสข้อมูล 12 กับแบบจําลองความสัมพันธ์ของข้อมูล อ้างอิง 13 ข้อสอบแบบปรนัย , ข้อสอบแบบอัตนัย 14-16


1 หน่วยที่ 9 หลักการออกแบบฐานข้อมูล 9.1ขั้นตอนการพัฒนาระบบฐานข้อมูล ขั้นตอนที่ 1 การวิเคราะห์ความต้องการของผู้ใช้(Database Initial Study) ขั้นตอนที่ 2 การออกแบบฐานข้อมูล (Database Design) ขั้นตอนที่ 3 การออกแบบและพัฒนาโปรแกรม (Implementation) ขั้นตอนที่ 4 การทดสอบและประเมินผล (Testing and Evaluation) ขั้นตอนที่ 5 การติดตั้งระบบ (Installation) ขั้นตอนที่ 6 การบำรุงรักษาและเพิ่มความต้องการของระบบ (Maintenance and Evolution) ขั้นตอนที่ 7 การจัดทำเอกสารประกอบ (Documentation) 9.1.1ขั้นตอนที่1 การวิเคราะห์ความต้องการของผู้ใช้ เป็นขั้นตอนที่ผู้พัฒนาระบบฐานข้อมูลจะต้องทำการวิเคราะห์ความต้องการต่างๆ ของผู้ใช้เพื่อกําหนด จุดมุ่งหมาย ขอบเขต และกฎระเบียบต่างๆ ของฐานข้อมูล จะทำการวิเคราะห์โดยแบ่งออกเป็นเรื่องต่างๆ ดังนี้ การวิเคราะห์ปัญหา (Problem Analysis) เป็นการวิเคราะห์ปัญหาของระบบงาน ปัจจุบันที่กําลังใช้งานอยู่ว่ามีปัญหาอะไรบ้าง เช่น การจัดเก็บข้อมูล การ จัดทำเอกสารที่เกี่ยวข้องกับการดําเนินงาน ตลอดจนรายงานที่นําเสนอผู้บริหาร เป็นต้น


2 9.1.2 ขั้นตอนที่2 การออกแบบฐานข้อมูล เป็นขั้นตอนการนําเอารายละเอียดที่เก็บรวบรวมและวิเคราะห์ได้จากขั้นตอนแรก มาทําการ ออกแบบสร้างฐานข้อมูลขึ้น การออกแบบสร้างฐานข้อมูลมีขั้นตอน ดังนี้ การออกแบบในระดับความคิด (Conceptual Database Design) ระดับนี้เป็นการกําหนดโครงสร้างหลักๆ ของข้อมูลภายในฐานข้อมูล โดยยังไม่คํานึงถึงรูปแบบของ ฐานข้อมูลว่าจะเป็นรูปแบบใด(แบบลําดับขั้น แบบเครือข่าย หรือแบบเชิงสัมพันธ์) ในการกําหนดโครงสร้างของ ข้อมูลภายในฐานข้อมูลนี้อาจจะนําเสนอเป็นภาพรวมในรูปของแบบจําลองความสัมพันธ์ระหว่างข้อมูล (E-R Model) ที่แสดงถึงเอนติตี้และความสัมพันธ์ระหว่างเอนติตี้ของฐานข้อมูลทั้งระบบผลลัพธ์ที่ได้ในการออกแบบ ระดับนี้เรียกว่า “Conceptual Schema” การออกแบบในระดับตรรกะ (Logical Database Design) ระดับนี้เป็นการนําเอาโครงสร้างหลักๆ ที่ได้ออกแบบในระดับความคิดมาปรับปรุงให้มีโครงสร้างข้อมูลที่ สามารถนํามาใช้งานได้จริงโดยยังไม่คํานึงซอฟต์แวร์ที่จะนํามาใช้พัฒนาสร้างระบบฐานข้อมูลในระดับนี้จึงมีการ ตรวจสอบความถูกต้องของโครงสร้างที่ออกแบบขึ้นกับส่วนประมวลผลแบบต่างๆ ที่ออกแบบไว้เช่น ถ้าต้องการนํา โครงสร้างในระดับความคิด มาปรับปรุงให้อยู่ในรูปแบบฐานข้อมูลเชิงสัมพันธ์ก็จะต้องนําแบบจําลองความสัมพันธ์ ระหว่างข้อมูลมาแบ่งให้อยู่ในรูปแบบฐานข้อมูลเชิงสัมพันธ์เป็นต้น หรือไม่ต้องทําการออกแบบในระดับความคิด แต่มาทําการออกแบบในระดับตรรกะ ด้วยวิธีการนอร์มัลไลซ์ก็เลยได้ผลลัพธ์ที่ได้จากการออกแบบระดับนี้เรียกว่า “Logical Schema” การออกแบบในระดับกายภาพ (Physical Database Design) ระดับนี้เป็นการออกแบบ โดยการปรับปรุงโครงสรางของข้อมูลที่ออกแบบขึ้นจากระดับตรรกะ (Logical) มาปรับปรุงโครงสร้างให้เป็นไปตามโครงสร้างของซอฟต์แวร์ที่จะนํามาใช้เช่น การกําหนดประเภทของข้อมูล โครงสร้างในการจัดเก็บ (การสร้างดัชนี(Index) การจัดคลัสเตอร์(Clustering) ซึ่งเป็นการจัดเก็บข้อมูลที่มีการใช้ งานบ่อยๆ หรือการใช้เทคนิคแอชชิ่ง (Hashing Technique) ในการจัดตําแหน่งที่อยู่ของข้อมูล และวิธีการเข้าถึง ข้อมูล เป็นต้น ผลลัพธ์ที่ได้จากการออกแบบระดับนี้เรียกว่า “Physical Schema”


3 9.1.3 ขั้นตอนที่ 3 การออกแบบและพัฒนาโปรแกรม เป็นขั้นตอนที่นําเอาโครงสร้างของข้อมูลที่ได้ออกแบบไว้ในขั้นตอนการออกแบบมาทําการสร้างเป็น ฐานข้อมูล ที่จะใช้เก็บข้อมูลจริง โดยจะทําการออกแบบโปรแกรมว่าระบบจะต้องประกอบไปด้วยส่วนใดบ้าง รูปแบบหน้าจอการนําข้อมูลเข้า (User Interface) และรายงานจะต้องกําหนดรูปแบบโปรแกรมอย่างไร และต้อง ทําการกําหนดกฎระเบียบเพื่อให้ระบบฐานข้อมูลมีความคงสภาพของข้อมูล เป็นต้น 9.1.4 ขั้นตอนที่4 การทดสอบและประเมินผล ขั้นตอนนี้เป็นขั้นตอนของการทดสอบระบบฐานข้อมูลที่พัฒนาขึ้น ว่าทํางานได้อย่างถูกต้องหรือไม่และทํา การหาข้อผิดพลาดรวมทั้งการประเมินประสิทธิภาพการทํางานของระบบใหม่ที่พัฒนาขึ้นนี้หากพบข้อผิดพลาด ผู้พัฒนาระบบจะต้องทําการแก้ไข ปรับปรุงให้ระบบที่พัฒนาขึ้นนี้สามารถรองรับความต้องการของผู้ใช้งานระบบได้ อย่างถูกต้อง และสมบูรณ์ 9.1.5ขั้นตอนที่ 5 การติดตั้งระบบ เป็นขั้นตอนที่นําระบบที่ได้พัฒนาและทําการปรับปรุง แก้ไขปัญหาแล้วนํามาทําการติดตั้ง เพื่อให้ผู้ใช้ได้ใช้ งานจริงการติดตั้งระบบ หมายถึง การเปลี่ยนการทํางานจากระบบงานเดิมไปเป็นระบบงานใหม่ซึ่งการเปลี่ยนแปลง นี้ย่อมมีผลกระทบต่อผู้ใช้งาน ดังนั้นเพื่อหลีกเลี่ยงปัญหาดังกล่าว จึงควรเลือกแนวทางที่เหมาะสมในการติดตั้ง ระบบงาน ดังนี้ 1. การติดตั้งแบบทันทีทันใด (Direct Installation) เป็นการติดตั้งระบบงานใหม่ทันทีและยกเลิก ระบบงานเดิมทันทีวิธีนี้เสียค่าใช้จ่ายน้อยแต่มีความเสี่ยงสูง 2. การติดตั้งแบบขนาน (Parallel Installation) เป็นการติดตั้งโดยมีระบบงานใหม่ไปพร้อมๆ กับ ระบบงานเดิมจนกว่าผู้ใช้จะพอใจในระบบงานใหม่จึงยกเลิกระบบงานเดิม 3. การติดตั้งแบบนําร่อง (Pilot Installation) เป็นการติดตั้งระบบงานใหม่เพียงหน่วยงานเดียวเพื่อเป็น การนําร่องแล้วจึงเปลี่ยนหมดทั้งองค์กรเมื่อเห็นว่าระบบงานใหม่ทํางานได้ตามวัตถุประสงค์


4 4. การติดตั้งแบบทยอยติดตั้งเป็นระยะ (Phased Installation) เป็นการติดตั้งระบบงานใหม่เพียงบาง สวนของระบบงาน ควบคู่ไปกับระบบงานเดิมในส่วนอื่นๆ แล้วจึงเปลี่ยนทั้งหมด เมื่อเห็นว่าระบบงานใหม่ทํางานได้ ตามวัตถุประสงค์ 9.1.6 ขั้นตอนที่ 6 การบำรุงรักษาและเพิ่มความต้องการของระบบ เป็นขั้นตอนที่ทำการบำรุงรักษาระบบฐานข้อมูลให้ทำงานอย่างมีประสิทธิภาพ ซึ่งเกิดขึ้นในระหว่างการ งาน ซึ่งจะต้องมีผู้ดูแลระบบทำการดูแล และคอยตรวจสอบการทำงานของระบบ พร้อมทั้งให้คำแนะนําหรือ คําปรึกษาการใช้งานของระบบ รวมถึงการฝึกอบรมการใช้ระบบกับพนักงาน หากพบว่าระบที่พัฒนาขึ้นนี้จะต้องทำ การแก้ไขปรับปรุงเพิ่มเติม เพื่อให้เหมาะสมกับความต้องการของผู้ใช้ผู้พัฒนาระบบก็จะต้องรีบดำเนินการให้ระบบ ใหม่นี้เป็นไปตามความต้องการของผู้ใช้และเป้าหมายขององค์กร 9.1.7 ขั้นตอนที่ 7 การจัดทำเอกสารประกอบ เป็นขั้นตอนในการจัดทำเอกสารประกอบการใช้งานของระบบ ซึ่งเป็นเอกสารที่แสดงรายละเอียดขั้นตอน การทำงาน ภาพรวมของระบบใหม่ เพื่อใช้อ้างอิงในระหว่างการใช้งานระบบใหม่แบ่งออกเป็น 2 ประเภท ดังนี้ 1. เอกสารสำหรับผู้ใช้ระบบ (User Documentation) เป็นเอกสารที่อธิบายถึงวิธีการใช้ระบบทีละ ขั้นตอน เช่น ผู้ใช้จะสามารถเข้าสู่ระบบได้อย่างไร จะต้องไปที่เมนูใดจึงจะป้อนข้อมูลได้การพิมพ์เอกสารที่เกี่ยวข้อง การทำสรุปรายงานรวมถึงผู้บริหารจะเข้าใช้สารสนเทศได้อย่างไรด้วย 2. เอกสารนําหรับผู้พัฒนาระบบ (Technical Documentation) เป็นเอกสารที่มีความละเอียดมากกว่า เอกสารสำหรับผู้ใช้เพราะเอกสารสำหรับผู้พัฒนาระบบจะมีรูปแบบของคําสั่งของโปรแกรมแต่ละส่วนพร้อมทั้งบอก วัตถุประสงค์หรือมีคําอธิบายโปรแกรมแต่ละส่วนของโปรแกรม


5 9.2 แผนภาพอีอาร์ไดอะแกรม (Entity Relation Diagram : ERD) อ้างอิง : https://www.mindphp.com/


6 9.3 แอตทริบิวต์ Attribute (แอตทริบิวต์) คือ การกำหนดคุณลักษณะของอิลิเมนท์ การกำหนดคุณลักษณะใน HTML เช่น อิลิเมนต์ที่ใช้แสดงรูปภาพ (<img>) ก็จะมีแอตทริบิวต์ที่ใช้กำหนดตำแหน่ง ของภาพ กำหนดที่อยู่ของภาพ กำหนดความกว้าง ความสูงของภาพ เช่น <img src="/ที่อยู่ของภาพ" width="ความกว้าง" hight="ความสูง" alt="คำอธิบายรูป"> หรือ อิลิเมนต์แสดงลิ้งก์ ก็จะมีแอตทริบิวต์ที่กำหนด URLเป็นต้น การกำหนดแอตทริบิวต์ จะมีอยู่ 2 แบบ คือ กำหนดชื่อและค่า และการกำหนดแบบ บูลีน แอตทริบิวต์แบบกำหนดชื่อและค่า (Name & Value) แอตทริบิวต์แบบกำหนดชื่อและค่า ต้องกำหนดในรูปแบบของ name="Value" ที่แท็กเปิดของอิลิเมนต์ แนวทางในการกำหนดแอตทริบิวต์ให้แก่อิลิเมนต์ของ HTML 9.3.1การกำหนดแอตทริบิวต์สามารถกำหนดได้ 3 ลักษณะ คือ 9.3.1.1 กำหนดโดยเครื่องหมาย "___" เช่น <a href="/www.mindphp.com"> โดยหลักการทั่วไป การเขียนแบบกำหนดค่าจะนิยมใช้เครื่องหมาย "___" มากกว่า การกำหนดค่าแอตทริบิวต์โดยไม่ใช้เครื่องหมายใดๆ กำกับ จะใช้ได้เฉพาะการที่ค่าของแอตทริบิวต์นั้น เขียนติดกัน โดยไม่มีช่องว่างคั่น ถ้าหากมีช่องว่างคั่น จะทำให้การทำงานผิดพลาดได้ การเขียนชื่อของแอตทรบิวต์นั้น เราจะเขียนได้ด้วยตัวอักษรพิมพ์ใหญ่หรือพิมพ์เล็ก ปะปนกันไปก็ได้ แต่โดยส่วน ใหญ่จะนิยมเขียนด้วยอักษรพิมพ์เล็กทั้งหมด 9.3.1.2แอตทริบิวต์แบบบูลีน (ฺBoolean) จะเป็นการกำหนดคุณลักษณะแบบ On/Off เช่น อิลิเมนต์ อินพุท (Element Input) ที่เป็นตัวอิลิเมนต์ของช่องรับข้อมูล จะมีแอตทริบิวต์ชื่อ disable (ปิดการใช้งาน) ใช้ใน กำหนดคุณสมบัติว่าให้อิพุทตัวนั้นสามารถใช้งานได้หรือไม่ โดยกำหนดค่า ดังนี้ ในรูปแบบของ XHTML จะกำหนดโดยการนำชื่อแอตทริบิวต์มากำหนดค่าของแอตทริบิวต์เลย เช่น <input type="text" disable="disable"> ในรูปแบบของ HTML5 จะกำหนดเพียงแค่ชื่อของแอตทริบิวต์ โดยไม่ต้องกำหนดค่าดังนี้ <input type="text" disable>


7 9.4 ความสัมพันธ์ระหว่างเอนติตี้ การสร้างความสัมพันธ์ระหว่างเอนทิตี้ในฐานข้อมูลเชิงสัมพันธ์กระทำได้ โดยการกำหนดให้เอนทิตี้ที่มี ความสัมพันธ์กันมีแอททริบิวต์ที่เหมือนกัน และใช้ค่าของแอททริบิวต์ที่เหมือนกันเป็นตัวระบุข้อมูลใน เอนทิตี้ที่มีความสัมพันธ์กัน ความสัมพันธ์ระหว่างเอนทิตี้ แบ่งออกเป็น 3 ประเภท ดังนี้ 9.4.1 ความสัมพันธ์แบบหนึ่งต่อหนึ่ง (One-to-one Relationship) ความสัมพันธ์แบบหนึ่งต่อหนึ่งเป็นการแสดความสัมพันธ์ของข้อมูลในเอนทิตี้หนึ่งว่ามี ความสัมพันธ์กับข้อมูลของอีกเอนทิตี้หนึ่ง ในลักษณะที่เป็นหนึ่งต่อหนึ่ง เช่น ความสัมพันธ์ของประชาชนกับหมายเลขรหัสประจำตัวประชาชน ซึ่งประมาณ 1 คน จะต้องมี หมายเลขรหัสประจำตัวประชาชน 1 หมายเลข ซึ่งไม่ซ้ำกัน นักศึกษากับรหัสประจำตัวนักศึกษา นักศึกษาแต่ละคนจะมีรหัสประจำตัวนักศึกษาไม่ซ้ำกัน รถยนต์กับทะเบียนรถยนต์ก็เช่นกัน รถยนต์แต่ละคันก็จะมีหมายเลขทะเบียนไม่ซ้ำกน จึมี ความสัมพันธ์แบบหนึ่งต่อหนึ่ง 9.4.2 ความสัมพันธ์แบบหนึ่งต่อกลุ่ม (One-to-many Relationship) ความสัมพันธ์แบบหนึ่งต่อกลุ่ม เป็นการแสดงความสัมพันธ์ของข้อมูลของเอนทิตี้หนึ่ง ว่ามี ความสัมพันธ์กับข้อมูลหลายข้อมูลกับอีกเอนทิตี้หนึ่ง เช่น ความสัมพันธ์ของ แผนกกับพนักงาน ซึ่งแผนก แต่ละแผนกจะประกอบไปด้วยพนักงานที่สังกัดอยู่ในแผนกหลายคน ความสัมพันธ์ของโรงเรียนกับนักเรียน โรงเรียน 1 โรงเรียน มีนักเรียนหลายคนเรียนอยู่ในโรงเรียน จึงมีความสัมพันธ์แบบหนึ่งต่อกลุ่ม 9.4.3ความสัมพันธ์แบบกลุ่มต่อกลุ่ม (Many-to-many Relationship) ความสัมพันธ์แบบกลุ่มต่อกลุ่ม เป็นการแสดงความสัมพันธ์ของข้อมูลของ 2 เอนทิตี้ ใน ลักษณะแบบกลุ่มต่อกลุ่ม เช่น ความสัมพันธ์ของนึกศึกษากับหลักสูตร นักศึกษาหลายคน อาจเรียนอยู่ใน หลายหลักสูตร ความสัมพันธ์ของลูกค้า/คำสั่งซื้อกับสินค้า ลูกค้าหลายคน อาจซื้อสินค้าได้หลายชนิด ในการซื้อ แต่ละครั้ง และอาจมีคำสั่งซื้อหลายครั้ง จึงมีความสัมพันธ์แบบกลุ่มต่อกลุ่ม


8 9.5 ระดับของรีเลชันชิพ 9.5.1. ความสัมพันธ์แบบ หนึ่งต่อหนึ่ง ( One to one Relationships) เป็นการแสดงความสัมพันธ์ของข้อมูล ของเอนทิตี้หนึ่งว่ามีความส ัมพันธ์กับข้อมูลในอีกเอนทิตี้หนึ่ง ในลักษณะ หนึ่ง ต่อ หนึ่ง หรือเขียนได้เป็น 1:1 แสดงว่าข้อมูลเพียงหนึ่งข้อมูลของเอนทิตี้แรกมีความสัมพันธ์กับข้อมูลใน เอนทิตี้ที่สองเพียงข้อมูลเดียว หรือ นักศึกษาหนึ่งคนจะมีสูติบัตรเพียงใบเดียวเท่านั้น สูติบัตรหนึ่งใบก็เป็นของนักศึกษาได้เพียงคนเดียวเท่านั้นเช่นกัน


9 9.5.2 ความสัมพันธ์แบบ หนึ่งต่อกลุ่ม ( One to many Relationships) เป็นการแสดงความสัมพันธ์ของข้อมูล ของเอนทิตี้หนึ่งว่ามีความส ัมพันธ์กับข้อมูลในอีกเอนทิตี้หนึ่ง ในลักษณะ หนึ่ง ต่อ กลุ่ม หรือเขียนได้เป็น 1:N แสดงว่าข้อมูลเพียงหนึ่งข้อมูลของเอนทิตี้แรกมีความสัมพันธ์กับข้อมูลใน เอนทิตี้ที่สองหลายข้อมูล เช่น หรือ ลูกค้าหนึ่งคนมีใบเสร็จได้หลายใบ เนื่องจากลูกค้าหนึ่งคนอาจมาซื้อสินค้าหลายครั้ง ใบเสร็จหนึ่งใบต้องเป็นของลูกค้าเพียงคนเดียวเท่านั้น


10 9.5.3 ความสัมพันธ์แบบ กลุ่มต่อกลุ่ม ( Many to Many Relationships) เป็นการแสดงความสัมพันธ์ของข้อมูล ของเอนทิตี้หนึ่งว่ามีความส ัมพันธ์กับข้อมูลในอีกเอนทิตี้หนึ่ง ในลักษณะ กลุ่ม ต่อ กลุ่ม หรือเขียนได้เป็น N:M แสดงว่าข้อมูลเพียงหนึ่งข้อมูลของเอนทิตี้แรก มีความสัมพันธ์กับข้อมูลใน เอนทิตี้ที่สองหลายข้อมูล และทำนองเดียวกัน ข้อมูลเพียงหนึ่งข้อมูลของเอนทิตี้ที่สองมีความสัมพันธ์ในทาง กลับกันกับข้อมูลในเอนทิตี้ที่แรกหลายข้อมูล จากความสัมพันธ์ระหว่าง Orders และ Items เป็นความสัมพันธ์แบบหนึ่งต่อกลุ่ม และในทำนองเดียวกัน ความสัมพันธ์ระหว่าง Items และ Orders ก็เป็นความสัมพันธ์แบบหนึ่งต่อกลุ่มด้วยเช่นกัน ดังนั้นความสัมพันธ์ ระหว่างเอนทิตี้ทั้งสองจึงเป็นแบบกลุ่มต่อกลุ่ม ( N:M) โดยมีความหมายดังต่อไปนี้คือ สินค้า 1 ชนิด หรือ 1 item จะถูกสั่งซื้อโดยปรากฏในใบสั่งซื้อหรือใบ orders ได้หลาย ๆ ใบ และในทำนอง เดียวกัน ใบสั่งซื้อ 1 ใบ สามารถมีรายการสิ้นค้าหรือ items ได้หลาย ๆ รายการ หรือหลาย ๆ items ได้ นิสิตสามารถลงทะเบียนเรียนได้หลาย ๆ วิชาพร้อมกันในแต่ละครั้ง และในทางตรงกันข้าม ในแต่ละวิชา 1 วิชา จะประกอบด้วยนิสิตหลายคนมาลงทะเบียนในวิชานั้น


11 9.6 การออกแบบฐานข้อมูลด้วย E-R Diagram (ERD) ER Diagram(อีอาร์ ไดอะแกรม) เป็นการออกแบบโครงสร้างฐานข้อมูลเพื่อ ให้นักวิเคราะห์ระบบ และ นักพัฒนาระบบเข้าใจตรงกันไปในทิศทางเดียวกัน เพื่อจะได้นำไปพัฒนาโครงสร้างข้อมูลของระบบไ้ด้อย่างมี ประสิทธิภาพ โดยตรงส่วนของ การทำ ER จำเป็นต้องมีรูปแบบในการออกแบบที่ถูกต้อง เนื่องจาก เป็นรากฐาน ของการวางโครงสร้าง Database ที่จะส่งผลต่อการเก็บข้อมูล ชนิดข้อมูล Primary Key ต่างๆ ที่อ้างอิงโดยตรงกับ การวางโครงสร้าง ฐานข้อมูล โดยจะต้องมีการศึกษา และลงมือทำ เพื่อทำความเข้าใจรูปแบบของการออกแบบ ฐานข้อมูล โดยหลักๆฐานข้อมูลก็จะมีการเชื่อมความสัมพันธ์ที่แตกต่างกันออกไป โดยยกตัวอย่างเช่น One to One Relationship (1:1) เป็นรูปแบบการเชื่อมความสัมพันธ์แบบหนึ่งต่อหนึ่ง เช่น นักเรียนหนึ่งคน มี รหัสนักเรียน หนึ่งตัว One to Many Relationship (1:M) เป็นรูปแบบการเชื่อมความสัมพันธ์แบบหนึ่งต่อมาก เช่น นักเรียนหนึ่งคนอยู่ ในห้องเรียนหนึ่งห้อง โดยในหนึ่งห้องเรียน มีนักเรียนหลายคน Many to Many Relationship (N:M) เป็นรูปแบบการเชื่อมความสัมพันธ์แบบมากต่อมาก เช่น ในหลายรายวิชา มีนักเรียนลงทะเบียนหลายคน และ นักเรียนหลายคน ลงทะเบียนเรียนในหลายวิชา จะเห็นได้ว่าการเชื่อมโยงความสัมพันธ์ข้อมูลนั้น มีรูปแบบเฉพาะ และต้องอาศัยการเรียนรู้ และ การทำความเข้าใจ ก่อน ถึงจะสามารถถทำการออกแบบฐานข้อมูลได้อย่างมีประสิทธิภาพได้ เนื่องจากการออกแบบฐานข้อมูล รวมถึง การเชื่อมความสัมพันธ์ของข้อมูล จำเป็นต้องคำนึงถึงการนำไปใช้ประโยชน์ และ นำไปใช้งานจริงตอนที่เราได้สร้าง งาน การออกแบบฐานข้อมูลหากมีการออกแบบที่ผิดพลาด การวางโครงสร้างฐานข้อมูล ก็อาจจะเกิดความผิดพลาด ขึ้นมา และ ส่งผลต่อส่วนอื่นๆ ให้เสียหายไปด้วย เนื่องจากการออกแบบฐานข้อมูล หรือ จัดการฐานข้อมูล เป็นการ วางโครงสร้างอย่างหนึ่งในทุกๆสิ่งที่มีการเก็บข้อมูล อาจจะเป็น องค์กร หรือ ร้านค้าเล็กๆ ทั่วไป ต่างก็ใช้ฐานข้อมูล เพื่อเก็บ อ้างอิง หรือ นำมาแสดงผลทั้งนั้น การอออกแบบฐานข้อมูลให้มีความถูกต้อง จึงเป็นเรื่องจำเป็นที่นัก ออกแบบระบบ หรือ วิเคราะห์ระบบ จำเป็นต้องทำให้ถูกต้อง โดยฐานข้อมูลก็อาจมีลักษณะการการเขียนการ เชื่อมต่อที่แตกต่างกันไป


12 9.7 การตรวจสอบความสมดุลระหว่างแผนภาพกระแสข้อมูลกับแบบจําลองความสัมพันธ์ของ ข้อมูล ตรวจสอบความสมดุลของ DFD (Balancing DFD) Balancing DFD หมายถึงความสมดุลของแผนภาพ จะต้องมีInput Data Flow ที่เข้าสู่ระบบและมี Output Data Flow ที่ออกจากระบบใน DFD ระดับล่าง (Child Diagram) ให้ครบทุก InputData Flow และ Output Data Flow ที่ปรากฏอยู่ใน DFDระดับบน (Context Diagram) แผนภาพกระแสข้อมูล (Data Flow Diagram : DFD)เป็นแบบจำลองขั้นตอนการทำงานของระบบ เพื่ออธิบายขั้นตอน การทำงานของระบบที่ได้จากการศึกษาในขั้นตอนก่อนหน้านี้แผนภาพจะแสดงทิศทางการไหลของข้อมูลและ อธิบายความสัมพันธ์ในการดำเนินงานของระบบซึ่งจะทำให้ทราบว่า ข้อมูลมาจากไหน , ข้อมูลไปที่ไหน , เกิดกิจกรรมใดกับข้อมูลบ้าง ในแต่ละขั้นตอนของระบบ , จัดเก็บข้อมูลที่ไหนหรือส่งข้อมูลไปให้ที่ใด


13 อ้างอิง access2010database.blogspot.com บทที่ 9หลักการออกแบบฐานข้อมูล สืบค้นวันที่ 19 พฤษภาคม 2566 จาก https://access2010database.blogspot.com/ mindphp.com แผนภาพ ER-Diagram สืบค้นวันที่ 19 พฤษภาคม 2566 จาก https://www.mindphp.com/developer/21-sql-mysql/4775-er-diagrammindphp.com แอตทริบิวต์สืบค้นเมื่อวันที่ 19 พฤษภาคม 2566 จาก https://shorturl.asia/1WRbU elearning.psru.ac.th ความสัมพันธ์ระหว่างเอนติตี้สืบค้นเมื่อวันที่ 19 พฤษภาคม 2566 จาก http://elearning.psru.ac.th/courses/63/lesson1499.html cst.tsu.ac.th ระดับของรีเลชันชิพ สืบค้นเมื่อวันที่ 19 พฤษภาคม 2566 จาก https://cst.tsu.ac.th/courseonline/course/computer_it/database/relationship.html mindphp.com การออกแบบฐานข้อมูลด้วยER-Diagramสืบค้นเมื่อวันที่ 19 พฤษภาคม2566 จาก https://shorturl.asia/WGu2t


14 ข้อสอบ ปรนัย 1.ER Diagram (อีอาร์ ไดอะแกรม) คือ ก.แบบจำลองโครงสร้างฐานข้อมูล ข. การกำหนดคุณลักษณะใน HTML ค.การออกแบบและพัฒนาโปรแกรม ง.การจัดเก็บข้อมูล 2.ขั้นตอนการพัฒนาระบบฐานข้อมูลมีกี่ขั้นตอน ก.4 ขั้นตอน ข.5 ขั้นตอน ค.6 ขั้นตอน ง.7 ขั้นตอน ข้อสอบแบบอัตนัย 1.ขั้นตอนการพัฒนาระบบฐานข้อมูลมีอะไรบ้างตอบมาอย่างน้อย 3 ข้อ 1.การวิเคราะห์ความต้องการของผู้ใช้,2.การออกแบบฐานข้อมูล,3.การออกแบบและพัฒนาโปรแกรม 2.องค์ประกอบหลักๆ ของ Er Diagrame มีกี่ส่วน อะไรบ้าง มี 3 ส่วนดังนี้ 1.Entity(เอนทิตี้) เป็นวัตถุ หรือสิ่งของที่เราสนใจในระบบงานนั้น ๆ 2.Attribute(แอตทริบิ้ว) เป็นคุณสมบัติของวัตถุ 3.Relationships ความสัมพันธ์ระหว่างเอนทิตี้


15 3.ความสัมพันธ์(Relationships) ของระบบฐานข้อมูลมีอะไรบ้าง 1. ความสัมพันธ์แบบ หนึ่งต่อหนึ่ง ( One to one Relationships) เป็นการแสดงความสัมพันธ์ของข้อมูล ของเอนทิตี้หนึ่งว่ามีความส ัมพันธ์กับข้อมูลในอีกเอนทิตี้หนึ่ง ในลักษณะ หนึ่ง ต่อ หนึ่ง หรือเขียนได้เป็น 1:1 แสดงว่าข้อมูลเพียงหนึ่งข้อมูลของเอนทิตี้แรกมีความสัมพันธ์กับข้อมูลใน เอนทิตี้ที่สองเพียงข้อมูลเดียว 2.ความสัมพันธ์แบบ หนึ่งต่อกลุ่ม ( One to many Relationships) เป็นการแสดงความสัมพันธ์ของข้อมูล ของเอนทิตี้หนึ่งว่ามีความส ัมพันธ์กับข้อมูลในอีกเอนทิตี้หนึ่ง ในลักษณะ หนึ่ง ต่อ กลุ่ม หรือเขียนได้เป็น 1:N แสดงว่าข้อมูลเพียงหนึ่งข้อมูลของเอนทิตี้แรกมีความสัมพันธ์กับข้อมูลใน เอนทิตี้ที่สองหลายข้อมูล เช่น 3.ความสัมพันธ์แบบ กลุ่มต่อกลุ่ม ( Many to Many Relationships) เป็นการแสดงความสัมพันธ์ของข้อมูล ของเอนทิตี้หนึ่งว่ามีความส ัมพันธ์กับข้อมูลในอีกเอนทิตี้หนึ่ง ในลักษณะ กลุ่ม ต่อ กลุ่ม หรือเขียนได้เป็น N:M แสดงว่าข้อมูลเพียงหนึ่งข้อมูลของเอนทิตี้แรก มีความสัมพันธ์กับข้อมูลใน เอนทิตี้ที่สองหลายข้อมูล และทำนองเดียวกัน ข้อมูลเพียงหนึ่งข้อมูลของเอนทิตี้ที่สองมีความสัมพันธ์ในทาง กลับกันกับข้อมูลในเอนทิตี้ที่แรกหลายข้อมูล


16 4.รูปแบบความสัมพันธ์(Relationships (รีเรชั่นชิพ) มีกี่แบบ อะไร มี3 รูปแบบ ความสัมพันธ์ของข้อมูล 1:1 เป็นความสัมพันธ์แบบ one to one Relationships (วัน ทู วัน รีเรชั่น ชิพ) หมายความว่าข้อมูลหมายความว่าข้อมูลในเอนทิตี้1 มีความสัมพันธ์กับข้อมูลในเอนทิตี้ที่สอง 1 ข้อมูล เช่น นักศึกษา 1 คนสามารถมีบัตรนักศึกษาได้ 1 ใบ ความสัมพันธ์ของข้อมูล 1:M เป็นความสัมพันธ์แบบ one to many Relationships (วัน ทู เมนี่ รีเรชั่น ชิพ) หมายความว่าข้อมูลในเอนทิตี้1 มีความสัมพันธ์กับข้อมูลในเอนทิตี้ที่สองหลายข้อมูล เช่น ลูกค้า 1 คน สามารถเลือกซื้อสินค้าได้หลายอย่าง ความสัมพันธ์ของข้อมูล M:M เป็นความสัมพันธ์แบบ Many to many Relationships (เมนู ทู เมนู รีเรชั่น ชิพ) หมายความว่ามีความสัมพันธ์ แบบกลุ่ม ต่อ กลุ่ม เช่น รถเมล์1 คัน สามารถมีผู้โดยสารได้หลายคน และ ผู้โดยสาร 1 คนสามารถนั่งรถเมล์ได้หลายคัน 5.แอททริบิวต์(Attribute) คืออะไร คำตอบ ข้อมูลที่แสดงถึงคุณสมบัติของเอนทิตี เช่น เอนทิตีสินค้า ประกอบด้วยแอททริบิวต์รหัสสินค้า ชื่อสินค้า ราคาสินค้า และสินค้าคงเหลือ เอนทิตีลูกค้าประกอบด้วยแอททริบิวต์ รหัสลูกค้า ชื่อลูกค้า และที่อยู่ เอนทิตีใบสั่ง ซื้อประกอบด้วยแอททริบิวต์ รหัสใบสั่งซื้อ รหัสสินค้า รหัสลูกค้า และจำนวน


17 ฃ


Click to View FlipBook Version