วันพุธที่ 21 ธันวาคม พ.ศ. 2565

ผลการเรียนรู้ครั้งที่ 4 (รูปแบบบรรทัดฐานที่ 3 (3NF)" Function Dependency (FDs))

ผลการเรียนรู้ครั้งที่ 4

 "รูปแบบบรรทัดฐานที่ 3 (3NF)" Function Dependency (FDs)


"รูปแบบบรรทัดฐานที่ 3 (3NF)" Function Dependency (FDs)

ฟังก์ชั่นการขึ้นต่อกัน (Functional Dependency : FD) ฟังก์ชั่นการขึ้นต่อกัน เป็นการอธิบายถึงความสัมพันธ์ระหว่างค่าของ แอตทริบิวต์ ที่อยู่ใน รีเลชั่นเดียวกัน โดยแอตทริบิวต์หรือกลุ่มแอตทริบิวต์ที่สามารถระบุค่าของแอตทริบิวต์อื่น ๆ ในทูเพิล เดียวกันได้ จะเรียกว่า "ดีเทอร์มิแนนท์" (Determinant) และแอตทริบิวต์ ที่ถูกระบุ ค่าถึงเรียกว่า "ดีเพนเดนซี่" (Dependency) ตัวอย่างเช่น รีเลชั่นนักศึกษาที่มี รหัสนักศึกษา เป็นค่าคีย์จะ สามารถระบุค่าอื่น ๆ ได้เช่น เมื่อระบุรหัสนักศึกษา จะได้ค่าในแอตทริบิวต์ ชื่อ, สาขา, ห้อง และชั้นปี ออกมา เป็นต้น การเขียนฟังก์ชั่นการขึ้นต่อกัน สามารถเขียนโดยใช้ สัญลักษณ์

👉ตัวอย่างเช่น Determinant --> Dependency รหัสนักศึกษา --> ชื่อ, สาขา, ห้อง, ชั้นปีจากตัวอย่างด้านบน รหัสนักศึกษา คือ ดีเทอร์ มิแนนท์ และส่วน ชื่อ, สาขา, ห้อง, ชั้นปี คือ ดีเพนเดนซี่ ในการพิจารณาว่ารีเลชั่นว่าอยู่ใน รูปแบบนอร์มอลระดับใดนั้น จะพิจารณาจากฟังก์ชั่นการ ขึ้นต่อกัน

📋ประเภทของฟังก์ชั่นการขึ้นต่อกัน แบ่งออกเป็น 4 ประเภท คือ

1) ฟังก์ชั่นการขึ้นต่อกัน ที่เกิดจาก ความสัมพันธ์ระหว่างดีเทอร์มิแนนท์ และดีเพนเดนซี่ อย่าง ละ 1 ค่า เช่น ความสัมพันธ์ ระหว่าง รหัสนักศึกษา และชื่อนักศึกษา ดังนี้

👉รหัสนักศึกษา --> ชื่อนักศึกษา Std_ID --> Std_Name 

2) ฟังก์ชั่นการขึ้นต่อกัน ที่เกิดจากความสัมพันธ์ระหว่างดีเทอร์มิแนนท์ 1 ค่า กับดีเพนเดนซี่ หลายค่า เช่น ความสัมพันธ์ระหว่าง รหัสนักศึกษา และข้อมูลของนักศึกษา (เช่น ชื่อ, นามสกุล, วันเดือนปีเกิด เป็นต้น) ดังนี้ 👉รหัสนักศึกษา --> ชื่อ, นามสกุล, วันเดือนปีเกิด Std_ID --> FirstName, LastName, BirthDate 

3) ฟังก์ชั่นการขึ้นต่อกัน ที่มีความสัมพันธ์ 2 ทาง โดยที่ทั้งดีเทอร์มิแนนท์และ ดีเพนเดนซี่ ต่างก็สามารถทำหน้าที่ของแต่ละฝ่ายได้ เช่น ความสัมพันธ์ระหว่าง รหัสนักศึกษา และ เลขบัตรประชาชน ที่ต่างก็ไม่มีข้อมูลซ้ำกันเลย และสามารถทำหน้าที่เป็นดีเทอร์มิแนนท์ เช่นเดียวกัน ดังนี้ 

👉รหัสนักศึกษา --> เลขบัตรประชาชน Std_ID --> Std_Pin เลขบัตรประชาชน --> รหัสนักศึกษา Std_Pin --> Std_ID รหัสนักศึกษา <--> เลขบัตรประชาชน Std_ID <--> Std_Pin 


4) ฟังก์ชั่นการขึ้นต่อกัน ที่ต้องใช้ดีเทอร์มิแนนท์ มากกว่า 1 ค่าเพื่อระบุถึงดีเพนเดนซี่ เช่น ความสัมพันธ์ระหว่าง รหัสนักศึกษา, รหัสวิชา และ ห้องเรียน ดังนี้

 👉รหัสนักศึกษา, รหัสวิชา --> ห้องเรียน Std_ID, Course_ID --> Room 

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

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