SlideShare une entreprise Scribd logo
1  sur  60
ระบบฐานข้อมูล 
(DATABASE SYSTEMS) 
Relational Database 
อ. เบญจภัค จงหมื่นไวย์ 
โปรแกรมวิชาวิทยาการสารสนเทศ มหาวิทยาลัยราชภัฏนครราชส1ีมา
วัตถุประสงค์ 
1. เข้าใจแนวความคิดของรูปแบบฐานข้อมูลเชิงสัมพันธ์ บอกถึงรูปแบบ 
และลักษณะที่สา คัญของ relational algebra และ relational calculus 
2. เข้าใจหลักการและทฤษฎีทางคณิตศาสตร์ที่อยู่เบื้องหลังของรูปแบบ 
ฐานข้อมูลเชิงสัมพันธ์และการกระทากับข้อมูลที่ต้องการ ที่ถูกจัดเก็บใน 
ฐานข้อมูลได้ 
2
หัวข้อการบรรยาย 
1. คา ศัพท์เกี่ยวกับโมเดลเชิงสัมพันธ์ 
2. คุณสมบัติของ Relation 
 3. แนวคิดของ E.F. Codd 
 4. ค่าว่าง (Null Value) 
 5. Redundant & Duplicate Data 
 6. ชนิดของ Relation 
 7. ประเภทของ Key 
8. ภาษาของฐานข้อมูลเชิงสัมพันธ์ 
9. เหตุผลในการใช้ฐานข้อมูลเชิงสัมพันธ์ 
3 
ปัจจุบัน
บทนา 
“ฐานข้อมูลเชิงสัมพันธ์” คือ การรวมกล่มุของ 
รีเลชัน่ที่ผ่านการนอร์มัลไลเซชัน่โดยแต่ละรีเลชัน่ 
จะมีการกา หนดชื่อที่แตกต่างกัน 
4 
ปัจจุบัน
1. คา ศัพท์เกี่ยวกับโมเดลเชิงสัมพันธ์ 
รีเลชัน่(Relation) 
 ทูเปิล (Tuple) 
 แอททริบิวท์(Attribute) 
 คาร์ดินัลลิตี้(Cardinality) 
 ดีกรี(Degree) 
คีย์หลัก (Primary key) 
 โดเมน (Domain) 
5 
ค.ศ. 1975 ปัจจุบัน
1. คา ศัพท์เกี่ยวกับโมเดลเชิงสัมพันธ์ 
6 
ศัพท์เฉพาะ ศัพท์ทัว่ไป 
รีเลชัน่(Relation) ตาราง (Table) 
ทูเปิล (Tuple) แถว ค(.ศRow) . 1975 หรือ เรคอร์ด (Record) หปัจรืจุอ บัระน 
เบียน 
แอทรบิิวท์(Attribute) คอลัมน์(Column) หรือ ฟิลด์ (Field) 
คาร์ดินัลลิตี้(Cardinality) จา นวนแถว (Number of rows) 
ดีกรี(Degree) จานวนแอทริบิวท์(Number of attribute) 
คีย์หลัก (Primary key) ค่าเอกลักษณ์ (Unique identifier) 
โดเมน (Domain) ขอบข่ายของค่าของข้อมูล (Pool of legal values)
7 
ลูกค้า(รหัสประจา ตัวประชาชน,ชื่อ,นามสกุล,วันเกิด) 
แอททริบิวท์(Attribute) 
รหัสประจำ ตัวประชำชน ชื่อ นำมสกุล วันเกิด 
3102401250111 ชนวัฒน์ศรีสอ้ำน 16/04/2514 
3102401250112 สมชำย รักไทย 6/11/2514 
3102401250113 ไอรดำ สืบสำย 12/06/2514 
เรคคอร์ด (Record) ตาราง (Table) หรือ รีเลชัน่(Relation)
2. คุณสมบัติของ Relation 
1) รีเลชัน่จะต้องมีชื่อกา กับ โดยแต่ละรีเลชัน่จะมีชื่อที่แตกต่างกัน ซ้า กันไม่ได้ 
2) แต่ละแอทรบิิวท์ของรีเลชัน่จะบรรจุค่าเพียงค่าเดียว (Atomic) กล่าวคือ 
ค่าที่บรรจุนั้นจะไม่สามารถแบ่งย่อยต่อไปได้อีก 
3) แต่ละแอทรบิิวท์ในรีเลชัน่นั้น ๆ ต้องมีชื่อแตกต่างกัน จะมีชื่อแอทรบิิวท์ 
ซ้า กันไม่ได้ 
4) ข้อมูลที่บรรจุลงในแต่ละแอทรบิิวท์เป็นไปตามข้อกา หนดของโดเมนที่ 
กา หนดขึ้น 
8
2. คุณสมบัติของ Relation 
5) ข้อมูลในแต่ละทูเปิลต้องมีความแตกต่างกัน จะไม่มีทูเปิลที่ซ้า กัน 
6) การเรียงลา ดับของแต่ละแอทริบิวต์ไม่มีความสา คัญใด ๆ 
7) การเรียงลา ดับของทูเปิลไม่มีความสา คัญใด ๆ แต่ในเชิงปฏิบัติลา ดับ 
มีผลต่อประสิทธิภาพการเข้าถึงข้อมูล 
9
10 
ไม่มี Tuples คู่ใด ๆ เลยที่ซ้า กัน 
รหัสประจา ตัวประชาชน ชื่อ นามสกุล วันเกิด 
3102401250111 ชนวัฒน์ศรีสอ้าน 16/04/2514 
3102401250112 สมชาย รักไทย 6/11/2514 
3102401250111 ชนวัฒน์ศรีสอ้าน 16/04/2514 
3102401250113 ไอรดา สืบสาย 12/06/2514
11 
ลา ดับที่ของ Tuples ไม่มีความสา คัญ 
รหัสประจา ตัวประชาชน ชื่อ นามสกุล วันเกิด 
3102401250113 ไอรดา สืบสาย 12/06/2514 
3102401250111 ชนวัฒน์ศรีสอ้าน 16/04/2514 
3102401250112 สมชาย รักไทย 6/11/2514
12 
ลา ดับที่ของ Attributes ไม่มีความสา คัญ 
ชื่อ รหัสประจา ตัวประชาชน นามสกุล วันเกิด 
ไอรดา 3102401250113 สืบสาย 12/06/2514 
ชนวัฒน์3102401250111 ศรีสอ้าน 16/04/2514 
สมชาย 3102401250112 รักไทย 6/11/2514
13 
ค่าของ Attribute จะเป็นค่าเดี่ยว ๆ (Atomic) 
ชื่อ รหัสประจา ตัวประชาชน นามสกุล วันเกิด 
ไอรดา 3102401250113 
3102401250112 
3102401250111 
สืบสาย 12/06/2514 
ชนวัฒน์3102401250111 ศรีสอ้าน 16/04/2514 
สมศรี 
3102401250112 รักไทย 6/11/2514 
สมชาย
14 
ค่าของข้อมูลในแต่ละ Attribute 
จะบรรจุค่าของข้อมูลประเภทเดียวกัน 
ชื่อ รหัสประจา ตัวประชาชน นามสกุล วันเกิด 
ไอรดา สามหนึ่งศูนย์สองสี่สืบสาย 99999 
ชนวัฒน์3102401250111 ศรีสอ้าน 16/04/2514 
สมชาย 3102401250112 รักไทย สวัสดี
3. กฎ 12 ข้อบนฐานข้อมูลเชิงสัมพันธ์ของคอดด์ 
(Codd’s 12 Relational Database Rules) 
 1. กฎด้านสารสนเทศ (Information) 
 2. กฎการรับประกันการเข้าถึง (Guaranteed Access) 
 3. กฎการปฏิบัติกับค่า Null อย่างมีแบบแผน 
 4. กฎการออนไลน์แคตาล๊อกแบบไดนามิกที่ตัง้อยู่บนพื้นฐานของ 
แบบจา ลองเชิงสัมพันธ์ 
 5. กฎด้านภาษาข้อมูล 
 6. กฎการปรับปรุงวิว 
 7. กฎการแทรก การปรับปรุง และการลบข้อมูลระดับสูง 
 8. กฎความอิสระของข้อมูลเชิงกายภาพ 
15
3. กฎ 12 ข้อบนฐานข้อมูลเชิงสัมพันธ์ของคอดด์ 
 9. กฎความอิสระของข้อมูลเชิงตรรกะ (Logical Data Independence) 
 10. กฎความคงสภาพที่เป็นอิสระ (Integrity Independence) 
 11. กฎการกระจายที่เป็นอิสระ (Distribution Independence) 
 12. กฎปราศจากเวอร์ชัน่ย่อย (Nonsubversion) 
16 
(Codd’s 12 Relational Database Rules)
 ค่าของ Attribute อาจจะเป็นค่าว่าง (Null) 
 คือ ไม่มีค่าหรือยังไม่ทราบค่าได้ 
 ตัวอย่าง เช่น 
 จานวนไข่ของนกกระจอกเทศ จะสามารถบอกได้เมื่อนกกระจอกเทศออกไข่ 
