"วิชาฐานข้อมูลเบื้องต้น (4122201) ตอนเรียน A1*
1.โครงสร้างข้อมูลเชิงสัมพันธ์ประกอบด้วยอะไรบาง จงอธิบายตอบ เอนทิตี้ (Entity) หมายถึง ชื่อของสิ่งใดสิ่งหนึ่ง ได้แก่ คน สถานที่ สิ่งของ การกระทำ ซึ่งต้องการจัดก็บข้อมูลไว้ เช่น เอนทิตี้ลูกค้า เอนทิตี้พนักงาน
- เอนทิตี้ชนิดอ่อนแอ (Weak Entity) เป็นเอนทิตี้ที่ไม่มีความหมาย หากขาดเอนทิตี้อื่นในฐานข้อมูล
แอททริบิวต์ (Attribute) หมายถึง รายละเอียดข้อมูลที่แสดงลักษณะและคุณสมบัติของเอนทิตี้หนึ่ง ๆ เช่น เอนทิตี้นักศึกษา ประกอบด้วย - แอทริบิวต์รหัสนักศึกษา
- แอททริบิวต์ชื่อนักศึกษา
- แอททริบิวต์ที่อยู่นักศึกษา
********************************************************************
ตอบ 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
**วันจันทร์ ที่ 29 พฤศจิกายน 2553**
********************************************************************
6. ความสัมพันธ์ระหว่างรีเลชั่นมีกี่ประเภท อะไรบ้าง จงยกตัวอย่างประกอบ
ตอบ มี 2 ประเภท คือ
1. รีเลชั่นหลัก ( Base Relation )
เป็นรีเลชั่นที่ถูกกำหนดขึ้นเพื่อเก็บข้อมูลเพื่อนำข้อมูลไปใช้ เมื่อมีการสร้างรีเลชั่นในภาษาสำหรับนิยามข้อมูล ( DDL ) เช่น SQL คำสั่ง CREATE TABLE เป็นการสร้างรีเลชั่นหลัก หลังจากนั้นก็จะทำการเก็บข้อมูลเพื่อการเรียกใช้ข้อมูลในภายหลัง รีเลชั่นหลักจะเป็นตารางที่มีการเก็บข้อมูลจริงไว้
2. วิว ( View )
เป็นรีเลชั่นที่ถูกสร้างขึ้นตามความต้องการใช้ข้อมูลของผู้ใช้แต่ละคน เพราะผู้ใช้แต่ละคนในฐานข้อมูลอาจต้องการใช้ข้อมูลในลักษณะที่แตกต่างกัน จึงทำการกำหนดวิวของตนเองขึ้นจากรีเลชั่นหลักขึ้นมาต่างหาก เพื่อความสะดวกในการเรียกใช้ข้อมูล และช่วยในการรักษาความปลอดภัยของฐานข้อมูลทำได้ง่ายขึ้น