วันเสาร์ที่ 11 ธันวาคม พ.ศ. 2553

วิชา ฐานข้อมูลเบื้องต้น การบ้านบทที่ 5 ประจำวันที่ 8 ธ.ค. 2553

1. องค์ประกอบที่สำคัญของแบบจำลองอี อาร์ มีอะไรบ้าง
   ตอบ  ส่วนประกอบสำคัญของแบบจำลอง อีอาร์ มี 3 ส่วนคือ
            1. เอนทิตี ( Entity )
           
2. แอทริบิวต์ ( Attribute )
           
3. ความสัมพันธ์ระหว่างเอนทิตี
ซึ่งมีรายละเอียดเกี่ยวกับความหมายของแต่ละส่วนประกอบดังนี้
1.เอนทิตี้
    เอนทิตี้ หมายถึง สิ่งที่สนใจสามารถระบุได้ในความเป็นจริง และต้องการเก็บรวบรวมข้อมูลที่เกี่ยวข้องด้วยไว้ในฐานข้อมูล ตัวอย่างของเอนทิตี้ประเภทต่างๆ เช่น บุคคล สถานที่ สิ่งของ หรือเหตุการณ์ มีดังนี้
        - บุคคล     ได้แก่ พนักงาน ผู้ป่วย และ นักศึกษา เป็นต้น
        - สถานที่    ได้แก่ เขต จังหวัด และ ภาค เป็นต้น
        - วัตถุ        ได้แก่ รถยนต์ อาคาร และ เครื่องจักร เป็นต้น
        - เหตุการณ์ ได้แก่ การลงทะเบียนเรียน ความชำนาญ เป็นต้น
      ในอี-อาร์ไดอะแกรม ใช้สัญลักษณ์รูสี่เหลี่ยมผืนผ้า แทนหนึ่งเอนทิตี้โดยมีชื่อเอนทิตี้นั้นกำกับอยู่ภายใน เอนทิตี้สามารถจำแนกได้ 2 ประเภท คือ เอนทิตี้ปกติ(Regular Entity) และ เอนทิตี้อ่อนแอ (Weak Entity)
2. Attribute
        Attribute หมายถึง ข้อมูลที่แสดงคุณสมบัติหรือคุณลักษณะของเอนทิตี้หรือความสัมพันธ์ใน อี-อาร์ไดอะแกรมใช้สัญลักษณ์วงรี ที่มีชื่อของ Attribute นั้นกำกับอยู่ภายในแทนหนึ่ง Attribute และเชื่อมต่อกับเอนทิตี้ที่มี Attribute นั้นด้วยเส้นตรงAttribute สามารถจำแนกได้เป็น 6 ประเภท คือ Simple Attribute ,Composite Attribute ,Key Attribute ,single Attribute, Multi-Valued Attribute และ Derived Attribute

3. ความสัมพันธ์
        ความสัมพันธ์ หมายถึง เอนทิตี้ที่แสดงความสัมพันธ์ระหว่างสองเอนทิตี้ขึ้นไป ซึ่งโดยทั่วไปเป็นความสัมพันธ์ระหว่างเอนทิตี้ที่มี Attribute ร่วมกัน โดยแต่ละความสัมพันธ์จะถูกระบุด้วยชื่อที่อธิบายถึงความสัมพันธ์นั้นๆ เช่น ความสัมพันธ์สังกัด แสดงความสัมพันธ์ระหว่างเอนทิตี้หนังสือและเอนทิตี้ประเภทหนังสือ

