วันศุกร์ที่ 16 มิถุนายน พ.ศ. 2560

To do week 6

To do week 6

    
  • To do
    • Continue...
      • Find example ER diagram from other textbooks
      • Draw them using Google Slides
      • Explain their relationships: degree, cardinality, ratio, participation
      • Use seven-step algorithm to convert the ER model constructs into relations
      • Explain each step clearly
      • Find an exercise from selected textbook, design and draw ER diagram
      • Use seven-step algorithm.. (another practice)
      • Explain each step clearly

    Continue week 5


    • Use seven-step algorithm to convert the ER model constructs into relations
    • Explain each step clearly
      • Step 1: Mapping Entity

        • จาก ER model จะเห็นได้ว่ามีทั้งหมด 4 Entity คือ Account(บัญชี), Customer(ลูกค้า), Branch(สาขา) เเละ Loan(เงินกู้) ในขั้นตอนนี้ จะเป็นการแปลง Entity เป็นตาราง โดยสร้างเป็นตารางและใส่ Attribute จะได้ดังนี้
        • Account(บัญชี)
        • Customer(ลูกค้า)
        • Branch(สาขา)
        • Loan(เงินกู้)
        • ทั้งหมดจะได้เป็นตารางดังนี้
      • Step 2: Mapping Weak Entity
        • ไม่มี
      • Step 3: Mapping One - to - One Relation
        • ไม่มี
      • Step 4: Mapping One - to - Many Relation

        • ในการแปลง Relational 1:N จะทำโดยการเลือกเพิ่มข้อมูลด้าน N โดยเลือก Pimary key ของอีกฝั่งมาเพิ่มในตารางฝั่ง N
    ตาราง Account กับ ตาราง Branch
    ตาราง Branch กับ ตาราง Loan

      • Step 5: Mapping Many - to - Many Relation

        • ในการแปลง Relational M:N จะทำโดยการสร้างตารางขึ้นมาใหม่ 1 ตาราง และเลือก pimary key ของทั้งสองฝั่งมาเพิ่มในตารางที่สร้างขึ้นมาใหม่ เเละสามารถที่จะเพิ่ม Attribute ใหม่เข้าไปได้
    ตาราง Account กับ ตาราง Customer
    ตาราง Branch กับ ตาราง Loan

      • Step 6: Mapping Multivalued Attribute
        • ไม่มี
      • Step 7: Mapping of N-ary relation type
        • ไม่มี
      • หลังจากทำครบ 7 ขั้นตอนก็จะได้ดังนี้




    • Find an exercise from selected textbook, design and draw ER diagram
      • ตัวอย่างโจทย์
        • แบบระบบฐานข้อมูลของ เกมฟุตบอล ซึ่งมีการเก็บข้อมูลดังต่อไปนี้
          • ข้อมูลนักเตะ ประกอบด้วย รหัสของนักเตะ, ชื่อ, นามสกุล, เท้าข้างที่ถนัด, และสัญชาติ โดยที่รหัสของนักเตะไม่ซ้ำกัน และ นักเตะสามารถมีสัญชาติได้มากกว่า 1 สัญชาติ
          • ข้อมูลทีมฟุตบอล ประกอบด้วย ชื่อทีม และชื่อผู้จัดการทีม โดยที่ชื่อทีมไม่ซ้ำกัน
          • ข้อมูลสนามแข่ง ประกอบด้วย ชื่อของสนาม และความจุ โดยที่ชื่อของสนามไม่ซ้ำกัน
        • โดยมีข้อกำหนดดังต่อไปนี้
          • นักเตะทุกคนจะต้องมีทีมที่สังกัด นักเตะ 1 คน สามารถสังกัดได้แค่ 1 ทีมเท่านั้น แต่ใน 1 ทีม สามารถมีนักเตะได้มากกว่า 1 คน ในแต่ละทีมจะมีสนามแข่ง แต่ละทีมสามารถมีสนามแข่งได้แค่สนามเดียว และ ในแต่ละสนามแข่งมีเพียงทีมเดียวที่ใช้ได้
      • เเหล่งที่มาของโจทย์
        • http://www.ict.up.ac.th/somporns/db/LAB_ER.doc

    • จากโจทย์ตัวอย่าทำให้เห็นว่าจะมี Entity ทั้งหมดจำนวน 3 Entity ที่จำเป็นคือ ทีม สนาม เเละนักเเตะ เเละโจทย์จะบอก Attribute บางส่วนมาเเล้ว พร้อมกับเงื่อนไงที่ว่า นักเตะทุกคนจะต้องมีทีมที่สังกัด นักเตะ 1 คน สามารถสังกัดได้แค่ 1 ทีมเท่านั้น แต่ใน 1 ทีม สามารถมีนักเตะได้มากกว่า 1 คน ในแต่ละทีมจะมีสนามแข่ง แต่ละทีมสามารถมีสนามแข่งได้แค่สนามเดียว และ ในแต่ละสนามแข่งมีเพียงทีมเดียวที่ใช้ได้ ดังนั้นจึงเขียน ER ได้ดังนี้
      • ความสัมพันธ์ของ Entity ทีม กับ สนาม มีความสัมพันธ์กันดังนี้ : ทีมหนึ่งทีมสามารถที่จะมีสนามได้เเค่หนึ่งสนามเท่านั้นตามเงื่อนไข เเละทีมจำเป็นที่จะต้องมีสนาม เเละสนามก็จำเป็นที่จะต้องมีทีมที่ใช้สนามนั้นๆ
        • Degree : Binary relationship เป็นความสัมพันธ์ที่มี Entity เกี่ยวข้องด้วย 2 Entity คือ ทีม กับ สนาม
        • Participation : Total ทั้งคู่เพราะเเต่ล่ะ Entity จำเป็นต้องมี
        • Cardinality 1 : 1
      • ความสัมพันธ์ของ Entity ทีม กับ นักเเตะ มีความสัมพันธ์กันดังนี้ : ทีมจำเป็นที่จะต้องมีนักเเตะ เเละนักเเตะจำเป็นต้องมีทีมที่สังกัด เเละจะอยู่ได้เเค่หนึ่งทีมเท่านั้น ตามเงื่อนไข เเละ Attribute สัญชาติจะเป็น Multivalued Attribute เพราะสามารถมีได้มากกว่าหนึ่งสัญชาติ เเละให้ รหัสนักเเตะเป็น primary key เพราะจะได้ไม่ซ้ำกันตามที่กำหนด
        • Degree : Binary relationship เป็นความสัมพันธ์ที่มี Entity เกี่ยวข้องด้วย 2 Entity คือ ทีม กับ นักเเตะ
        • Participation : Total ทั้งคู่เพราะเเต่ล่ะ Entity จำเป็นต้องมี
        • Cardinality 1 : N เพราะทีมหนึ่งทีมสามารถมีนักเเตะได้มากกว่าหนึ่งคน เเละนักเเตะหนึ่งคนจะขึ้นอยู่กับทีมเพียงเเค่ทีมเดียว
    • Use seven-step algorithm.. (another practice)
    • Explain each step clearly

      • Step 1: Mapping Entity
        • ทีม
        • สนาม
        • นักเเตะ
      • Step 2: Mapping Weak Entity
        • ไม่มี
      • Step 3: Mapping One - to - One Relation
        • ในการแปลง Relational 1:1 จะทำโดยการเลือกเพิ่มข้อมูลด้านใดด้านหนึ่งโดยการใส่ key ของอีกฝั่งเพิ่มในตาราง 
    ตาราง Team(ทีม) กับ ตาราง Stadium(สนาม)
      • Step 4: Mapping One - to - Many Relation

        • ในการแปลง Relational 1:N จะทำโดยการเลือกเพิ่มข้อมูลด้าน N โดยเลือก Pimary key ของอีกฝั่งมาเพิ่มในตารางฝั่ง N
    ตาราง Team(ทีม) กับ ตาราง Player(นักเเตะ)
      • Step 5: Mapping Many - to - Many Relation
        • ไม่มี
      • Step 6: Mapping Multivalued Attribute
        • ในการแปลงMultivalued Attribute สามารถทำได้โดยการสร้างเป็นตารางใหม่ขึ้นมาหนึ่งตารางจากนั้นให้นำ Attribute มาใส่ เเละใช้ key ของตารางหลักมาเป็น foreign key ของตารางใหม่
      • หลังจากทำครบ 7 ขั้นตอนก็จะได้ดังนี้

    • ขอขอบคุณข้อมูลจาก 
      • https://msit5.wordpress.com/2013/09/17/การออกแบบข้อมูลด้วย-e-r-diagram-entity-relation
      • https://sites.google.com/site/dkamoldb/baeb-fukhad-chely
      • https://th.wikipedia.org/wiki/แบบจำลองความสัมพันธ์เอนทิตี

    ไม่มีความคิดเห็น:

    แสดงความคิดเห็น