บทที่ 1

ความรู้ทั่วไปเกี่ยวกับฐานข้อมูล

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

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

        ความสัมพันธ์ (Relationships) หมายถึง ความสัมพันธ์ระหว่างเอนทิตี้ เช่น ความสัมพันธ์ระหว่างเอนทิตี้นักศึกษา และเอนทิตี้คณะวิชา เป็นลักษณะว่า นักศึกษาแต่ละคนเรียนอยู่คณะวิชาใดคณะวิชาหนึ่ง เป็นต้น ความสัมพันธ์ระหว่างเอนทิตี้ จึงอาจแบ่งออกเป็น 3 ประเภท คือ

ความสัมพันธ์แบบหนึ่งต่อหนึ่ง (One-to-one Relationships)

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

ความสัมพันธ์แบบหนึ่งต่อกลุ่ม (one-to-many Relationships)

      ความสัมพันธ์แบบหนึ่งต่อกลุ่ม (one-to-many Relationships) เป็นการแสดงความสัมพันธ์ของข้อมูลในเอนทิตี้หนึ่ง ที่มีความสัมพันธ์ข้อมูลหลาย ๆ ข้อมูล ในอีกเอนทิตี้หนึ่ง ตัวอย่าง เช่น ผู้เช่า 1 คนสามารถเช่าหนังสือได้เพียง 1 เล่มหรือ 1 ชุด แต่หนังสือรหัสเดียวกันสามารถมีผู้เช่ามากกว่า 1 คน เพราะมีหนังสือให้เช่ามากกว่า 1 เล่ม หรือมากกว่า 1 ชุด

      จากรูปที่ 1.2 ความสัมพันธ์ของข้อมูลในเอนทิตี้หนังสือไปยังข้อมูลในเอนทิตี้ผู้เช่าเป็นแบบหนึ่งต่อกลุ่ม (1:m) ซี่งหมายความว่า หนังสือแต่ละเล่มจะสามารถให้ผู้เช่าในความเช่ายืมได้หลายคน ในทางตรงกันข้าม ความสัมพันธ์ของข้อมูลในเอนทิตี้หนังสือ จะเป็นแบบหนึ่งต่อหนึ่ง ซึ่งหมายความว่าผู้เช่าจะเช่าหนังสือได้เพียงหนึ่งเล่มเท่านั้น

ความสัมพันธ์แบบกลุ่มต่อกลุ่ม (Many-to-many Relationships)

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