2. จงอธิบายความหมายและสัญลักษณ์ของคำต่อไปนี้
ตอบ     2.1 เอนทิตี หมายถึง ชื่อของสิ่งใดสิ่งหนึ่ง เปรียบเสมือนคำนาม  อาจได้แก่  คน  สถานที่ 
สิ่ง ของ  การกระทำ  ซึ่งต้องการจัดเก็บข้อมูลไว้  เช่น เอนทิตี้ของลูกค้า เอนทิตี้ของพนักงาน เป็นต้น  บางเอนทิตี้อาจจะไม่มีความหมายเลย  หากขาดเอนทิตี้อื่นในฐานข้อมูล  เช่น  เอนทิตี้ประวัตินักสึกษาจะไม่มีความหมาย  หากปราศจากเอนทิตี้นักศึกษา  เพราะจะไม่ทราบว่าเป็นประวัติของนักศึกษาคนใด
                        2.2 รีเลชันชิพ คือ ความสัมพันธ์ซึ่งเป็นลักษณะการเกี่ยวพันกัน ระหว่างเอนทิตี้หนึ่งกับตัวมันเองหรือ  เอนทิตี้อื่น   อาจเป็นความสัมพันธ์ที่มากกว่า  2  เอนทิตี้ก็ได้  เช่น  แผนกจัดซื้อทำการสั่งซื้อสินค้าหรือวัตถุดิบ
                        2.3 แอตทรีบิวต์ คือ กลุ่ม ของค่าความจริงใด ๆ ที่เป็นรายละเอียดของเอนทิตี้ซึ่งแสดงลักษณะ และ        คุณสมบัติของเอนทิตี้  ทำให้เข้าใจเอนทิตี้ได้ลึกซึ้งยิ่งขึ้น  และเป็นสิ่งที่ไม่สามารถแตกย่อยลงไปได้อีกโดยไม่เสียความหมายไป  เช่น  รหัสสินค้า, สถานที่เก็บชื่อสินค้า, ราคา  นอกจากนั้นยังมีการระบุด้วยว่าแอตทริบิวต์ใดเป็นคีย์กำหนดกฎข้อบังคับต่าง ๆ ของเอนทิตี้และรีเลชันชิป
                        2.4 คอมโพสิตแอทริบิวต์  หมาย ถึง แอททริบิวต์ที่ประกอบด้วยแอททริบิวต์หลายตัวมารวมกัน  และให้ความหมายอย่างหนึ่งอย่างใด เช่น ที่อยู่  ประกอบด้วยแอททริบิวต์ย่อยคือ บ้านเลขที่  ถนน  ตำบล  อำเภอ  จังหวัด เป็นต้น
                        2.5 แอทริบิวต์ที่ทีหลายค่า คือ แอททริบิวต์ที่มีค่าได้มากกว่า  1  ค่า  เช่น  บุคคลหนึ่งสามารถมีวุฒิการศึกษาได้มากกว่า  1  วุฒิ เขียนแทนด้วยสัญลักษณ์เส้นคู่แล้วเชื่อมโยงไปยังแอททริบิวต์


3. คอมโพสิตเอนทิตี้มีความสำคัญอย่างไรในการออกแบบฐานข้อมูลเชิงสัมพันธ์
   ตอบ    เอนทิตีที่สร้างขึ้นเพื่อแปลงความสัมพันธ์ระหว่างแบบกลุ่มต่อกลุ่มให้เป็นหนึ่งต่อกลุ่ม โดยนำเอาคีย์หลักของทั้งสองเอนทิตีมาเป็นแอททริบิวต์ของเอนทิตีใหม่   เช่น  ความสัมพันธ์ระหว่างสินค้ากับใบสั่งซื้อเป็นเแบบกลุ่มต่อกลุ่ม คือใบสั่งซื้อหนึ่งใบมีสินค้าได้หลายรายการ และสินค้าแต่ละรายการถูกสั่งซื้อโดยใบสั่งซื้อหลาย ๆ ใบ  ความสัมพันธ์แบบกลุ่มต่อกลุ่มก่อให้เกิดความซ้ำซ้อนของข้อมูลจึงลดความซ้ำซ้อน โดยทำให้ความสัมพันธ์ระหว่างเอนทิตีแบบกลุ่มต่อกลุ่ม เป็นแบบหนึ่งต่อกลุ่ม โดยการสร้างคอมโพสิตเอนทิตี