แล้ว แต่ยังไม่ทราบค่า ในขณะที่จา นวนไข่ของช้างนั้นไม่มีค่า เป็นต้น 
17 
4. ค่าว่าง (Null Value)
ตัวอย่าง 
18 
Part Part 
ค.ศ. 1975 ปัจจุบัน 
part Part-description 
P2 Nut 
P1 Bolt 
P3 Washer 
P4 Nut 
part Part-description 
P2 - 
P1 Bolt 
P3 Washer 
P4 Nut 
(a) (b)
 Duplicate data จะเกิดขึ้นก็ต่อเมื่อ Attribute หนึ่งมีค่าของข้อมูลที่ 
เหมือนกันตัง้แต่สองค่าขึ้นไป 
 ข้อมูลจะซ้าซ้อน (Redundant) ก็ต่อเมื่อเราสามารถตัดข้อมูลที่ 
ซ้า ซ้อนนั้นออกไปได้ โดยไม่ทา ให้สูญเสียข้อมูล 
 อาจกล่าวได้ว่า ความซ้าซ้อน (Redundancy) คือ Duplication ที่ไม่ 
จาเป็น 
19 
5. Redundant & Duplicate Data
ตัวอย่าง 
20 
Supplier - Part Supplier - Part 
ค.ศ. 1975 ปัจจุบัน 
Supplier part Part-description 
S2 P1 Bolt 
S7 P6 Bolt 
S2 P4 Nut 
s5 P1 Bolt 
Supplier part Part-description 
S2 P1 Bolt 
S7 P6 Bolt 
S2 P4 Nut 
s5 P1 - 
(a) (b)
ตัวอย่าง 
21 
Supplier – Part-1 Part 
ค.ศ. 1975 ปัจจุบัน 
Supplier# Part-description 
S2 P1 
S7 P6 
S2 P4 
s5 P1 
Part# Part-description 
P1 Bolt 
P6 Bolt 
P4 Nut 
(a) (b)
 Relation หลัก (Base Relation) 
 เป็น Relation ที่ถูกกา หนดขึ้นเพื่อเก็บข้อมูลและเพื่อนาข้อมูลไปใช้ 
เมื่อมีการสร้าง Relation โดยใช้ Data Definition Language เช่น 
ใน SQL คา สัง่ CREATE TABLE เป็นการสร้าง Relation หลัก 
 วิว (View) หรืออาจเรียกอีกอย่างหนึ่งว่า Relation สมมติ (Virtual 
Relation) 
 เป็น Relation ที่ถูกสร้างขึ้นตามความต้องการใช้ข้อมูลของผู้ใช้แต่ละคน 
เนื่องจากผู้ใช้แต่ละคนอาจต้องการใช้ข้อมูลในลักษณะที่แตกต่างกัน 
จึงทา การกา หนดวิวของตัวเองขึ้นมาจาก Relation หลัก 
22 
6. ชนิดของ Relation
 Simple key 
 หมายถึง key ที่ประกอบด้วย attribute เดียว 
 Combine key (Composite key หรือ Concatenated key) 
 Combine Key หรือ คีย์ประกอบ หมายถึง Key ที่ประกอบด้วย attribute 
มากกว่า 1 attribute 
 Candidate key 
 Candidate Key หรือ คีย์คู่แข่ง หมายถึง key ที่สามารถจะเป็นคู่แข่ง ซึ่งจะถูก 
เลือกให้เป็นคีย์หลัก 
23 
7. ประเภทของ Key
 Primary key 
 Primary key หรือ คีย์หลัก หมายถึง candidate key ตัวหนึ่งที่ถูกเลือกขึ้นมา 
เป็นคีย์หลัก สา หรับ primary key เราจะใช้สัญลักษณ์ขีดเส้นใต้กา กับไว้ใต้ 
attribute ตัวนั้น 
 Foreign key 
 หมายถึง nonkey attribute ใน relation หนึ่งที่เป็น primary key ใน relation 
อื่น 
24 
7. ประเภทของ Key
 Secondary key (Alternate key) 
 คีย์รอง หมายถึง candidate key ที่ไม่ได้ถูกเลือกเป็นคีย์หลัก (primary key) 
 Superkey 
 attribute หรือ เซ็ทของ attribute ที่สามารถบ่งบอกว่าแต่ละแถว (Tuple) 
แตกต่างกัน ในทุก ๆ ความสัมพันธ์จะต้องมีอย่างน้อย หนึ่ง Super key ใน 
เซ็ทของ attributes 
25 
7. ประเภทของ Key
 ต้องเป็นภาษา Relational Complete Language ตามแนวคิดของ 
Codd มี 2 สาย ดังนี้ 
 Relational Calculus (R.C) 
 Relational Algebra (R.A) 
26 
8. ภาษาของฐานข้อมูลเชิงสัมพันธ์
 ผลงานที่ได้จากการพัฒนาระบบงานสูงสุด (Productivity) สูงมาก 
 โครงสร้างข้อมูลเรียบง่าย ทาให้ง่ายต่อการใช้งานและการเขียนโปรแกรม 
 ภาษาที่ใช้เหมาะสม เป็นภาษาที่เรียกว่า “relational complete language” 
เป็น concept ของ set theory เช่น ภาษา SQL, QBE เป็นต้น 
27 
9. เหตุผลในการใช้ฐานข้อมูลเชิงสัมพันธ์
ฐานข้อมูลเชิงสัมพันธ์ 
 Key Rule 
 Algebra Rule 
 Constraints 
 Cartesian Rule 
28
Key Rule 
 แนวคิดเรื่องโมเดลเชิงสัมพันธ์ 
 คีย์ 
 พื้นฐาน Relational Algebra 
29
Key Rule 
 แนวคิดเรื่องโมเดลเชิงสัมพันธ์ 
 ความสัมพันธ์ของฐานข้อมูลจะอยู่ในรูปแบบของตาราง 
 ชื่อของตารางคือ ชื่อของความสัมพันธ์ 
 แต่ละคอลัมน์ของตารางความสัมพันธ์ เรียกว่า แอททริบิว (attribute) 
ของความสัมพันธ์ 
 ค่าและขอบเขตของข้อมูลของแอททริบิวต์เรียกว่า โดเมน (Domain) 
 แต่ละแถวของตารางความสัมพันธ์ เรียกว่า แถว หรือ ทูเพิล (tuple) 
ของความสัมพันธ์ 
30
Key Rule 
คุณสมบัติของความสัมพันธ์ 
 ลา ดับของแถวและคอลัมน์ไม่ทา ให้ข้อมูลเปลี่ยนไป 
 จะไม่มีสองแถวที่ซ้า กัน 
 แอททริบิวต์ทุกตัวจะเป็น atomic เท่านั้น 
 ดีกรีของความสัมพันธ์ คือ จา นวนแอททริบิวต์ที่มีในความสัมพันธ์นั้น 
31
Key Rule 
 คีย์ 
 คีย์ คือ สงิ่ที่ใช้ในการกา หนดความเป็นเอกลักษณ์ของแถวใน 
ความสัมพันธ์ 
 ทาให้การเข้าถึงข้อมูลบนฐานข้อมูลเป็นไปได้อย่างรวดเร็ว 
 ทาให้สามารถแยกแยะข้อมูลในฐานข้อมูลให้เป็นไปอย่างถูกต้อง 
32
Key Rule 
ประเภทของคีย์ 
 คีย์หลัก (Primary Key) คือ คีย์ที่ใช้ในการอ้างถึง Entity ในฐานข้อมูล 
 คีย์รอง (Secondary Key) คือ คีย์เดี่ยวหรือคีย์ผสม เมื่อใช้ในการค้นหาข้อมูลของ 
ความสัมพันธ์จะได้มากกว่าหนึ่งเรคคอร์ด 
 คีย์นอก (Foreign Key) คือ คีย์เดี่ยวหรือคีย์ผสม ซึ่งเป็นคีย์ทัว่ไปของ 
ความสัมพันธ์หนึ่ง แต่เป็นคีย์หลักของอีกความสัมพันธ์หนึ่ง เป็นตัวที่ใช้ในการ 
เชื่อมต่อระหว่างความสัมพันธ์ 
33
Key Rule 
 ซุปเปอร์คีย์ (Super key) คือ กลุ่มของแอททริบิวที่สามาร 
ถนา ไปค้นหาข้อมูลที่เป็นเอกลักษณ์ได้ 
 คีย์แข่งขัน (Candidate key) คือ ซุปเปอร์คีย์และไม่มีกลุ่ม 
ย่อยของคีย์ใดในคีย์แข่งขันที่สามารถเป็นซุปเปอร์คีย์ได้ 
34
Algebra Rule 
 พื้นฐาน Relational Algebra 
 Relational Algebra Operations ขั้นพื้นฐาน 
 Relational Calculus 
35
Algebra Rule 
 พื้นฐาน Relational Algebra 
 Relational Algebra เรียกอีกอย่างว่า Relational 
query language 
 ใช้ในการจัดการข้อมูลโดยการระบุตัวกระทา กับความสัมพันธ์ที่ต้องการ 
