More Related Content Similar to 04 the entities relationship model Similar to 04 the entities relationship model (7) More from Opas Kaewtai (7) 04 the entities relationship model4. คุณสมบัติของรีเลชัน (Table)
• โครงสร้างตารางมีรูปแบบ 2 มิติ ประกอบไปด้วย คอลัม (Columns) และ
แถว (Rows)
• แต่ละแถว (Row) แสดงหนึ่ง Entity
• แต่ละคอลัม (Column) แสดง attribute และแต่ละคอลัมจะต้องมี ชื่อที่
เฉพาะเจาะจง
• ส่วนที่ซ้อนกันระหว่างแถวและคอลัมเป็นส่วนที่แสดงข้อมูล (data)
5. คุณสมบัติของรีเลขั่น (Table) (Cont.)
• ข้อมูลที่อยู่ภายใต้คอลัมเดียวกันจะต้องอยู่ในรูปแบบ (data format)
เดียวกัน เช่น คอลัมที่เก็บข้อมูลรายได้ประจำวันเป็นตัวเลข ข้อมูลที่อยู่ภายใต้
คอลัมนั้นของทุกๆ แถวจะต้องเป็นตัวเลขเช่นเดียวกัน
• แต่ละคอลัม (Column) มีขอบเขตข้อมูลหรือที่เรียกว่า attribute domain
• ลำดับของแถว (Rows) และคอลัม (Column) ไม่มีความสำคัญต่อ DBMS
• แต่ละ Table ต้องมี attribute หรือกลุ่มของ attribute ที่มีข้อมูลไม่ซ้ำกันใน
แต่ละแถว เพื่อใช้ในการจำแนกข้อมูลในแต่ละแถวได้
7. Keys
• คีย์ (Keys) คือ attribute หรือกลุ่มของ attribute ที่สามารถบ่งบอกถึง
attribute อื่นๆ ในแถวเดียวกันของข้อมูลได้
• เช่น ในตารางฐานข้อมูลทะเบียนนักศึกษา รหัสนักศึกษาถือเป็นคีย์ที่สำคัญใน
การแยกแยะข้อมูลของนักศึกษาแต่ละคนได้
• หรือเรียกอีกอย่างว่า รหัสนักศึกษาเป็นคีย์หลัก (Primary Key) ของตาราง
(Table) ดังกล่าว
• ดังนั้นการคัดเลือก attribute เพื่อมาเป็นคีย์จึงมีความสำคัญมาก
8. Keys (Cont.)
• การเลือก attribute ใดๆ ใน ตารางความสัมพันธ์ (Table) มาเป็นคีย์ ต้อง
อาศัยหลักการที่เรียกว่า ดีเทอไมเนชั่น (determination) หรือ การกำหนด
ข้อมูลระหว่างกัน
• A determine B เขียนแทนด้วย A → B หมายถึง ข้อมูล A กำหนด
ข้อมูล B กล่าวคือ เมื่อทราบข้อมูลที่ attribute A แล้วสามารถทราบข้อมูล
ของ attribute B ด้วย
• หรือหากรู้ข้อมูล attribute A แล้ว ทำให้ทราบข้อมูลของ attribute อื่นๆ
นอกเหนือจาก B เช่น C, D, E, F ก็เขียนแทนด้วย A → B, C, D, E, F
9. Keys (Cont.)
• จาก A → B ที่เรียกว่า A กำหนด B เราอาจเรียกได้อีกอย่างว่า ข้อมูล B ขึ้น
ต่อ (Depend) ข้อมูล A
• คีย์ของตารางความสัมพันธ์มีหลายชนิดคือ
– ซูปเปอร์คีย์ (Super Key)
– คีย์คู่แข่ง (Candidate Key)
– คีย์หลัก (Primary Key)
– คีย์รอง (Secondary Key)
– คีย์นอก (Foreign Key)
10. ซูปเปอร์คีย์ (Super Key)
• คือ attribute หรือกลุ่มของ attribute ที่ระบุความแตกต่างของข้อมูลแต่ละ
แถวของตารางความสัมพันธ์ (Table) ได้
stdID stdName stdMajor
5533470001 เยี่ยมยอด ยอดเยี่ยม วิทยาการคอมพิวเตอร์
5533470002 กระเทียมดอง น้ำผึ้ง วิทยาการคอมพิวเตอร์
5533470003 น้ำเหนือ ไหลแรง วิทยาการคอมพิวเตอร์
• stdID
• stdID, stdName
• stdID, stdMojor
• stdID, stdName, stdMojor
11. คีย์คู่แข่ง (Candidate Key)
• คือ ซูปเปอร์คีย์ที่เล็กที่สุด หรือมีจำนวน attribute น้อยที่สุด ที่สามารถระบุ
ความแตกต่างของแต่ละแถวได้
• เราสามารถตรวจสอบเพื่อหาคีย์คู่แข่งได้โดยนำซูปเปอร์คีย์มาตัด attribute
ออกทีละตัว หากตัด attribute ออกไปแล้ว attribute ที่เหลืออยู่สามารถ
บอกความแตกต่างของแถวได้ แสดงว่า attribute นั้นไม่ใช่คีย์คู่แข่ง
(Candidate Key)
stdID stdName stdMajor stdSSN
5533470001 เยี่ยมยอด ยอดเยี่ยม วิทยาการคอมพิวเตอร์ 1234567890132
5533470002 กระเทียมดอง น้ำผึ้ง วิทยาการคอมพิวเตอร์ 1234567890133
5533470003 น้ำเหนือ ไหลแรง วิทยาการคอมพิวเตอร์ 1234567890134
12. คีย์หลัก (Primary Key)
• คือคีย์คู่แข่งที่ถูกเลือกให้เป็นคีย์หลัก เพื่อใช้ในการระบุหรืออ้างถึงข้อมูลที่
ต้องการ
stdID stdName stdMajor stdSSN
5533470001 เยี่ยมยอด ยอดเยี่ยม วิทยาการคอมพิวเตอร์ 1234567890132
5533470002 กระเทียมดอง น้ำผึ้ง วิทยาการคอมพิวเตอร์ 1234567890133
5533470003 น้ำเหนือ ไหลแรง วิทยาการคอมพิวเตอร์ 1234567890134
13. คีย์รอง (Secondary Key)
• คือ คีย์คู่แข่งใดๆ ที่ไม่ได้ถูกเลือกเป็นคีย์หลัก
Quiz?
คีย์หลักและคีย์รองของตารางความสัมพันธ์ในสไลด์ที่ผ่านมา
คือ attribute ใด ?
14. คีย์นอก (Foreign Key)
• คือ attribute ตัวใดตัวหนึ่งหรือหลายตัวรวมกันในตารางความสัมพันธ์
(relation) ซึ่งมีค่าตรงกับคีย์หลักในรีเลชั่นอื่นๆ
stdID stdName majorCode
5533470001 เยี่ยมยอด ยอดเยี่ยม 1
5533470002 กระเทียมดอง น้ำผึ้ง 2
5533470003 น้ำเหนือ ไหลแรง 3
majorCode majorName
1 วิทยาการคอมพิวเตอร์
2 เทคโนโลยีสารสนเทศ
3 เทคโนโลยีอาหาร
15. กฎความคงสภาพ (Integrity Rules)
• ตารางหรือรีเลชั่นต่างๆ ในฐานข้อมูลเชิงสัมพันธ์ มีการอ้างอิงความสัมพันธ์
ของแต่ละรีเลชั่นโดยใช้คีย์ในการอ้างอิง หรือใช้คีย์เป็นตัวเชื่อมโยงระหว่าง
รีเลชั่น
• จึงจำเป็นต้องมีกฎความคงสภาพ เพื่อเป็นการควบคุมความถูกต้องในระบบ
ฐานข้อมูล
• กฎความคงสภาพที่เกี่ยวกับคีย์มีดังต่อไปนี้
– Entity Integrity
– Referential Integrity
16. Entity Integrity
• คีย์หลักของรีเลชั่นต้องมีค่าไม่ซ้ำกัน (Unique) และไม่มีค่าเป็น NULL (หมาย
ถึงข้อมูลนั้นยังไม่สามารถกำหนดได้ ไม่ได้หมายถึงค่าว่าง) หรือ ศูนย์
• การมี Entity Integrity เพื่อให้เกิดความมั่นใจว่าข้อมูลแต่ละรายการจะ
สามารถถูกอ้างอิงถึงได้ และเมื่อรีเลชั่นอื่นต้องการเชื่อมโยงถึงข้อมูลในรีเลชั่น
นี้ก็จะต้องสามารถทำได้
majorCode majorName majorCode majorName
1 วิทยาการคอมพิวเตอร์ 1 วิทยาการคอมพิวเตอร์
2 เทคโนโลยีสารสนเทศ NULL เทคโนโลยีสารสนเทศ
2 เทคโนโลยีอาหาร NULL เทคโนโลยีอาหาร
17. Referential Integrity
• สำหรับรีเลชั่นที่มีคีย์นอก (Foreign Key) ค่าของคีย์นอกจะต้องตรงกันกับค่า
ของคีย์หลักในรีเลชั่นอื่น หรือมีค่าเป็น NULL
stdID stdName majorCode
5533470001 เยี่ยมยอด ยอดเยี่ยม 1
5533470002 กระเทียมดอง น้ำผึ้ง 5
5533470003 น้ำเหนือ ไหลแรง NULL
majorCode majorName
1 วิทยาการคอมพิวเตอร์
2 เทคโนโลยีสารสนเทศ
3 เทคโนโลยีอาหาร