4. เอนทิตีอ่อนแอคืออะไร มีคุณสมบัติอย่างไร
   ตอบ เอนทิตี้อ่อนแอ หมายถึง เอนทิตี้ที่มีการคงอยู่เกี่ยวข้องกับเอนทิตี้อื่นในระบบฐานข้อมูล ดดยเอนทิตี้อื่นที่มีความสัมพันธ์กับเอนทิตี้นี้เรียกว่า Parent Entity หรืออาจกล่าวได้ว่าเอนทิตี้อ่อนแอจะไม่มีความหมายหรือไม่สามารถปรากฏในฐานข้อมูลได้ หากปราศจาก Parent Entity ที่มีความสัมพันธ์เกี่ยวข้องกันซึ่งสมาชิกของเอนทิตี้อ่อนแอจะสามารถมีคุณสมบัติ Identity ได้ก็ต่อเมื่ออาศัย Attribute ใด Attribute หนึ่งของเอนทิตี้ปกติมาประกอบกับ Attribute ของเอนทิตี้นั้นๆ ในอี-อาร์ไดอะแกรมใช้สัญลักษณ์รูปสี่เหลี่ยมผืนผ้าสองรูปซ้อนกันแทนหนึ่งเอนทิตี้อ่อนแอ โดยชื่อของเอนทิตี้อ่อนแอนั้นๆกำกับอยู่ภายใน

 

5. จากตารางข้อมูลที่กำหนดให้
5.1 จงเขียน E-R Diagram แสดงความสำคัญของตาราง
 ขั้นที่ 1 ศึกษาข้อกำหนดของระบบงาน
- ข้อมูลหนังสือแต่ละรายการ ข้อมูลที่จัดเก็บประกอบด้วย รหัสหนังสือ, ชื่อหนังสือ, รหัสผู้แต่ง, รหัสสำนักพิมพ์
- ข้อมูลผู้แต่งหนังสือ ข้อมูลที่จัดเก็บประกอบด้วย รหัสผู้แต่ง , ชื่อผู้แต่ง
- ข้อมูลสำนักพิมพ์ ข้อมูลที่จัดเก็บประกอบด้วย รหัสสำนักพิมพ์ , ชื่อสำนักพิมพ์, ที่อยู่, โทรศัพท์ 
 ขั้นที่ 2 กำหนดเอนทิตี้ (Entity)
1. ผู้แต่ง  
2.หนังสือ
3.สำหนักพิมพ์
 ขั้นที่ 3 กำหนดความสัมพันธ์ของแต่ละเอนทิตี้ (Entity)
- หนังสือแต่ละเล่มจะถูกพิมพ์จากสำนักพิมพ์ใดสำนักพิมพ์หนึ่งเท่านั้นแต่ละสำนักพิมพ์สามารถจัดพิมพ์หนังสือได้หลายรายการ
- หนังสือแต่ละเล่มจะมีผู้แต่งได้เพียงคนเดียวเท่านั้นแต่ผู้แต่งแต่ละคนสามารถจะแต่งหนังสือได้หลายเล่ม
                        2.6 ดีไรฟต์แอทริบิวต์ คือ  แอททริบิวต์ที่ได้ค่ามาจากการคำนวณของแอททริบิวต์อื่น  เช่น อายุได้มาจาก วันเดือนปีเกิด  แทนด้วยสัญลักษณ์เส้นประที่เชื่อมโยงไปยังแอททริบิวต์

5.2 จงบอกว่าแต่ละตารางมี Field ใดเป็น Primary Key
ตอบ   - ในตารางผู้แต่งจะมี Field รหัสผู้แต่ง เป็น Primary Key
           - ในตารางสำนักพิมพ์จะมี Field รหัสสำนักพิมพ์ เป็น Primary Key
           - ในตารางหนังสือจะมี Field รหัสหนังสือ เป็น Primary Key

5.3 สำหรับตารางที่มี Foreign Key จงบอกว่าเป็น Field ใดและมีความสัมพันธ์กับ Field ใดในตารางใด
ตอบ   จากฐานข้อมูลของระบบหนังสือจะประกอบไปด้วยตาราง 3 ตาราง ซึ่งแต่ละตารางจะมี Field ที่เชื่อมโยงถึงกันทั้ง 3 ตาราง
          - ตารางผู้แต่ง (รหัสผู้แต่ง, ชื่อผู้แต่ง)
          - ตารางสำนักพิมพ์ (รหัสสำนักพิมพ์, ชื่อสำนักพิมพ์, โทรศัพท์)
          - ตารางหนังสือ (รหัสหนังสือ, ชื่อหนังสื่อ, รหัสผู้แต่ง, รหัสสำนักพิมพ์