จัดการ ผลลัพธ์ที่ได้คือ ความสัมพันธ์ใหม่ 
36
Algebra Rule 
ประเภทการใช้งานของตัวกระทา กับความสัมพันธ์ 
มี 2 รูปแบบ คือ 
 การใช้งานขั้นพื้นฐาน 
 Selection เลือกแถวจากความสัมพันธ์ 
 Projection เลือกเฉพาะคอลัมน์ที่ต้องการจากความสัมพันธ์ 
 Cross Product สามารถรวมความสัมพันธ์ได้ 
 Set Difference หาความแตกต่างระหว่าง 2 ความสัมพันธ์ 
 Union เชื่อม 2 ความสัมพันธ์เข้าด้วยกัน 
37
Algebra Rule 
 การใช้งานขั้นสูง 
 intersection 
 join 
 division 
 renaming 
38
Algebra Rule 
ประเภทการกระทา กับความสัมพันธ์ มี 2 รูปแบบ คือ 
 Unary Operators คือ ตัวกระทา ที่ต้องการเพียง 
ความสัมพันธ์เดียว เช่น select, project และ rename 
 Binary Operators คือ ตัวกระทา ที่ต้องการ 2 
ความสัมพันธ์ เช่น union, intersection, 
difference และ cartesian product 
39
Algebra Rule 
 Relational Algebra Operations ขั้นพื้นฐาน ได้แก่ 
 Selection operator คือ การเลือกข้อมูลความสัมพันธ์จากเงื่อนไขที่ 
กา หนด เทียบได้กับ SELECT...FROM...WHERE ในคา สั่ง SQL 
 Projection Operator คือ การเลือกเฉพาะบางคอลัมน์ของความสัมพันธ์ 
ขึ้นมาแสดง 
 Union ความสัมพันธ์ที่จะนา มาทา Union กันได้ ก็ต่อเมื่อรูปแบบของ 
ความสัมพันธ์เหมือนกัน เทียบได้กับ 
SELECT…FROM…WHERE…UNION 
SELECT…FROM…WHERE… 
40
Algebra Rule 
 Difference คือ ความสัมพันธ์ที่มีความแตกต่างกัน โดยมี รูปแบบ 
ความสัมพันธ์ที่เหมือนกัน เทียบได้กับ 
SELECT…FROM…WHERE…MINUS 
SELECT…FROM…WHERE 
 Intersection คือ ความสัมพันธ์ที่เกิดจากแถวที่ซ้า กัน เทียบได้ 
กับ 
SELECT…FROM…WHERE…INTERSECTION 
SELECT…FROM…WHERE 
 Division รูปแบบของความสัมพันธ์ คือ R1/R2 ไม่นิยมใช้แต่ 
อาจจะใช้ในการค้นหาบางประเภท 
41
Algebra Rule 
 Relational Calculus 
 เป็นการใช้คณิตศาสตร์ของตรรกะเข้ามาช่วยในการค้นหา ข้อมูล 
 คา ตอบที่ได้คือแถวของข้อมูลจากความสัมพันธ์ที่ทา ให้ค่าของสมการ 
คณิตศาสตร์มีค่าเป็น จริง 
42
Constraints 
 คือ ข้อบังคับหรือเงื่อนไขในการอนุญาตให้เก็บเฉพาะข้อมูลที่ 
เหมาะสมลงในฐานข้อมูล เพื่อให้การเลือกข้อมูลจากฐานข้อมูลมี 
ความถูกต้อง 
43
Constraints 
ประเภทของเงื่อนไข 
 Key constraint มี 2 รูปแบบ คือ 
 คีย์หลัก ค่าจะไม่เป็น NULL และถูกใช้เป็นดัชนีในการเรียงลา ดับเสมอ 
 Unique เป็น key เอกลักษณ์อาจมีเพิ่ม นอกเหนือจาก คีย์หลักโดย 
จะถูกใช้เป็นดัชนีในการเรียงรายการต่อจากคีย์หลัก โดยอัตโนมัติ 
 Referential Integrity 
 เป็นการอ้างอิงข้อมูลจากความสัมพันธ์อื่น 
44
Constraints 
 Check เป็นการตรวจสอบค่าของข้อมูลในความสัมพันธ์ให้ 
เป็นไปตามเงื่อนไข เพื่อกรองเฉพาะข้อมูลที่เหมาะสมลงไปใน 
ฐานข้อมูล 
 Assertion เป็นการตรวจสอบค่าของข้อมูลโดยรวมของทุก 
ความสัมพันธ์ให้เป็นไปตามเงื่อนไข 
45
Cartesian Rule 
 Cartesian Product 
 Join 
46
Cartesian Rule 
 Cartesian Product คือ การนา แถวจากความสัมพันธ์ที่1 
มาต่อกับแถวจากความสัมพันธ์ที่ 2 
 จา นวนแถวของความสัมพันธ์ผลลัพธ์ จะเท่ากับจา นวนแถวของ 
ความสัมพันธ์ที่ 1 X จา นวนแถวของความสัมพันธ์ที่ 2 
47
Cartesian Rule 
 Join คือ การรวมข้อมูลจากหลายความสัมพันธ์เข้าด้วยกัน มีหลาย 
แบบดังนี้ 
 Theta-Join คือ การ join แบบปกติซึ่งทา ให้เกิดชื่อคอลัมน์ที่ซ้า 
กัน 
 Equi-Join คือ การ join แบบมีเงื่อนไข “เท่ากับ” (=) เท่านั้น 
และคอลัมน์ที่ซ้า กันจะถูกแสดงเพียงครั้งเดียว 
 Natural-Join คือ Equi-Join ที่ join ทุกคอลัมน์ที่ซ้า กัน 
48
49 
ข้อซักถาม ? 
Q&A
ประเภทของคีย์ 
1. คีย์หลัก (Primary Key) 
เป็น Attribute ที่มีคุณสมบัติของข้อมูลที่มีค่าเป็น 
เอกลักษณ์ หรือไม่มีค่าซ้า กัน 
โดยคุณสมบัตินั้นจะสามารถระบุว่าข้อมูลนั้นเป็นของ 
Tuple ใด
ประเภทของคีย์ 
2. คีย์ผสม (Composite Key) 
 การนา ฟิลด์ตั้งแต่ 2 ฟิลด์ขึ้นไปมารวมกัน 
 เพื่อให้มีคุณสมบัติเป็น Primary Key 
 เนื่องจากหากใช้ฟิลด์ใดฟิลด์หนึ่งเป็น PK จะส่งผลให้ข้อมูลในแต่ละ 
เรคอร์ดซ้า ซ้อนได้ 
3001
ประเภทของคีย์ 
3. คีย์คู่แข่ง (Candidates Key) 
ในแต่ละ Relation อาจมี Attribute ที่ทา หน้าที่เป็นคีย์หลักได้ 
มากกว่าหนึ่ง Attribute โดยเรียก Attribute เหล่านี้ว่า คีย์คู่แข่ง 
(Candidate Key) 
เช่น นักศึกษาแต่ละคน มี 
รหัสประจา ตัวนักศึกษา 
รหัสประจา ตัวบัตรประชาชน 
โดยปกติแล้วจะเลือก Candidates Key ที่สั้นที่สุดเป็น Primary 
Key
ประเภทของคีย์ 
โดยเราจะเรียก Candidate Key ที่ถูกเลือกมาใช้ 
เป็นคีย์หลักในตารางว่า “Primary Key” และเรียก 
Candidate Key ที่ไม่ถูกเลือกเป็นคีย์หลักว่า “คีย์ 
สำรอง (Alternate Key)”
Key Rule (Continued) 
รหัส ชื่อ สกุล บัตร 
ประชาชน 
ชั้นเรียน สาขา 
คีย์คู่แข่ง Candidate Key 
คีย์หลัก (Primary Key) คีย์สำรอง Alternate Key
Key Rule (Continued) 
 Candidate Key สามารถเป็น Primary Key และ 
Alternate Key ได้
ประเภทของคีย์ 
2. คีย์นอก (Foreign Key) 
คือคีย์ซึ่งประกอบด้วยแอทริบิวต์หรือกลุ่มของ 
แอตทริบิวต์ในรีเลชันหนึ่งซึ่งมีคุณสมบัติเป็นคีย์หลัก และไป 
ปรากฏอีกรีเลชันหนึ่ง เพื่อประโยชน์ในการเชื่อมโยงข้อมูล 
ซึ่งกันและกัน
ประเภทของคีย์ 
2. คีย์นอก หรือคีย์เชื่อมโยง (Foreign Key) 
เป็น Key ที่ใช้ในการเชื่อมโยงข้อมูลระหว่างตารางเข้าด้วยกัน เช่น 
ฐานข้อมูลของธนาคารแห่งหนึ่งประกอบด้วย 2 ตาราง คือ 
 ตารางบัญชีที่ลูกค้าเปิด (เลขประจาตัวลูกค้า, ชื่อ-นามสกุล และ 
ประเภทของบัญชี ) 
 ตารางลูกค้า (เลขประจาตัวลูกค้า, ชื่อ-นามสกุล และที่อยู่) 
