การบ้านบทที่ 4 วันที่ 24 พ.ย. 53
1. โครงสร้างข้อมูลเชิงสัมพันธ์ประกอบด้วยอะไรบ้าง จงอธิบาย
ตอบ โครงสร้างข้อมูลเชิงสัมพันธ์ ประกอบไปด้วย Attribute ที่แสดงคุณสมบัติของ Relation โดย Relation ต่าง ๆ ได้ผ่านกระบวนการทำให้เป็นบรรทัดฐาน(Normalized) ในระหว่างการออกแบบ เพื่อลดความซ้ำซ้อนของข้อมูล
2. คุณสมบัติของการจัดเก็บข้อมูลของรีเลชั่น มีอะไรบ้าง
ตอบ 1. ข้อมูลในแต่ละแถวจะไม่ซ้ำกัน
2. การเรียงลำดับของข้อมูลในแต่ละแถวไม่เป็นสาระสำคัญ
3. การเรียงลำดับของ Attribute จะเรียงลำดับก่อนหลัง อย่างไรก็ได้
4. ค่าของข้อมูลในแต่ละ Attribute ของ Tuple หนึ่ง ๆ จะบรรจุข้อมูลได้เพียงค่าเดียว
5. ค่าของข้อมูลในแต่ละ Attribute จะบรรจุค่าของข้อมูลในประเภทเดียวกัน
3. รีเลชั่นประกอบด้วยคีย์ประเภทต่าง ๆ อะไรบ้าง จงอธิบายพร้อมยกตัวอย่างประกอบประเภทคีย์ ดังกล่าว
ตอบ 1. คีย์หลัก (Primary Key) เป็น Attribute ที่มีคุณสมบัติของของมูลที่มีค่าไม่ซ้ำกัน หรือเป็นเอกลักษณ์ เช่น รหัสประจำตัวนักศึกษา สามารถเป็นคีย์หลักได้ เนื่องจากนักศึกษาทุกคนจะมีรหัสประจำตัวไม่เหมือนกัน
2. คีย์ผสม (Composite Key) เป็นการนำฟิลด์ 2 ฟิลด์ขึ้นไปมารวมกัน เพื่อให้มีคุณสมบัติเป็นคีย์หลัก เช่น รีเลชั่นใบส่งของ (Invoice) มีคีย์ คือ Attribute เลขที่ใบส่งของ (InvNo) และ Attribute รหัสสินค้า (ProdNo) เพราะใบส่งของแต่ละใบจะมีรายการสินค้าบรรจุในใบส่งของได้มากกว่า 1 รายการ ดังนั้นถ้าใช้ Attribute เลขที่ใบส่งของเพียงตัวเดียวจะไม่สามารถแยกความแตกต่างแต่ละ Tuple ได้
3. คีย์คู่แข่ง (Candidates Key) คือ Attribute ที่สามารถถูกกำหนดให้เป็นคีย์ในรีเลชั่นมากกว่า 1 Attribute เช่น รีเลชั่นพนักงาน สามารถเลือก Attribute ที่สามารถใช้คีย์ได้ 2 ทางเลือก คือ
ทางเลือกที่ 1 ให้ Attribute รหัสพนักงานเป็นคีย์
ทางเลือกที่ 2 ให้ Attribute เลขที่บัตรประชาชนเป็นคีย์
4. คีย์นอก (Foreign Key) เป็นคีย์ที่แสดงความสัมพันธ์ระหว่างรีเลชั่น อาจเป็น Attribute หรือกลุ่มของ Attribute ในรีเลชั่นหนึ่ง ซึ่งค่าของ attribute นั้นจะเป็นคีย์หลักของอีกรีเลชั่นหนึ่ง หรือรีเลชั่นเดียวกัน หรืออาจเป็นค่าว่าง (Null Value) ก็ได้
4. Null หมายถึงอะไรใน Relational Database
ตอบ Null หมายถึง ไม่ทราบค่าข้อมูลที่แน่ชัด สามารถกำหนดให้ค่าของคอลัมน์ใด ๆ เป็น Null ได้ ยกเว้นคอลัมน์ที่เป็นคีย์หลัก เพราะจะไม่สามารถนำคีย์หลักมาใช้เข้าถึงข้อมูลในแต่ละแถวได้
5. เหตุใดจึงต้องมีการนำ Integrity rule มาใช้ในฐานข้อมูล
ตอบ เพื่อเป็นการอ้างอิงข้อมูลจากความสัมพันธ์อื่น ซึ่งค่าของคีย์นอกต้องมาจาก คีย์หลักจากข้อมูลที่เกี่ยวข้องเท่านั้น
6. ความสัมพันธ์ระหว่างรีเลชั่นมีกี่ประเภท อะไรบ้าง จงยกตัวอย่างประกอบ
ตอบ ความสัมพันธ์ระหว่างรีเลชั่น แบ่งออกเป็น 3 ประเภท คือ
1. ความสัมพันธ์แบบหนึ่งต่อหนึ่ง เช่น อาจารย์หนึ่งคนสามารถเป็นคณะบดีได้หนึ่งคณะ ในขณะเดียวกัน คณะแต่ละคณะจะมีอาจารย์ที่เป็นคณะบดีได้หนึ่งคน
2. ความสัมพันธ์แบบหนึ่งต่อกลุ่ม เช่น อาจารย์หนึ่งคนจะสามารถมีนักศึกษาที่ปรึกษาได้หลายคน ในขณะเดียวกันนักศึกษาแต่ละคนต้องมีอาจารย์ที่ปรึกษาคนใดคนหนึ่งเท่านั้น
3. ความสัมพันธ์แบบกลุ่มต่อกลุ่ม เช่น นักศึกษาหนึ่งคนสามารถลงทะเบียนเรียนได้หลายวิชา ในขณะเดียวกัน แต่ละรายวิชาสามารถรับนักศึกษาที่ลงทะเบียนได้หลายคน
ไม่มีความคิดเห็น:
แสดงความคิดเห็น