วันศุกร์ที่ 26 พฤศจิกายน พ.ศ. 2553

วิชาฐานข้อมูล

การบ้านบทที่ 4 ประจำวันที่ 24 พ.ย. 53


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

2. คุณสมบัติในการจัดเก็บข้อมูลของรีเลชั่นมีอะไรบ้าง
- 1. รีเลชั่นต้องมีชื่อกำกับ แต่ละชื่อต้องแตกต่างกัน ซ้ำกันไม่ได้
   2. แต่ละแอตตริบิวต์ของรีเลชั่นจะบบรจุได้เพียงค่าเดียว (Single value)
   3. ชื่อในแต่ละแอตตริบิวต์ต้องแตกต่างกัน ชื่อจะซ้ำกันไม่ได้
   4. ค่าของข้อมูลในแอตตริบิวต์เป็นไปตามข้อกำหนดของโดเมนในแอตตริบิวต์นั้นๆ
   5. การเรียงลำดับของแต่ละแอตตริบิวต์ไม่มีความสำคัญใดๆ
   6. แต่ละทูเพิลต้องมีความแตกต่างกัน จะไม่มีทูเพิลที่ซ้ำกัน
   7. การเรียงลำดับของทูเพิลไม่มีความสำคัญใดๆ  

3. รีเลชั่นประกอบด้วยคีย์ประเภทต่าง ๆ อะไรบางจงอธิบาย พร้อมยกตัวอย่างประกอบประเภทคีย์ดังกล่าว
ประเภทของคีย์ (Relation keys)
    ใน ฐานข้อมูลจะมีข้อมูลอยู่เป็นจานวนมาก โดยเฉพาะฐานข้อมูลขนาดใหญ่ ก็จะมีข้อมูลจานวนมากที่มีความคล้ายคลึงกันหรือแตกต่างกันออกไป ทาให้การแยกแยะหรือจัดการข้อมูลทาได้ยาก ดังนั้นจึงกาหนดคีย์ (keys) ขึ้นมาคีย์ คือ แอททริบิวต์หรือกลุ่มของแอททริบิวต์ ที่ใช้ในการระบุค่าต่าง ๆ ของทูเพิล เพื่อความเป็นเอกลักษณ์ (unique) หรือเป็นสิ่งที่ใช้กาหนดความเป็นเอกลักษณ์ของทูเพิล โดยคีย์มีหลายประเภท ดังนี้
คีย์หลัก (Primary key)
            หมายถึง คีย์ที่มีคุณสมบัติในการระบุค่าต่าง ๆ ของแต่ละทูเพิลในรีเลชั่นได้ เป็นเอกลักษณ์(Unique) หรือมีค่าไม่ซ้ำกัน และมีเป็นค่าว่าง (Null) ไม่ได้ คีย์หลักจะประกอบด้วยหนึ่งแอททริบิวต์หรือหลายแอททริบิวต์ก็ได้
คีย์คู่แข่ง (Candidate key)
            หมายถึง ในรีเลชั่นหนึ่ง ๆ มีคีย์ที่สามารถเป็นคีย์หลักได้มากกว่าหนึ่ง แอททริบิวต์ แต่เมื่อแอททริบิวต์ใดที่ถูกเลือกเป็นคีย์หลักแล้ว คีย์คู่แข่งที่เหลืออยู่ก็จะมีชื่อใหม่เรียกว่า คีย์ส้ารอง (secondary key หรือAlternate key)

คีย์สำรอง (Secondary key หรือ Alternate key)
            หมายถึง คีย์คู่แข่งที่ไม่ได้ถูกเลือกเป็นคีย์หลัก โดยคีย์สำรองจะไม่มีคุณสมบัติ ความเป็นเอกลักษณ์ ถ้ามีการค้นหาข้อมูลจะได้ข้อมูลมากกว่าหนึ่งข้อมูล เพราะคีย์สำรองมีค่าซ้ำได้

คีย์นอก(Foreign key)
            หมายถึง แอททริบิวต์หรือกลุ่มของแอททริบิวต์ในรีเลชั่นหนึ่ง ที่ใช้ในการอ้างอิงถึง แอททริบิวต์เดียวกันในอีกรีเลชั่นหนึ่งที่เป็นคีย์หลัก คีย์นอกเป็นคีย์ที่ใช้ในการเชื่อมความสัมพันธ์ระหว่างรีเลชั่น ของฐานข้อมูลเชิงสัมพันธ์ ดังนั้นในการเปลี่ยนแปลงค่าของคีย์นอกหรือคีย์หลักที่เชื่อมความสัมพันธ์กัน อยู่จึงเป็นเรื่องที่ต้องระมัดระวังเป็นอย่างมาก ซึ่งในการจัดการฐานข้อมูลจะต้องมีกฏเกณฑ์และเงื่อนไข เพื่อท้าให้ฐานข้อมูลถูกต้องตลอดเวลา และขึ้นอยู่กับ DBMS ที่สามารถควบคุมความถูกต้องของฐานข้อมูลนั้น ๆ ด้วย



4. Null หมายถึงอะไรใน Relational Database
     - ค่าว่าง (Null Values)
              ค่าของ Attribute อาจจะเป็นค่าว่าง (Null) คือ ไม่มีค่าหรือยังไม่ทราบค่าได้ ตัวอย่างเช่น
จำนวนไข่ของนกกระจอกเทศ จะสามารถบอกได้เมื่อนกกระจอกเทศออกไข่แล้ว แต่ยังไม่ทราบค่า ใน
ขณะที่จำนวนไข่ของช้างนั้นไม่มีค่า เป็นต้น
5. เหตุใดจึงต้องมีการนำ Integrity rule มาใช้ในฐานข้อมูล
     - สามารถแบ่งเป็น 2 ส่วน ดังนี้
  การกำหนด Entity Integrity Rule เป็นการกำหนด Integrity Rule ขึ้นเพื่อควบคุมค่าของ Attribute ต่างๆ ให้มีค่าเป็นไปตามที่กำหนด ดังเช่น ตัวอย่างคำสั่ง SQL
  การกำหนด Referential Integrity Rule เป็นการกำหนด Integrity Rule ขึ้นเพื่อควบคุมความถูกต้องในการอ้างถึงข้อมูลระหว่าง Table ต่างๆ ดังเช่น ตัวอย่างคำสั่ง SQL
6. ความสัมพันธ์ระหว่างรีเลชั่นมีกี่ประเภท อะไรบ้าง จงยกตัวอย่างประกอบ
     - มี 2 ประเภท คือ
1. รีเลชั่นหลัก (Base Relation)
    เป็นตารางที่ใช้ในการเก็บข้อมูลจริงเพื่อนำข้อมูลไปใช้ ถูกสร้างด้วยภาษาสำหรับนิยามข้อมูล (DDL) เช่น ภาษา SQL คำสั่ง Create Table เป็นการสร้าง Relation หลัก
2. วิว (View)
     เป็น ตารางที่ถูกสร้างขึ้นตามความต้องการของผู้ใช้แต่ละคน โดยทำการวิวจากรีเลชั่นหลัก ช่วยให้การรักษาความปลอดภัยของฐานข้อมูลทำได้โดยง่าย เพราะฉะนั้นวิวจึงเป็นตารางสมมติหรือตารางที่แปลค่ามา (Vertual Table หรือ Derives Table) จะไม่ถูกจัดเก็บจริง ๆ ในระบบ

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

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