หากต้องการทราบว่าลูกค้ารายหนึ่งเปิดบัญชีใดบ้าง ก็เชื่อมโยงข้อมูล 2 
ตารางเข้าด้วยกัน โดยใช้เลขประจำตัวลูกค้ำเป็น Foreign Key
Data & Process Modeling
Overview

Contenu connexe

Tendances

Cts informatica interview question answers
Cts informatica interview question answersCts informatica interview question answers
Cts informatica interview question answers
Sweta Singh
 
Accenture informatica interview question answers
Accenture informatica interview question answersAccenture informatica interview question answers
Accenture informatica interview question answers
Sweta Singh
 
Mapreduce total order sorting technique
Mapreduce total order sorting techniqueMapreduce total order sorting technique
Mapreduce total order sorting technique
Uday Vakalapudi
 
Triplestore and SPARQL
Triplestore and SPARQLTriplestore and SPARQL
Triplestore and SPARQL
Lino Valdivia
 

Tendances (20)

Client Copy
Client CopyClient Copy
Client Copy
 
Cts informatica interview question answers
Cts informatica interview question answersCts informatica interview question answers
Cts informatica interview question answers
 
Big data analytics with Apache Hadoop
Big data analytics with Apache  HadoopBig data analytics with Apache  Hadoop
Big data analytics with Apache Hadoop
 
บทที่ 5 การแปลง er diagram ให้เป็น table
บทที่ 5 การแปลง er diagram ให้เป็น tableบทที่ 5 การแปลง er diagram ให้เป็น table
บทที่ 5 การแปลง er diagram ให้เป็น table
 
Windows Server 2016上でLinuxコンテナが動いた!
Windows Server 2016上でLinuxコンテナが動いた!Windows Server 2016上でLinuxコンテナが動いた!
Windows Server 2016上でLinuxコンテナが動いた!
 
Ch10th
Ch10thCh10th
Ch10th
 
Accenture informatica interview question answers
Accenture informatica interview question answersAccenture informatica interview question answers
Accenture informatica interview question answers
 
MapReduce Scheduling Algorithms
MapReduce Scheduling AlgorithmsMapReduce Scheduling Algorithms
MapReduce Scheduling Algorithms
 
SAP HANA - Understanding the Basics
SAP HANA - Understanding the Basics SAP HANA - Understanding the Basics
SAP HANA - Understanding the Basics
 
Use the SAP Content Server for Your Document Imaging and Archiving Needs!
Use the SAP Content Server for Your Document Imaging and Archiving Needs!Use the SAP Content Server for Your Document Imaging and Archiving Needs!
Use the SAP Content Server for Your Document Imaging and Archiving Needs!
 
Chapter 10 internet system and information system structures
Chapter 10 internet system and information system structuresChapter 10 internet system and information system structures
Chapter 10 internet system and information system structures
 
Lessons learned during SAP CPI and API mgt projects
Lessons learned during SAP CPI and API mgt projects Lessons learned during SAP CPI and API mgt projects
Lessons learned during SAP CPI and API mgt projects
 
Mapreduce total order sorting technique
Mapreduce total order sorting techniqueMapreduce total order sorting technique
Mapreduce total order sorting technique
 
Wonderware Data Historian
Wonderware Data HistorianWonderware Data Historian
Wonderware Data Historian
 
Creative Commons .. ยังไง?
Creative Commons .. ยังไง?Creative Commons .. ยังไง?
Creative Commons .. ยังไง?
 
Hadoop online training
Hadoop online training Hadoop online training
Hadoop online training
 
Chapter 5 business process reengineering
Chapter 5 business process reengineeringChapter 5 business process reengineering
Chapter 5 business process reengineering
 
SAP NetWeaver BW Powered by SAP HANA
SAP NetWeaver BW Powered by SAP HANASAP NetWeaver BW Powered by SAP HANA
SAP NetWeaver BW Powered by SAP HANA
 
Triplestore and SPARQL
Triplestore and SPARQLTriplestore and SPARQL
Triplestore and SPARQL
 
Hadoop Overview kdd2011
Hadoop Overview kdd2011Hadoop Overview kdd2011
Hadoop Overview kdd2011
 

En vedette

เกมส์และเว็บไซต์ที่ชื่นชอบ วิชาปฏิสัมพันธ์ระหว่างมนุษย์
เกมส์และเว็บไซต์ที่ชื่นชอบ วิชาปฏิสัมพันธ์ระหว่างมนุษย์เกมส์และเว็บไซต์ที่ชื่นชอบ วิชาปฏิสัมพันธ์ระหว่างมนุษย์
เกมส์และเว็บไซต์ที่ชื่นชอบ วิชาปฏิสัมพันธ์ระหว่างมนุษย์
Arrat Krupeach
 
ฐานข้อมูลนะสอน
ฐานข้อมูลนะสอนฐานข้อมูลนะสอน
ฐานข้อมูลนะสอน
sariya25
 
Mac os x power point ฉบับสมบูรณ์ pdf
Mac os x power point ฉบับสมบูรณ์ pdfMac os x power point ฉบับสมบูรณ์ pdf
Mac os x power point ฉบับสมบูรณ์ pdf
Jane Jitpakan
 
Book sru
Book sruBook sru
Book sru
phochai
 
Mac os x power point ฉบับสมบูรณ์
Mac os x power point ฉบับสมบูรณ์Mac os x power point ฉบับสมบูรณ์
Mac os x power point ฉบับสมบูรณ์
Jane Jitpakan
 

En vedette (20)

บทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูล
บทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูลบทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูล
บทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูล
 
บทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูล
บทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูลบทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูล
บทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูล
 
Building construction 5หลังคา
Building construction 5หลังคาBuilding construction 5หลังคา
Building construction 5หลังคา
 
รายงาน Project2
รายงาน Project2รายงาน Project2
รายงาน Project2
 
Ch10
Ch10Ch10
Ch10
 
บทที่ 3 แนวความคิดพื้นฐาน
บทที่ 3 แนวความคิดพื้นฐานบทที่ 3 แนวความคิดพื้นฐาน
บทที่ 3 แนวความคิดพื้นฐาน
 
บทที่1ความรู้เบื้องต้น
บทที่1ความรู้เบื้องต้น บทที่1ความรู้เบื้องต้น
บทที่1ความรู้เบื้องต้น
 
Ch9
Ch9Ch9
Ch9
 
Building construction 5หลังคา
Building construction 5หลังคาBuilding construction 5หลังคา
Building construction 5หลังคา
 
Building construction 5หลังคา แบบฝึกหัด
Building construction 5หลังคา แบบฝึกหัดBuilding construction 5หลังคา แบบฝึกหัด
Building construction 5หลังคา แบบฝึกหัด
 
เกมส์และเว็บไซต์ที่ชื่นชอบ วิชาปฏิสัมพันธ์ระหว่างมนุษย์
เกมส์และเว็บไซต์ที่ชื่นชอบ วิชาปฏิสัมพันธ์ระหว่างมนุษย์เกมส์และเว็บไซต์ที่ชื่นชอบ วิชาปฏิสัมพันธ์ระหว่างมนุษย์
เกมส์และเว็บไซต์ที่ชื่นชอบ วิชาปฏิสัมพันธ์ระหว่างมนุษย์
 
Ch20
Ch20Ch20
Ch20
 
ฐานข้อมูลนะสอน
ฐานข้อมูลนะสอนฐานข้อมูลนะสอน
ฐานข้อมูลนะสอน
 
ความรู้พื้นฐานเกี่ยวกับฐานข้อมูล
ความรู้พื้นฐานเกี่ยวกับฐานข้อมูลความรู้พื้นฐานเกี่ยวกับฐานข้อมูล
ความรู้พื้นฐานเกี่ยวกับฐานข้อมูล
 
Mac os x power point ฉบับสมบูรณ์ pdf
Mac os x power point ฉบับสมบูรณ์ pdfMac os x power point ฉบับสมบูรณ์ pdf
Mac os x power point ฉบับสมบูรณ์ pdf
 
คู่มือการบันทึกคะแนน
คู่มือการบันทึกคะแนนคู่มือการบันทึกคะแนน
คู่มือการบันทึกคะแนน
 
Book sru
Book sruBook sru
Book sru
 
ระบบปฏิบัติการ
ระบบปฏิบัติการระบบปฏิบัติการ
ระบบปฏิบัติการ
 
Peer visit with SECI Model
Peer visit with SECI ModelPeer visit with SECI Model
Peer visit with SECI Model
 
Mac os x power point ฉบับสมบูรณ์
Mac os x power point ฉบับสมบูรณ์Mac os x power point ฉบับสมบูรณ์
Mac os x power point ฉบับสมบูรณ์
 

Similaire à Slide3

บทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูล
บทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูลบทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูล
บทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูล
ครูสม ฟาร์มมะนาว
 
ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล
ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูลความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล
ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล
kruthanyaporn
 
บทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูล
บทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูลบทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูล
บทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูล
ครูสม ฟาร์มมะนาว
 
