วันพุธที่ 1 มีนาคม พ.ศ. 2560

การออกแบบข้อมูลด้วย E-R Diagram ( Entity - Relationship Diagrams )

การออกแบบข้อมูลด้วย E-R Diagram ( Entity - Relationship Diagrams )

    

  • Entity-Relationship Diagram คือ แผนภาพที่ใช้สัญลักษณ์มาตรฐาน ใช้ร่างฐานข้อมูลของเราหรือออกแบบฐานข้อมูลก่อนนำไปสร้างจริง
    • ช่วยให้ง่ายต่อการทำความเข้าใจ
    • ทำให้สามารถมองเห็นภาพรวมของเอ็นทิตี้ทั้งหมดที่มีในระบบ
    • แสดงความสัมพันธ์ระหว่างเอ็นทิตี้
    • ทำให้บุคลากรที่เกี่ยวข้องกับระบบฐานข้อมูลสามารถเข้าใจลักษณะของข้อมูล และความสัมพันธ์ระหว่างข้อมูลได้ง่ายและถูกต้องตรงกัน
  • ส่วนประกอบของ E-R Diagram หรือ E-R Model มีส่วนประกอบสำคัญ 3 ส่วนดังนี้
    • เอ็นทิตี้ (Entity)
      • สิ่งที่สนใจ สามารถระบุได้ในความเป็นจริง และต้องการเก็บรวบรวมข้อมูลที่เกี่ยวข้องไว้ในฐานข้อมูล  รวมทั้งสามารถบ่งชี้ความเป็นเอกลักษณ์เฉพาะตัว โดยแทนที่ด้วย รูปสี่เหลี่ยมผืนผ้า
    • แอททริบิวท์ (Attributes) 
      • ใช้แสดงถึงคุณสมบัติของ Entity โดยแทนที่ด้วย รูปวงรี
    • ความสัมพันธ์ (Relationship)
      • แสดงให้เห็นถึงความสัมพันธ์ระหว่าง Entity ว่ามีความสัมพันธ์กันอย่างไร โดยแทนที่ด้วย รูปสี่เหลี่ยมข้าวหลามตัด

    เอ็นทิตี้ (Entity)

    • สิ่งที่สนใจสามารถระบุได้ในความเป็นจริง และต้องการเก็บรวบรวมข้อมูลที่เกี่ยวข้องไว้ในฐานข้อมูลรวมทั้งสามารถบ่งชี้ความเป็นเอกลักษณ์เฉพาะตัว โดยแทนที่ด้วยรูป สี่เหลี่ยมผืนผ้า เช่น
      • บุคคล
      • สถานที่
      • วัตถุ
    • เอ็นทิตี้อ่อนแอ (Weak entity)
      • เอ็นทิตี้ที่จะขึ้นอยู่กับเอ็นทิตี้ชนิดอื่น ๆ ไม่สามารถเกิดขึ้นได้ตามลำพัง และจะถูกลบเมื่อ     เอ็นทิตี้หลักถูกลบออกไป
      • เอ็นทิตี้อ่อนแอ (Weak entity) จะใช้สัญลักษณ์รูปสี่เหลี่ยมผืนผ้าแต่เป็นเส้นคู่ ตัวอย่างเช่น

      แอททริบิวท์ (Attributes)

      • ใช้แสดงถึงคุณสมบัติของ Entity โดยแทนที่ด้วย รูปวงรี

      • แอทริบิวต์ที่มีหลายค่า (Multivalued Attribute)
        • ในคนหนึ่งคนสามารถมีเบอร์ได้

      ความสัมพันธ์ (Relationship)

      • แสดงให้เห็นถึงความสัมพันธ์ระหว่าง Entity ว่ามีความสัมพันธ์กันอย่างไร โดยแทนที่ด้วย รูปสี่เหลี่ยมข้าวหลามตัด 

      • Relationship ใช้ระบุความสัมพันธ์ระหว่าง เอ็นทิตี้ (Entity) ซึ่งเป็นไปตามชนิดของความสัมพันธ์ โดยความสัมพันธ์จะนำเสนอด้วยเหตุการณ์ที่เชื่อมโยงใน เอ็นทิตี้ (Entity) โดยการตั้งชื่อความสัมพันธ์จะใช้คำกริยาที่แสดงการกระทำ
        • ดีกรี (Degree)
          • จำนวนของ เอ็นทิตี้ (Entity) ในการมีส่วนร่วม (Participation) ของความสัมพันธ์ระหว่างกัน ซึ่งจำนวนความสัมพันธ์ระหว่างเอ็นทิตี้มีอยู่ 3 รูปแบบคือ
            • Unary relationship เป็นความสัมพันธ์ที่มี Entity เพียง Entity เดียว
            • Binary relationship เป็นความสัมพันธ์ที่มี Entity เกี่ยวข้องด้วย 2 Entity
            • Ternary relationship เป็นความสัมพันธ์ที่มี Entity เกี่ยวข้องด้วย 3 Entity
        • Unary relationship เป็นความสัมพันธ์ที่มี Entity เพียง Entity เดียว
          • ตัวอย่างเช่น ผู้จัดการ  <จัดการ> พนักงานของตน (ผู้จัดการก็คือพนักงาน) โดยความสัมพันธ์แบบยูนารี คือ ความสัมพันธ์แบบรีเคอร์ซีพ (Recursive)
        • Binary relationship เป็นความสัมพันธ์ที่มี Entity เกี่ยวข้องด้วย 2 Entity
          • เป็นความสัมพันธ์ที่พบได้บ่อยในฐานข้อมูล ตัวอย่างเช่น นักศึกษา  <ลงทะเบียน> วิชา

        • Ternary relationship เป็นความสัมพันธ์ที่มี Entity เกี่ยวข้องด้วย 3 Entity
          • สามารถแยกมาเป็นแบบไบนารีสองชุด แต่ต้องไม่ทำให้เนื้อหาหรือข้อเท็จจริงเปลี่ยนแปลงไป

      คาร์ดินัลลิตี้ (Cardinality)

      • การกำหนดขอบเขตหรือจำนวนสมาชิกที่เป็นไปได้ในเอ็นทิตี้หนึ่ง ที่มีความสัมพันธ์กับสมาชิกของอีกเอ็นทิตี้หนึ่ง

      อัตราส่วน (Ratio)

      • ใช้แสดงถึงอัตราส่วนของความสัมพันธ์ แทนที่ด้วยตัวเลข 1, M และ N
        • 1 : 1 แทนความสัมพันธ์แบบหนึ่งต่อหนึ่ง One-to-One Relationships
        • 1 : N แทนความสัมพันธ์แบบหนึ่งต่อหลาย One-to-Many-Relationship
        • M : N แทนความสัมพันธ์แบบหลายต่อหลาย Many-to-Many-Relationship

      การมีส่วนร่วม (Participation)

      • ใช้แสดงการมีส่วนร่วมในความสัมพันธ์ของสมาชิกใน Entity แทนที่ด้วยเส้นตรงหรือเส้นคู่
        • Total  (เส้นคู่) ทุก ๆ สมาชิกที่อยู่ใน Entity จะต้องอยู่ในความสัมพันธ์ทั้งหมด
        • Partial  (เส้นเดี่ยว) บางส่วนของสมาชิกที่อยู่ใน Entity เท่านั้นที่อยู่ในความสัมพันธ์