การใช้อักษร
การใช้อักษรการใช้อักษร
การใช้อักษร
Watuka Wannarun
 
งานนำเสนอ1
งานนำเสนอ1งานนำเสนอ1
งานนำเสนอ1
sirada nilbut
 
การใช้งานคำสั่งภาษา Sql
การใช้งานคำสั่งภาษา Sqlการใช้งานคำสั่งภาษา Sql
การใช้งานคำสั่งภาษา Sql
Thitiya Mueanchan
 
การใช้งานคำสั่งภาษา Sql
การใช้งานคำสั่งภาษา Sqlการใช้งานคำสั่งภาษา Sql
การใช้งานคำสั่งภาษา Sql
Thitiya Mueanchan
 
ความรู้พื้นฐานเกี่ยวกับฐานข้อมูล
ความรู้พื้นฐานเกี่ยวกับฐานข้อมูลความรู้พื้นฐานเกี่ยวกับฐานข้อมูล
ความรู้พื้นฐานเกี่ยวกับฐานข้อมูล
kruthanyaporn
 
งานนำเสนอ1คอม
งานนำเสนอ1คอมงานนำเสนอ1คอม
งานนำเสนอ1คอม
kanjana123
 
งานกลุ่ม ฐานข้อมูลเชิงสัมพันธ์ ม.2/4 เลขที่ 1-18-26-29-31-34-40
งานกลุ่ม ฐานข้อมูลเชิงสัมพันธ์ ม.2/4 เลขที่ 1-18-26-29-31-34-40งานกลุ่ม ฐานข้อมูลเชิงสัมพันธ์ ม.2/4 เลขที่ 1-18-26-29-31-34-40
งานกลุ่ม ฐานข้อมูลเชิงสัมพันธ์ ม.2/4 เลขที่ 1-18-26-29-31-34-40
KittinanSuksom2
 

Similaire à Slide3 (20)

บทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูล
บทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูลบทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูล
บทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูล
 
บทที่ 3
บทที่ 3บทที่ 3
บทที่ 3
 
Lesson 1 intro2_db
Lesson 1 intro2_dbLesson 1 intro2_db
Lesson 1 intro2_db
 
Lesson 1 intro2_db
Lesson 1 intro2_dbLesson 1 intro2_db
Lesson 1 intro2_db
 
ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล
ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูลความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล
ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล
 
งานคอม#2
งานคอม#2งานคอม#2
งานคอม#2
 
บทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูล
บทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูลบทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูล
บทที่ 2 สถาปัตยกรรมและแบบจำลองฐานข้อมูล
 
ฐานข้อมูลเชิงสัมพันธ์
ฐานข้อมูลเชิงสัมพันธ์ฐานข้อมูลเชิงสัมพันธ์
ฐานข้อมูลเชิงสัมพันธ์
 
หน่วยที่ 3 ระบบฐานข้อมูลเชิงสัมพันธ์
หน่วยที่ 3 ระบบฐานข้อมูลเชิงสัมพันธ์หน่วยที่ 3 ระบบฐานข้อมูลเชิงสัมพันธ์
หน่วยที่ 3 ระบบฐานข้อมูลเชิงสัมพันธ์
 
การใช้อักษร
การใช้อักษรการใช้อักษร
การใช้อักษร
 
งานนำเสนอ1
งานนำเสนอ1งานนำเสนอ1
งานนำเสนอ1
 
การใช้งานคำสั่งภาษา Sql
การใช้งานคำสั่งภาษา Sqlการใช้งานคำสั่งภาษา Sql
การใช้งานคำสั่งภาษา Sql
 
การใช้งานคำสั่งภาษา Sql
การใช้งานคำสั่งภาษา Sqlการใช้งานคำสั่งภาษา Sql
การใช้งานคำสั่งภาษา Sql
 
ความรู้พื้นฐานเกี่ยวกับฐานข้อมูล
ความรู้พื้นฐานเกี่ยวกับฐานข้อมูลความรู้พื้นฐานเกี่ยวกับฐานข้อมูล
ความรู้พื้นฐานเกี่ยวกับฐานข้อมูล
 
บทที่ 3 ฐานข้อมูลเชิงสัมพันธ์
บทที่ 3 ฐานข้อมูลเชิงสัมพันธ์บทที่ 3 ฐานข้อมูลเชิงสัมพันธ์
บทที่ 3 ฐานข้อมูลเชิงสัมพันธ์
 
งานนำเสนอ1คอม
งานนำเสนอ1คอมงานนำเสนอ1คอม
งานนำเสนอ1คอม
 
งานกลุ่ม ฐานข้อมูลเชิงสัมพันธ์ ม.2/4 เลขที่ 1-18-26-29-31-34-40
งานกลุ่ม ฐานข้อมูลเชิงสัมพันธ์ ม.2/4 เลขที่ 1-18-26-29-31-34-40งานกลุ่ม ฐานข้อมูลเชิงสัมพันธ์ ม.2/4 เลขที่ 1-18-26-29-31-34-40
งานกลุ่ม ฐานข้อมูลเชิงสัมพันธ์ ม.2/4 เลขที่ 1-18-26-29-31-34-40
 
งานกลุ่ม3ฐานข้อมูลเชิงสัมพันธ์
งานกลุ่ม3ฐานข้อมูลเชิงสัมพันธ์งานกลุ่ม3ฐานข้อมูลเชิงสัมพันธ์
งานกลุ่ม3ฐานข้อมูลเชิงสัมพันธ์
 
การใช้งานคำสั่งภาษา Sql
การใช้งานคำสั่งภาษา Sqlการใช้งานคำสั่งภาษา Sql
การใช้งานคำสั่งภาษา Sql
 
การใช้งานคำสั่งภาษา Sql
การใช้งานคำสั่งภาษา Sqlการใช้งานคำสั่งภาษา Sql
การใช้งานคำสั่งภาษา Sql
 

Plus de Rungnapa Rungnapa

บทที่2ความเสี่ยงภัยและการจัดการความเสี่ยง
บทที่2ความเสี่ยงภัยและการจัดการความเสี่ยง บทที่2ความเสี่ยงภัยและการจัดการความเสี่ยง
บทที่2ความเสี่ยงภัยและการจัดการความเสี่ยง
Rungnapa Rungnapa
 
บทที่ 1 การจัดการประกันภัย
บทที่ 1 การจัดการประกันภัยบทที่ 1 การจัดการประกันภัย
บทที่ 1 การจัดการประกันภัย
Rungnapa Rungnapa
 

Plus de Rungnapa Rungnapa (20)

Ch8
Ch8Ch8
Ch8
 
Ch7
Ch7Ch7
Ch7
 
Ch5
Ch5Ch5
Ch5
 
Ch6 new
Ch6 newCh6 new
Ch6 new
 
Ch1 3
Ch1 3Ch1 3
Ch1 3
 
Ch1 3
Ch1 3Ch1 3
Ch1 3
 
บทที่2ความเสี่ยงภัยและการจัดการความเสี่ยง
บทที่2ความเสี่ยงภัยและการจัดการความเสี่ยง บทที่2ความเสี่ยงภัยและการจัดการความเสี่ยง
บทที่2ความเสี่ยงภัยและการจัดการความเสี่ยง
 
บทที่ 1 การจัดการประกันภัย
บทที่ 1 การจัดการประกันภัยบทที่ 1 การจัดการประกันภัย
บทที่ 1 การจัดการประกันภัย
 
บทที่ 5 good corporate governance2
บทที่ 5 good corporate governance2บทที่ 5 good corporate governance2
บทที่ 5 good corporate governance2
 
บทที่ 4 บรรษัทภิบาล
บทที่ 4 บรรษัทภิบาลบทที่ 4 บรรษัทภิบาล
บทที่ 4 บรรษัทภิบาล
 
บทที่ 3 แนวปฏิบัติที่ดี
บทที่ 3 แนวปฏิบัติที่ดีบทที่ 3 แนวปฏิบัติที่ดี
บทที่ 3 แนวปฏิบัติที่ดี
 
บทที่ 2 corporate social responsibility
บทที่ 2 corporate social responsibilityบทที่ 2 corporate social responsibility
บทที่ 2 corporate social responsibility
 
บทที่ 1 ความรู้ทั่วไป
บทที่ 1 ความรู้ทั่วไปบทที่ 1 ความรู้ทั่วไป
บทที่ 1 ความรู้ทั่วไป
 
บทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูล
บทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูลบทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูล
บทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูล
 
บทที่ 1
บทที่ 1บทที่ 1
บทที่ 1
 
บทที่ 10 การบริหารโครงการ
บทที่ 10 การบริหารโครงการบทที่ 10 การบริหารโครงการ
บทที่ 10 การบริหารโครงการ
 
บทที่ 9 การควบคุมการผลิต
บทที่ 9 การควบคุมการผลิตบทที่ 9 การควบคุมการผลิต
บทที่ 9 การควบคุมการผลิต
 
บทที่ 8 การจัดการสินค้าคงคลัง
บทที่ 8 การจัดการสินค้าคงคลังบทที่ 8 การจัดการสินค้าคงคลัง
บทที่ 8 การจัดการสินค้าคงคลัง
 
บทที่ 7 การจัดการซัพพลายเชน
บทที่ 7 การจัดการซัพพลายเชนบทที่ 7 การจัดการซัพพลายเชน
บทที่ 7 การจัดการซัพพลายเชน
 
บทที่ 6 การออกแบบงาน มาตรฐานแรงงาน และเทคโนโลยีการผลิต
บทที่  6 การออกแบบงาน มาตรฐานแรงงาน และเทคโนโลยีการผลิตบทที่  6 การออกแบบงาน มาตรฐานแรงงาน และเทคโนโลยีการผลิต
บทที่ 6 การออกแบบงาน มาตรฐานแรงงาน และเทคโนโลยีการผลิต
 

Slide3

  • 1. ระบบฐานข้อมูล (DATABASE SYSTEMS) Relational Database อ. เบญจภัค จงหมื่นไวย์ โปรแกรมวิชาวิทยาการสารสนเทศ มหาวิทยาลัยราชภัฏนครราชส1ีมา
  • 2. วัตถุประสงค์ 1. เข้าใจแนวความคิดของรูปแบบฐานข้อมูลเชิงสัมพันธ์ บอกถึงรูปแบบ และลักษณะที่สา คัญของ relational algebra และ relational calculus 2. เข้าใจหลักการและทฤษฎีทางคณิตศาสตร์ที่อยู่เบื้องหลังของรูปแบบ ฐานข้อมูลเชิงสัมพันธ์และการกระทากับข้อมูลที่ต้องการ ที่ถูกจัดเก็บใน ฐานข้อมูลได้ 2
  • 3. หัวข้อการบรรยาย 1. คา ศัพท์เกี่ยวกับโมเดลเชิงสัมพันธ์ 2. คุณสมบัติของ Relation  3. แนวคิดของ E.F. Codd  4. ค่าว่าง (Null Value)  5. Redundant & Duplicate Data  6. ชนิดของ Relation  7. ประเภทของ Key 8. ภาษาของฐานข้อมูลเชิงสัมพันธ์ 9. เหตุผลในการใช้ฐานข้อมูลเชิงสัมพันธ์ 3 ปัจจุบัน
  • 4. บทนา “ฐานข้อมูลเชิงสัมพันธ์” คือ การรวมกล่มุของ รีเลชัน่ที่ผ่านการนอร์มัลไลเซชัน่โดยแต่ละรีเลชัน่ จะมีการกา หนดชื่อที่แตกต่างกัน 4 ปัจจุบัน
  • 5. 1. คา ศัพท์เกี่ยวกับโมเดลเชิงสัมพันธ์ รีเลชัน่(Relation)  ทูเปิล (Tuple)  แอททริบิวท์(Attribute)  คาร์ดินัลลิตี้(Cardinality)  ดีกรี(Degree) คีย์หลัก (Primary key)  โดเมน (Domain) 5 ค.ศ. 1975 ปัจจุบัน
  • 6. 1. คา ศัพท์เกี่ยวกับโมเดลเชิงสัมพันธ์ 6 ศัพท์เฉพาะ ศัพท์ทัว่ไป รีเลชัน่(Relation) ตาราง (Table) ทูเปิล (Tuple) แถว ค(.ศRow) . 1975 หรือ เรคอร์ด (Record) หปัจรืจุอ บัระน เบียน แอทรบิิวท์(Attribute) คอลัมน์(Column) หรือ ฟิลด์ (Field) คาร์ดินัลลิตี้(Cardinality) จา นวนแถว (Number of rows) ดีกรี(Degree) จานวนแอทริบิวท์(Number of attribute) คีย์หลัก (Primary key) ค่าเอกลักษณ์ (Unique identifier) โดเมน (Domain) ขอบข่ายของค่าของข้อมูล (Pool of legal values)
  • 7. 7 ลูกค้า(รหัสประจา ตัวประชาชน,ชื่อ,นามสกุล,วันเกิด) แอททริบิวท์(Attribute) รหัสประจำ ตัวประชำชน ชื่อ นำมสกุล วันเกิด 3102401250111 ชนวัฒน์ศรีสอ้ำน 16/04/2514 3102401250112 สมชำย รักไทย 6/11/2514 3102401250113 ไอรดำ สืบสำย 12/06/2514 เรคคอร์ด (Record) ตาราง (Table) หรือ รีเลชัน่(Relation)
  • 8. 2. คุณสมบัติของ Relation 1) รีเลชัน่จะต้องมีชื่อกา กับ โดยแต่ละรีเลชัน่จะมีชื่อที่แตกต่างกัน ซ้า กันไม่ได้ 2) แต่ละแอทรบิิวท์ของรีเลชัน่จะบรรจุค่าเพียงค่าเดียว (Atomic) กล่าวคือ ค่าที่บรรจุนั้นจะไม่สามารถแบ่งย่อยต่อไปได้อีก 3) แต่ละแอทรบิิวท์ในรีเลชัน่นั้น ๆ ต้องมีชื่อแตกต่างกัน จะมีชื่อแอทรบิิวท์ ซ้า กันไม่ได้ 4) ข้อมูลที่บรรจุลงในแต่ละแอทรบิิวท์เป็นไปตามข้อกา หนดของโดเมนที่ กา หนดขึ้น 8
  • 9. 2. คุณสมบัติของ Relation 5) ข้อมูลในแต่ละทูเปิลต้องมีความแตกต่างกัน จะไม่มีทูเปิลที่ซ้า กัน 6) การเรียงลา ดับของแต่ละแอทริบิวต์ไม่มีความสา คัญใด ๆ 7) การเรียงลา ดับของทูเปิลไม่มีความสา คัญใด ๆ แต่ในเชิงปฏิบัติลา ดับ มีผลต่อประสิทธิภาพการเข้าถึงข้อมูล 9
  • 10. 10 ไม่มี Tuples คู่ใด ๆ เลยที่ซ้า กัน รหัสประจา ตัวประชาชน ชื่อ นามสกุล วันเกิด 3102401250111 ชนวัฒน์ศรีสอ้าน 16/04/2514 3102401250112 สมชาย รักไทย 6/11/2514 3102401250111 ชนวัฒน์ศรีสอ้าน 16/04/2514 3102401250113 ไอรดา สืบสาย 12/06/2514
  • 11. 11 ลา ดับที่ของ Tuples ไม่มีความสา คัญ รหัสประจา ตัวประชาชน ชื่อ นามสกุล วันเกิด 3102401250113 ไอรดา สืบสาย 12/06/2514 3102401250111 ชนวัฒน์ศรีสอ้าน 16/04/2514 3102401250112 สมชาย รักไทย 6/11/2514
  • 12. 12 ลา ดับที่ของ Attributes ไม่มีความสา คัญ ชื่อ รหัสประจา ตัวประชาชน นามสกุล วันเกิด ไอรดา 3102401250113 สืบสาย 12/06/2514 ชนวัฒน์3102401250111 ศรีสอ้าน 16/04/2514 สมชาย 3102401250112 รักไทย 6/11/2514
  • 13. 13 ค่าของ Attribute จะเป็นค่าเดี่ยว ๆ (Atomic) ชื่อ รหัสประจา ตัวประชาชน นามสกุล วันเกิด ไอรดา 3102401250113 3102401250112 3102401250111 สืบสาย 12/06/2514 ชนวัฒน์3102401250111 ศรีสอ้าน 16/04/2514 สมศรี 3102401250112 รักไทย 6/11/2514 สมชาย
  • 14. 14 ค่าของข้อมูลในแต่ละ Attribute จะบรรจุค่าของข้อมูลประเภทเดียวกัน ชื่อ รหัสประจา ตัวประชาชน นามสกุล วันเกิด ไอรดา สามหนึ่งศูนย์สองสี่สืบสาย 99999 ชนวัฒน์3102401250111 ศรีสอ้าน 16/04/2514 สมชาย 3102401250112 รักไทย สวัสดี
  • 15. 3. กฎ 12 ข้อบนฐานข้อมูลเชิงสัมพันธ์ของคอดด์ (Codd’s 12 Relational Database Rules)  1. กฎด้านสารสนเทศ (Information)  2. กฎการรับประกันการเข้าถึง (Guaranteed Access)  3. กฎการปฏิบัติกับค่า Null อย่างมีแบบแผน  4. กฎการออนไลน์แคตาล๊อกแบบไดนามิกที่ตัง้อยู่บนพื้นฐานของ แบบจา ลองเชิงสัมพันธ์  5. กฎด้านภาษาข้อมูล  6. กฎการปรับปรุงวิว  7. กฎการแทรก การปรับปรุง และการลบข้อมูลระดับสูง  8. กฎความอิสระของข้อมูลเชิงกายภาพ 15
  • 16. 3. กฎ 12 ข้อบนฐานข้อมูลเชิงสัมพันธ์ของคอดด์  9. กฎความอิสระของข้อมูลเชิงตรรกะ (Logical Data Independence)  10. กฎความคงสภาพที่เป็นอิสระ (Integrity Independence)  11. กฎการกระจายที่เป็นอิสระ (Distribution Independence)  12. กฎปราศจากเวอร์ชัน่ย่อย (Nonsubversion) 16 (Codd’s 12 Relational Database Rules)
  • 17.  ค่าของ Attribute อาจจะเป็นค่าว่าง (Null)  คือ ไม่มีค่าหรือยังไม่ทราบค่าได้  ตัวอย่าง เช่น  จานวนไข่ของนกกระจอกเทศ จะสามารถบอกได้เมื่อนกกระจอกเทศออกไข่ แล้ว แต่ยังไม่ทราบค่า ในขณะที่จา นวนไข่ของช้างนั้นไม่มีค่า เป็นต้น 17 4. ค่าว่าง (Null Value)
  • 18. ตัวอย่าง 18 Part Part ค.ศ. 1975 ปัจจุบัน part Part-description P2 Nut P1 Bolt P3 Washer P4 Nut part Part-description P2 - P1 Bolt P3 Washer P4 Nut (a) (b)
  • 19.  Duplicate data จะเกิดขึ้นก็ต่อเมื่อ Attribute หนึ่งมีค่าของข้อมูลที่ เหมือนกันตัง้แต่สองค่าขึ้นไป  ข้อมูลจะซ้าซ้อน (Redundant) ก็ต่อเมื่อเราสามารถตัดข้อมูลที่ ซ้า ซ้อนนั้นออกไปได้ โดยไม่ทา ให้สูญเสียข้อมูล  อาจกล่าวได้ว่า ความซ้าซ้อน (Redundancy) คือ Duplication ที่ไม่ จาเป็น 19 5. Redundant & Duplicate Data
  • 20. ตัวอย่าง 20 Supplier - Part Supplier - Part ค.ศ. 1975 ปัจจุบัน Supplier part Part-description S2 P1 Bolt S7 P6 Bolt S2 P4 Nut s5 P1 Bolt Supplier part Part-description S2 P1 Bolt S7 P6 Bolt S2 P4 Nut s5 P1 - (a) (b)
  • 21. ตัวอย่าง 21 Supplier – Part-1 Part ค.ศ. 1975 ปัจจุบัน Supplier# Part-description S2 P1 S7 P6 S2 P4 s5 P1 Part# Part-description P1 Bolt P6 Bolt P4 Nut (a) (b)
  • 22.  Relation หลัก (Base Relation)  เป็น Relation ที่ถูกกา หนดขึ้นเพื่อเก็บข้อมูลและเพื่อนาข้อมูลไปใช้ เมื่อมีการสร้าง Relation โดยใช้ Data Definition Language เช่น ใน SQL คา สัง่ CREATE TABLE เป็นการสร้าง Relation หลัก  วิว (View) หรืออาจเรียกอีกอย่างหนึ่งว่า Relation สมมติ (Virtual Relation)  เป็น Relation ที่ถูกสร้างขึ้นตามความต้องการใช้ข้อมูลของผู้ใช้แต่ละคน เนื่องจากผู้ใช้แต่ละคนอาจต้องการใช้ข้อมูลในลักษณะที่แตกต่างกัน จึงทา การกา หนดวิวของตัวเองขึ้นมาจาก Relation หลัก 22 6. ชนิดของ Relation
  • 23.  Simple key  หมายถึง key ที่ประกอบด้วย attribute เดียว  Combine key (Composite key หรือ Concatenated key)  Combine Key หรือ คีย์ประกอบ หมายถึง Key ที่ประกอบด้วย attribute มากกว่า 1 attribute  Candidate key  Candidate Key หรือ คีย์คู่แข่ง หมายถึง key ที่สามารถจะเป็นคู่แข่ง ซึ่งจะถูก เลือกให้เป็นคีย์หลัก 23 7. ประเภทของ Key
  • 24.  Primary key  Primary key หรือ คีย์หลัก หมายถึง candidate key ตัวหนึ่งที่ถูกเลือกขึ้นมา เป็นคีย์หลัก สา หรับ primary key เราจะใช้สัญลักษณ์ขีดเส้นใต้กา กับไว้ใต้ attribute ตัวนั้น  Foreign key  หมายถึง nonkey attribute ใน relation หนึ่งที่เป็น primary key ใน relation อื่น 24 7. ประเภทของ Key
  • 25.  Secondary key (Alternate key)  คีย์รอง หมายถึง candidate key ที่ไม่ได้ถูกเลือกเป็นคีย์หลัก (primary key)  Superkey  attribute หรือ เซ็ทของ attribute ที่สามารถบ่งบอกว่าแต่ละแถว (Tuple) แตกต่างกัน ในทุก ๆ ความสัมพันธ์จะต้องมีอย่างน้อย หนึ่ง Super key ใน เซ็ทของ attributes 25 7. ประเภทของ Key
  • 26.  ต้องเป็นภาษา Relational Complete Language ตามแนวคิดของ Codd มี 2 สาย ดังนี้  Relational Calculus (R.C)  Relational Algebra (R.A) 26 8. ภาษาของฐานข้อมูลเชิงสัมพันธ์
  • 27.  ผลงานที่ได้จากการพัฒนาระบบงานสูงสุด (Productivity) สูงมาก  โครงสร้างข้อมูลเรียบง่าย ทาให้ง่ายต่อการใช้งานและการเขียนโปรแกรม  ภาษาที่ใช้เหมาะสม เป็นภาษาที่เรียกว่า “relational complete language” เป็น concept ของ set theory เช่น ภาษา SQL, QBE เป็นต้น 27 9. เหตุผลในการใช้ฐานข้อมูลเชิงสัมพันธ์
  • 28. ฐานข้อมูลเชิงสัมพันธ์  Key Rule  Algebra Rule  Constraints  Cartesian Rule 28
  • 29. Key Rule  แนวคิดเรื่องโมเดลเชิงสัมพันธ์  คีย์  พื้นฐาน Relational Algebra 29
  • 30. Key Rule  แนวคิดเรื่องโมเดลเชิงสัมพันธ์  ความสัมพันธ์ของฐานข้อมูลจะอยู่ในรูปแบบของตาราง  ชื่อของตารางคือ ชื่อของความสัมพันธ์  แต่ละคอลัมน์ของตารางความสัมพันธ์ เรียกว่า แอททริบิว (attribute) ของความสัมพันธ์  ค่าและขอบเขตของข้อมูลของแอททริบิวต์เรียกว่า โดเมน (Domain)  แต่ละแถวของตารางความสัมพันธ์ เรียกว่า แถว หรือ ทูเพิล (tuple) ของความสัมพันธ์ 30
  • 31. Key Rule คุณสมบัติของความสัมพันธ์  ลา ดับของแถวและคอลัมน์ไม่ทา ให้ข้อมูลเปลี่ยนไป  จะไม่มีสองแถวที่ซ้า กัน  แอททริบิวต์ทุกตัวจะเป็น atomic เท่านั้น  ดีกรีของความสัมพันธ์ คือ จา นวนแอททริบิวต์ที่มีในความสัมพันธ์นั้น 31
  • 32. Key Rule  คีย์  คีย์ คือ สงิ่ที่ใช้ในการกา หนดความเป็นเอกลักษณ์ของแถวใน ความสัมพันธ์  ทาให้การเข้าถึงข้อมูลบนฐานข้อมูลเป็นไปได้อย่างรวดเร็ว  ทาให้สามารถแยกแยะข้อมูลในฐานข้อมูลให้เป็นไปอย่างถูกต้อง 32
  • 33. Key Rule ประเภทของคีย์  คีย์หลัก (Primary Key) คือ คีย์ที่ใช้ในการอ้างถึง Entity ในฐานข้อมูล  คีย์รอง (Secondary Key) คือ คีย์เดี่ยวหรือคีย์ผสม เมื่อใช้ในการค้นหาข้อมูลของ ความสัมพันธ์จะได้มากกว่าหนึ่งเรคคอร์ด  คีย์นอก (Foreign Key) คือ คีย์เดี่ยวหรือคีย์ผสม ซึ่งเป็นคีย์ทัว่ไปของ ความสัมพันธ์หนึ่ง แต่เป็นคีย์หลักของอีกความสัมพันธ์หนึ่ง เป็นตัวที่ใช้ในการ เชื่อมต่อระหว่างความสัมพันธ์ 33
  • 34. Key Rule  ซุปเปอร์คีย์ (Super key) คือ กลุ่มของแอททริบิวที่สามาร ถนา ไปค้นหาข้อมูลที่เป็นเอกลักษณ์ได้  คีย์แข่งขัน (Candidate key) คือ ซุปเปอร์คีย์และไม่มีกลุ่ม ย่อยของคีย์ใดในคีย์แข่งขันที่สามารถเป็นซุปเปอร์คีย์ได้ 34
  • 35. Algebra Rule  พื้นฐาน Relational Algebra  Relational Algebra Operations ขั้นพื้นฐาน  Relational Calculus 35
  • 36. Algebra Rule  พื้นฐาน Relational Algebra  Relational Algebra เรียกอีกอย่างว่า Relational query language  ใช้ในการจัดการข้อมูลโดยการระบุตัวกระทา กับความสัมพันธ์ที่ต้องการ จัดการ ผลลัพธ์ที่ได้คือ ความสัมพันธ์ใหม่ 36
  • 37. Algebra Rule ประเภทการใช้งานของตัวกระทา กับความสัมพันธ์ มี 2 รูปแบบ คือ  การใช้งานขั้นพื้นฐาน  Selection เลือกแถวจากความสัมพันธ์  Projection เลือกเฉพาะคอลัมน์ที่ต้องการจากความสัมพันธ์  Cross Product สามารถรวมความสัมพันธ์ได้  Set Difference หาความแตกต่างระหว่าง 2 ความสัมพันธ์  Union เชื่อม 2 ความสัมพันธ์เข้าด้วยกัน 37
  • 38. Algebra Rule  การใช้งานขั้นสูง  intersection  join  division  renaming 38
  • 39. Algebra Rule ประเภทการกระทา กับความสัมพันธ์ มี 2 รูปแบบ คือ  Unary Operators คือ ตัวกระทา ที่ต้องการเพียง ความสัมพันธ์เดียว เช่น select, project และ rename  Binary Operators คือ ตัวกระทา ที่ต้องการ 2 ความสัมพันธ์ เช่น union, intersection, difference และ cartesian product 39
  • 40. Algebra Rule  Relational Algebra Operations ขั้นพื้นฐาน ได้แก่  Selection operator คือ การเลือกข้อมูลความสัมพันธ์จากเงื่อนไขที่ กา หนด เทียบได้กับ SELECT...FROM...WHERE ในคา สั่ง SQL  Projection Operator คือ การเลือกเฉพาะบางคอลัมน์ของความสัมพันธ์ ขึ้นมาแสดง  Union ความสัมพันธ์ที่จะนา มาทา Union กันได้ ก็ต่อเมื่อรูปแบบของ ความสัมพันธ์เหมือนกัน เทียบได้กับ SELECT…FROM…WHERE…UNION SELECT…FROM…WHERE… 40
  • 41. Algebra Rule  Difference คือ ความสัมพันธ์ที่มีความแตกต่างกัน โดยมี รูปแบบ ความสัมพันธ์ที่เหมือนกัน เทียบได้กับ SELECT…FROM…WHERE…MINUS SELECT…FROM…WHERE  Intersection คือ ความสัมพันธ์ที่เกิดจากแถวที่ซ้า กัน เทียบได้ กับ SELECT…FROM…WHERE…INTERSECTION SELECT…FROM…WHERE  Division รูปแบบของความสัมพันธ์ คือ R1/R2 ไม่นิยมใช้แต่ อาจจะใช้ในการค้นหาบางประเภท 41
  • 42. Algebra Rule  Relational Calculus  เป็นการใช้คณิตศาสตร์ของตรรกะเข้ามาช่วยในการค้นหา ข้อมูล  คา ตอบที่ได้คือแถวของข้อมูลจากความสัมพันธ์ที่ทา ให้ค่าของสมการ คณิตศาสตร์มีค่าเป็น จริง 42
  • 43. Constraints  คือ ข้อบังคับหรือเงื่อนไขในการอนุญาตให้เก็บเฉพาะข้อมูลที่ เหมาะสมลงในฐานข้อมูล เพื่อให้การเลือกข้อมูลจากฐานข้อมูลมี ความถูกต้อง 43
  • 44. Constraints ประเภทของเงื่อนไข  Key constraint มี 2 รูปแบบ คือ  คีย์หลัก ค่าจะไม่เป็น NULL และถูกใช้เป็นดัชนีในการเรียงลา ดับเสมอ  Unique เป็น key เอกลักษณ์อาจมีเพิ่ม นอกเหนือจาก คีย์หลักโดย จะถูกใช้เป็นดัชนีในการเรียงรายการต่อจากคีย์หลัก โดยอัตโนมัติ  Referential Integrity  เป็นการอ้างอิงข้อมูลจากความสัมพันธ์อื่น 44
  • 45. Constraints  Check เป็นการตรวจสอบค่าของข้อมูลในความสัมพันธ์ให้ เป็นไปตามเงื่อนไข เพื่อกรองเฉพาะข้อมูลที่เหมาะสมลงไปใน ฐานข้อมูล  Assertion เป็นการตรวจสอบค่าของข้อมูลโดยรวมของทุก ความสัมพันธ์ให้เป็นไปตามเงื่อนไข 45
  • 46. Cartesian Rule  Cartesian Product  Join 46
  • 47. Cartesian Rule  Cartesian Product คือ การนา แถวจากความสัมพันธ์ที่1 มาต่อกับแถวจากความสัมพันธ์ที่ 2  จา นวนแถวของความสัมพันธ์ผลลัพธ์ จะเท่ากับจา นวนแถวของ ความสัมพันธ์ที่ 1 X จา นวนแถวของความสัมพันธ์ที่ 2 47
  • 48. Cartesian Rule  Join คือ การรวมข้อมูลจากหลายความสัมพันธ์เข้าด้วยกัน มีหลาย แบบดังนี้  Theta-Join คือ การ join แบบปกติซึ่งทา ให้เกิดชื่อคอลัมน์ที่ซ้า กัน  Equi-Join คือ การ join แบบมีเงื่อนไข “เท่ากับ” (=) เท่านั้น และคอลัมน์ที่ซ้า กันจะถูกแสดงเพียงครั้งเดียว  Natural-Join คือ Equi-Join ที่ join ทุกคอลัมน์ที่ซ้า กัน 48
  • 50. ประเภทของคีย์ 1. คีย์หลัก (Primary Key) เป็น Attribute ที่มีคุณสมบัติของข้อมูลที่มีค่าเป็น เอกลักษณ์ หรือไม่มีค่าซ้า กัน โดยคุณสมบัตินั้นจะสามารถระบุว่าข้อมูลนั้นเป็นของ Tuple ใด
  • 51.
  • 52. ประเภทของคีย์ 2. คีย์ผสม (Composite Key)  การนา ฟิลด์ตั้งแต่ 2 ฟิลด์ขึ้นไปมารวมกัน  เพื่อให้มีคุณสมบัติเป็น Primary Key  เนื่องจากหากใช้ฟิลด์ใดฟิลด์หนึ่งเป็น PK จะส่งผลให้ข้อมูลในแต่ละ เรคอร์ดซ้า ซ้อนได้ 3001
  • 53. ประเภทของคีย์ 3. คีย์คู่แข่ง (Candidates Key) ในแต่ละ Relation อาจมี Attribute ที่ทา หน้าที่เป็นคีย์หลักได้ มากกว่าหนึ่ง Attribute โดยเรียก Attribute เหล่านี้ว่า คีย์คู่แข่ง (Candidate Key) เช่น นักศึกษาแต่ละคน มี รหัสประจา ตัวนักศึกษา รหัสประจา ตัวบัตรประชาชน โดยปกติแล้วจะเลือก Candidates Key ที่สั้นที่สุดเป็น Primary Key
  • 54. ประเภทของคีย์ โดยเราจะเรียก Candidate Key ที่ถูกเลือกมาใช้ เป็นคีย์หลักในตารางว่า “Primary Key” และเรียก Candidate Key ที่ไม่ถูกเลือกเป็นคีย์หลักว่า “คีย์ สำรอง (Alternate Key)”
  • 55. Key Rule (Continued) รหัส ชื่อ สกุล บัตร ประชาชน ชั้นเรียน สาขา คีย์คู่แข่ง Candidate Key คีย์หลัก (Primary Key) คีย์สำรอง Alternate Key
  • 56. Key Rule (Continued)  Candidate Key สามารถเป็น Primary Key และ Alternate Key ได้
  • 57. ประเภทของคีย์ 2. คีย์นอก (Foreign Key) คือคีย์ซึ่งประกอบด้วยแอทริบิวต์หรือกลุ่มของ แอตทริบิวต์ในรีเลชันหนึ่งซึ่งมีคุณสมบัติเป็นคีย์หลัก และไป ปรากฏอีกรีเลชันหนึ่ง เพื่อประโยชน์ในการเชื่อมโยงข้อมูล ซึ่งกันและกัน
  • 58. ประเภทของคีย์ 2. คีย์นอก หรือคีย์เชื่อมโยง (Foreign Key) เป็น Key ที่ใช้ในการเชื่อมโยงข้อมูลระหว่างตารางเข้าด้วยกัน เช่น ฐานข้อมูลของธนาคารแห่งหนึ่งประกอบด้วย 2 ตาราง คือ  ตารางบัญชีที่ลูกค้าเปิด (เลขประจาตัวลูกค้า, ชื่อ-นามสกุล และ ประเภทของบัญชี )  ตารางลูกค้า (เลขประจาตัวลูกค้า, ชื่อ-นามสกุล และที่อยู่) หากต้องการทราบว่าลูกค้ารายหนึ่งเปิดบัญชีใดบ้าง ก็เชื่อมโยงข้อมูล 2 ตารางเข้าด้วยกัน โดยใช้เลขประจำตัวลูกค้ำเป็น Foreign Key
  • 59. Data & Process Modeling