Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
KN
Uploaded by
Kochakorn Noiket
DOCX, PDF
1,915 views
หน่วยที่ 3 ระบบฐานข้อมูลเชิงสัมพันธ์
หน่วยที่ 3 ระบบฐานข้อมูลเชิงสัมพันธ์
Automotive
◦
Read more
1
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 19
2
/ 19
3
/ 19
4
/ 19
5
/ 19
6
/ 19
7
/ 19
8
/ 19
9
/ 19
10
/ 19
11
/ 19
12
/ 19
13
/ 19
14
/ 19
15
/ 19
16
/ 19
17
/ 19
18
/ 19
19
/ 19
More Related Content
PPTX
ฐานข้อมูลเชิงสัมพันธ์
by
กฤศอนันต์ ชาญเชี่ยว
PDF
ฐานข้อมูลเชิงสัมพันธ์
by
kunanya12
PPTX
บทที่ 3
by
nunzaza
PPTX
ฐานข้อมูลเชิงสัมพันธ์ 2
by
kanjana Pongkan
PPTX
บทที่ 6
by
nunzaza
PDF
05 ภาษาที่ใช้ในระบบการจัดการฐานข้อมูล
by
Nattipong Siangyen
PDF
การจัดการฐานข้อมูลเชิงสัมพันธ์2
by
sunisa3112
PDF
แบบรูป ลักษณะคุณสมบัติและข้อดีของฐานข้อมูลเชิงวัตถุ
by
AmIndy Thirawut
ฐานข้อมูลเชิงสัมพันธ์
by
กฤศอนันต์ ชาญเชี่ยว
ฐานข้อมูลเชิงสัมพันธ์
by
kunanya12
บทที่ 3
by
nunzaza
ฐานข้อมูลเชิงสัมพันธ์ 2
by
kanjana Pongkan
บทที่ 6
by
nunzaza
05 ภาษาที่ใช้ในระบบการจัดการฐานข้อมูล
by
Nattipong Siangyen
การจัดการฐานข้อมูลเชิงสัมพันธ์2
by
sunisa3112
แบบรูป ลักษณะคุณสมบัติและข้อดีของฐานข้อมูลเชิงวัตถุ
by
AmIndy Thirawut
What's hot
PDF
Lecture1 การประมวลผลข้อมูล และฐานข้อมูล
by
skiats
PDF
การจัดการฐานข้อมูล
by
Yongyut Nintakan
PDF
บทที่ 3 ฐานข้อมูลเชิงสัมพันธ์
by
ครูสม ฟาร์มมะนาว
PDF
ระบบฐานข้อมูลเบื้องต้น
by
Tophuto Piyapan
PDF
การใช้โปรแกรม Access เบื้องต้น
by
techno UCH
PPTX
บทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูล
by
Rungnapa Rungnapa
PDF
สถาปัตยกรรมฐานข้อมูล
by
skiats
PDF
แนวคิดแผนภาพกระแสข้อมูล
by
Shengyou Lin
PPTX
บทที่ 1
by
nunzaza
PPT
SA Chapter 6
by
Nuth Otanasap
PPTX
บทที่ 10
by
nunzaza
PPTX
บทที่7
by
nunzaza
PDF
Lesson 1
by
Thanchanok Phongchareon
PDF
ความรู้พื้นฐานเกี่ยวกับฐานข้อมูล
by
kruthanyaporn
PPT
Database
by
Edz Chatchawan
PDF
แนวการสอบ ม.4
by
ปิยะดนัย วิเคียน
PDF
การจัดการฐานข้อมูล
by
ABELE Snvip
PDF
งานนำเสนอ การจัดการฐานข้อมุล
by
chanoot29
PDF
ความรู้ทั่วไปเกี่ยวกับระบบฐานข้อมูล
by
Watuka Wannarun
PDF
บทที่ 1
by
Rungnapa Rungnapa
Lecture1 การประมวลผลข้อมูล และฐานข้อมูล
by
skiats
การจัดการฐานข้อมูล
by
Yongyut Nintakan
บทที่ 3 ฐานข้อมูลเชิงสัมพันธ์
by
ครูสม ฟาร์มมะนาว
ระบบฐานข้อมูลเบื้องต้น
by
Tophuto Piyapan
การใช้โปรแกรม Access เบื้องต้น
by
techno UCH
บทที่ 1 แนวคิดทั่วไปเกี่ยวกับฐานข้อมูล
by
Rungnapa Rungnapa
สถาปัตยกรรมฐานข้อมูล
by
skiats
แนวคิดแผนภาพกระแสข้อมูล
by
Shengyou Lin
บทที่ 1
by
nunzaza
SA Chapter 6
by
Nuth Otanasap
บทที่ 10
by
nunzaza
บทที่7
by
nunzaza
Lesson 1
by
Thanchanok Phongchareon
ความรู้พื้นฐานเกี่ยวกับฐานข้อมูล
by
kruthanyaporn
Database
by
Edz Chatchawan
แนวการสอบ ม.4
by
ปิยะดนัย วิเคียน
การจัดการฐานข้อมูล
by
ABELE Snvip
งานนำเสนอ การจัดการฐานข้อมุล
by
chanoot29
ความรู้ทั่วไปเกี่ยวกับระบบฐานข้อมูล
by
Watuka Wannarun
บทที่ 1
by
Rungnapa Rungnapa
Similar to หน่วยที่ 3 ระบบฐานข้อมูลเชิงสัมพันธ์
PDF
การจัดการฐานข้อมูล
by
Orapan Chamnan
PDF
2. ใบความรู้ที่ 1
by
ครูเพชร
PDF
การจัดการฐานข้อมูลเชิงสัมพันธ์2
by
sunisa3112
PDF
ใบความรู้ที่ 1การออกแบบฐานข้อมูล
by
Ko Kung
PDF
หน่วยที่ 3 การสร้างตาราง
by
kruthanyaporn
PPTX
Microsoft access
by
komolpalin
PDF
2. ใบความรู้ที่ 1
by
ครูเพชร
PPTX
บทที่ 5
by
nunzaza
PPTX
งานคอม#2
by
Worapod Khomkham
PDF
ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล
by
kruthanyaporn
PPTX
งานกลุ่ม ฐานข้อมูลเชิงสัมพันธ์ ม.2/4 เลขที่ 1-18-26-29-31-34-40
by
KittinanSuksom2
PPTX
งานกลุ่ม3ฐานข้อมูลเชิงสัมพันธ์
by
Earn'kanittha Thunyadee
PDF
การสร้างตาราง
by
kruthanyaporn
PDF
Table
by
kruthanyaporn
PPTX
Slide3
by
Rungnapa Rungnapa
PPT
Int3204 charapter1
by
Khwanchai Phunchanat
PDF
SlideShare เรื่อง การออกแบบฐานข้อมูล
by
Nithiwan Rungrangsri
PPT
Chapter 1 2
by
Mafia02
PDF
04 the entities relationship model
by
Opas Kaewtai
PPT
Database architecture
by
Nittaya Intarat
การจัดการฐานข้อมูล
by
Orapan Chamnan
2. ใบความรู้ที่ 1
by
ครูเพชร
การจัดการฐานข้อมูลเชิงสัมพันธ์2
by
sunisa3112
ใบความรู้ที่ 1การออกแบบฐานข้อมูล
by
Ko Kung
หน่วยที่ 3 การสร้างตาราง
by
kruthanyaporn
Microsoft access
by
komolpalin
2. ใบความรู้ที่ 1
by
ครูเพชร
บทที่ 5
by
nunzaza
งานคอม#2
by
Worapod Khomkham
ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล
by
kruthanyaporn
งานกลุ่ม ฐานข้อมูลเชิงสัมพันธ์ ม.2/4 เลขที่ 1-18-26-29-31-34-40
by
KittinanSuksom2
งานกลุ่ม3ฐานข้อมูลเชิงสัมพันธ์
by
Earn'kanittha Thunyadee
การสร้างตาราง
by
kruthanyaporn
Table
by
kruthanyaporn
Slide3
by
Rungnapa Rungnapa
Int3204 charapter1
by
Khwanchai Phunchanat
SlideShare เรื่อง การออกแบบฐานข้อมูล
by
Nithiwan Rungrangsri
Chapter 1 2
by
Mafia02
04 the entities relationship model
by
Opas Kaewtai
Database architecture
by
Nittaya Intarat
หน่วยที่ 3 ระบบฐานข้อมูลเชิงสัมพันธ์
1.
หน่วยที่ 3 ระบบฐานข้อมูลเชิงสัมพันธ์ 3.1.
ความหมายของฐานข้อมูลเชิงสัมพันธ์ ระบบฐานข้อมูลเชิงสัมพันธ์(Relational Database) เป็นฐานข้อมูลที่ใช้โมเดลเชิงสัมพันธ์ (Relational Database Model) ซึ่งผู้คิดค้นโมเดลเชิงสัมพันธ์นี้คือDr. E.F.Codd โดยใช้หลักพื้นฐานทางคณิตศาสตร์ เนื่องด้วยแนวคิดของแบบจาลองแบบนี้มีลักษณะที่คนใช้กันทั่วกล่าวคือมีการเก็บเป็นตาราง ทาให้ง่ายต่อการเข้าใจและการประยุกต์ใช้งานด้วยเหตุนี้ ระบบฐานข้อมูลแบบนี้จึงที่ได้รับความนิยมมากที่สุดในแง่ของ entity แบบจาลองแบบนี้คือ แฟ้มข้อมูลในรูปตารางและ attribute ก็เปรียบเหมือนเขตข้อมูล ส่วนความสัมพันธ์คือความสัมพันธ์ระหว่าง entity ฐานข้อมูลเชิงสัมพันธ์ คือการเก็บข้อมูลในรูปของตาราง(Table) หลายๆตารางที่มีความสัมพันธ์กันในแต่ละตารางแบ่งออกเป็นแถวๆ และในแต่ละแถวจะแบ่งเป็นคอลัมน์(Column)ในทางทฤษฎีจะมีคาศัพท์เฉพาะแตกต่างออกไป เนื่องจากแบบจาลองแบบนี้เกิดจากทฤษฎีทางคณิตศาสตร์เรื่องเซ็ท(Set)ดังนั้น เราจะมีคาศัพท์เฉพาะดังตารางที่ 3.1นี้ ตารางที่ 3.1 คาศัพท์เฉพาะที่ใช้ในระบบฐานข้อมูลเชิงสัมพันธ์ ศัพท์เฉพาะ ศัพท์ทั่วไป รีเลชั่น(Relation) ตาราง(Table) ทูเปิล(Tuple) แถว(Row) หรือ เรคคอร์ด (Record) หรือ ระเบียน แอททริบิวท์(Attribute) คอลัมน์ (Column) หรือฟิลด์ (Field) คาร์ดินัลลิติ้ (Cardinality) จานวนแถว(Number of rows) ดีกรี (Degree) จานวนแอททริบิวท์(Number of attribute) คีย์หลัก(Primary key) ค่าเอกลักษณ์(Unique identifier)
2.
โดเมน (Domain) ขอบข่ายของค่าของข้อมูล(Poolof
legal values) รูปที่ 3.1 แสดงรายละเอียดของส่วนประกอบต่าง ๆ ของโมเดลแบบความสัมพันธ์ อาจจะเขียนในรูปสมการดังต่อไปนี้ R(รหัสประจาตัวประชาชน,ชื่อ,นามสกุล,วันเกิด) เนื่องจากแต่ละตารางสามารถมีความสัมพันธ์กันได้ดังที่กว่าไว้ในข้างต้น ทาให้การเก็บข้อมูลในรูปแบบนี้ มีความคล่องตัวสูงเพราะเราสามารถแยกเก็บข้อมูลใน หลายตารางโดยอาศัยความสัมพันธ์ดังกล่าวและสามารถสืบค้นได้จากรหัสพิเศษที่เรียกว่า กุญแจ(key)ดังรูปที่ 3.2 รูปที่ 3.2 แสดงตัวอย่างการสืบค้นข้อมูลโดยอาศัยความสัมพันธ์
3.
Dr.E.F.Coddได้กาหนดส่วนประกอบของโมเดลเชิงสัมพันธ์นี้ แบ่งเป็น3ส่วนได้แก่ 1. ส่วนที่เกี่ยวข้องกับโครงสร้างของข้อมูล 2.
ส่วนที่เกี่ยวกับการควบคุมความถูกต้องให้กับข้อมูล 3. ส่วนในการจัดการกับข้อมูล 3.2. โครงสร้างของข้อมูล (Data Structure) 3.2.1. Relation โครงสร้างของฐานข้อมูลเชิงสัมพันธ์จะอยู่ในลักษณะของตาราง 2มิติ ประกอบด้วยทางด้านแถวและคอลัมน์ซึ่งจะเรียกว่ารีเลชัน(Relation)โดยทั่ว ๆ ไป Relation หนึ่ง ๆ จะมีคุณสมบัติต่างๆดังนี้ 1) ไม่มี Tuples คู่ใดๆ เลยที่ซ้ากัน(No duplicate tuples) 2) ลาดับที่ของ Tuplesไม่มีความสาคัญ 3) ลาดับที่ของ Attributes ไม่มีความสาคัญ 4) ค่าของAttribute จะเป็นค่าเดี่ยวๆ(Atomic) นั่นคือ ค่าของข้อมูลที่ปรากฏอยู่ในตารางจะเป็นค่าๆเดียวเป็นลิสต์ของค่าหลายๆค่าไม่ได้ซึ่ง Relation ที่มีคุณสมบัติข้อนี้จะถูกเรียกว่าเป็นRelationที่อยู่ในรูปแบบ Normal form 5) ค่าของข้อมูลในแต่ละ Attribute จะบรรจุค่าของข้อมูลประเภทเดียวกัน ชนิดของRelations ในระบบจัดการฐานข้อมูลทั่วๆไป Relation อาจจาแนกออกได้เป็น2 ประเภทดังนี้คือ 1) Relation หลัก (Base Relation) เป็น Relation ที่ถูกกาหนดขึ้นเพื่อเก็บข้อมูลและเพื่อนาข้อมูลไปใช้เมื่อมีการสร้าง Relation โดยใช้Data Definition Language เช่นใน SQL คาสั่งCREATETABLE เป็นการสร้าง Relation หลักหลังจากนั้นก็จะทาการเก็บข้อมูลเพื่อการเรียกใช้ข้อมูลในภายหลัง Relation หลักจะเป็นตารางที่จัดเก็บข้อมูลจริงไว้
4.
2) วิว(View) หรืออาจเรียกอีกอย่างหนึ่งว่า
Relation สมมุติ (Virtual Relation) เป็น Relation ที่ถูกสร้างขึ้นตามความต้องการใช้ข้อมูลของผู้ใช้แต่ละคนเนื่องจาก ผู้ใช้แต่ละคนอาจต้องการใช้ข้อมูลในลักษณะที่แตกต่างกัน จึงทาการกาหนดวิวของตัวเองขึ้นมาจาก Relationหลักเพื่อความสะดวกในการใช้ข้อมูล และช่วยให้การรักษาความปลอดภัยของฐานข้อมูลทาได้ง่ายขึ้นRelation ที่ถูกสมมติขึ้นมานี้จะไม่มีการเก็บข้อมูลจริงๆในระบบฐานข้อมูล ลักษณะของรีเลชั่นแสดงดังรูปที่ 3.3 รูปที่ 3.3 โครงสร้างของฐานข้อมูลเชิงสัมพันธ์ จากรูปที่ 3.3ตารางข้อมูลทั้งหมดจะเรียกว่าRelationแต่โดยส่วนใหญ่นิยมเรียกว่า Table หรือ ตารางเนื่องจากโครงสร้างการจัดเก็บเป็นแบบตารางส่วนข้อมูลในแต่ละแถวจะเรียกว่าทูเพิล (Tuple) ส่วนข้อมูลในแต่ละคอลัมน์จะเรียกว่าแอตทริบิวส์(Attribute) ดังตัวอย่างมี4 แอตทริบิวส์คือ SID, Sname, GPA, Major เขียนเป็นสมการได้ดังนี้ Student(SID,Sname,GPA,Major) 3.2.2. Domain โดเมน (Domain) คือการกาหนดขอบเขตและชนิดของข้อมูลเพื่อป้ องกันไม่ให้ข้อมูลที่ผู้ใช้จัดเก็บ มีความผิดพลาดไปจากความเป็นจริงที่ควรจะเป็นตัวอย่างดังรูปที่ 3.4
5.
รูปที่ 3.4 โดเมนของข้อมูล จากรูปที่
3.4เป็นการกาหนดโดเมนให้กับแอตทริบิวส์ข้อมูล GPA ซึ่งเป็นค่าเกรดเฉลี่ย ของนักศึกษาซึ่งค่าเกรดเฉลี่ยจะต้องมีค่าอยู่ระหว่าง0-4 ดังนั้นจึงต้องกาหนดโดเมนให้กับแอตทริบิวส์GPAเพื่อไม่ให้ข้อมูลผิดพลาดไปจากนี้ 3.2.3. คีย์ (Key) คีย์คือแอตทริบิวส์หรือ กลุ่มของแอตทริบิวส์ที่สามารถแยกความแตกต่างของข้อมูล ในแต่ละทูเพิลได้หรือแอตทริบิวส์ที่ข้อมูลในแอตทริบิวส์นั้นต้องมีข้อมูลที่ไม่ซ้ากันซึ่งคีย์ มีอยู่หลายชนิดด้วยกันได้แก่ 3.2.3.1. คีย์อย่างง่าย(Simple key) หมายถึง keyที่ประกอบด้วยattribute เดียว 3.2.3.2. คีย์ประกอบ (Combine key หรือ Composite key) หมายถึงkey ที่ ประกอบด้วย attribute มากกว่า1attribute 3.2.3.3. คีย์คู่แข่ง(Candidate Key) คือคีย์ที่เล็กที่สุดที่แยกความแตกต่างของข้อมูล แต่ละทูเพิลได้ยกตัวอย่างเช่นในรีเลชัน Student มีข้อมูลที่สามารถเป็นคีย์คู่แข่งคือแอตทริบิวส์ รหัสนักศึกษา และการใช้แอตทริบิวส์ชื่อรวมกับนามสกุล ซึ่งทั้งสองแบบสามารถระบุความแตกต่างของข้อมูลแต่ละทูเพิลได้ 3.2.3.4. คีย์หลัก (Primary Key) คือคีย์คู่แข่งซึ่งได้เลือกมาเพื่อใช้กาหนดให้เป็นค่าคีย์หลักของ รีเลชันซึ่งข้อมูลที่เป็นคีย์หลักนั้นจะต้องมีข้อมูลที่ไม่ซ้ากันและมักจะเลือกคีย์คู่แข่ง ที่มีขนาดเล็กมาเป็นคีย์หลักตัวอย่างเช่นการเลือกแอตทริบิวส์รหัสนักศึกษามาเป็นค่าคีย์หลัก เนื่องจากมีขนาดเล็กกว่าแอตทริบิวส์ชื่อรวมกับนามสกุล ซึ่งจะทาให้การทางานเร็วกว่า เนื่องจากมีขนาดเล็กกว่า
6.
3.2.3.5. คีย์รอง(Alternate Key
หรือ Secondarykey) คือคีย์คู่แข่งอื่นๆที่ไม่ได้ ถูกเลือกมาใช้งานยกตัวอย่างเช่นแอตทริบิวส์ชื่อรวมกับนามสกุล ซึ่งไม่ได้ถูกเลือกให้เป็นคีย์หลักของรีเลชันก็จะกลายเป็น Alternate Key 3.2.3.6. คีย์นอก (Foreign Key)เป็นคีย์ที่ใช้เชื่อมความสัมพันธ์ของรีเลชันตัวอย่างแสดงดังรูปที่ 3.5 รูปที่ 3.5 คีย์หลักและคีย์นอก จากรูปที่ 3.5รีเลชัน Student มีค่าคีย์หลักคือSID ซึ่งเป็นรหัสนักศึกษา โดยข้อมูลของรหัสนักศึกษาจะต้องมีข้อมูลที่ไม่ซ้ากันและมีคีย์นอกของตารางคือแอตทริบิวส์ Major ซึ่งเชื่อมโยงความสัมพันธ์ไปยังแอตทริบิวส์Major ของรีเลชันMajor ซึ่งข้อมูลทุกตัวของแอตทริบิวส์Majorในรีเลชัน Student จะต้องมีอยู่ในแอตทริบิวส์Major ของรีเลชันMajor ส่วนตาราง Major มีคีย์หลักคือแอตทริบิวส์Major 3.2.3.7. ซุปเปอร์คีย์ (Super key) หมายถึง attribute หรือ เซ็ทของ attribute ที่ สามารถบ่งบอกว่าแต่ละแถว(Tuple)แตกต่างกันในทุกๆความสัมพันธ์ จะต้องมีอย่างน้อย หนึ่ง super key ในเซ็ทของ attributes 3.3. กฎที่เกี่ยวข้องกับการรักษาความถูกต้อง กฎที่ใช้สาหรับรักษาความถูกต้องของข้อมูลแบ่งออกเป็น 2กฎคือกฎที่เกี่ยวข้องกับเอนทิตี้ และกฎที่เกี่ยวข้องกับการเชื่อมโยงความสัมพันธ์ของเอนทิตี้ )
7.
3.3.1. กฎความบูรณภาพของเอนทิตี้(Entity Integrity
Rule) กฎความบูรณภาพของเอนทิตี้ เป็นกฎที่ใช้กาหนดเพื่อให้ข้อมูลของเอนทิตี้ มีความถูกต้อง ซึ่งกล่าวไว้ว่า"แอตทริบิวส์ที่ทาหน้าที่เป็นคีย์หลักของรีเลชันไม่สามารถมีค่าเป็นค่าว่างได้ (Null Value)" และจะต้องมีคุณสมบัติที่เป็นเอกลักษณ์(Identity) คือสามารถระบุข้อมูลแอตทริบิวส์อื่นๆ ที่อยู่ในทูเพิลเดียวกันได้ 3.3.2. กฎความบูรณภาพของการอ้างอิง(Referential Integrity Rule) กฎความบูรณภาพของการอ้างอิง คือกฎที่ใช้รักษาความถูกต้องของข้อมูลที่มีความสัมพันธ์กันของเอนทิตี้ ซึ่งได้กล่าวไว้ว่า "ค่าของคีย์นอกในรีเลชันจะต้องมีข้อมูลอยู่ในอีก รีเลชันหนึ่ง ที่คีย์นอกของรีเลชันนั้นอ้างอิงถึง" ในบางกรณีคีย์นอกอาจเป็นค่าว่างได้ถ้านโยบายขององค์กรอนุญาตให้ค่าคีย์นอกเป็นค่าว่างได้ กรณีหากมีการลบหรือแก้ไขข้อมูลในรีเลชันที่ถูกอ้างอิงถึง ซึ่งจะทาให้สูญเสียความบูรณภาพของข้อมูลดังตัวอย่างรูปที่ 3.6 หากมีการแก้ไขหรือลบข้อมูลของรีเลชัน Majorในแอตทริบิวส์Major ซึ่งมีความสัมพันธ์อยู่กับรีเลชันStudent จะทาให้ความสัมพันธ์ของข้อมูลเสียหาย ดังนั้นจึงต้องเลือกการกระทาเพื่อไม่ให้ความสัมพันธ์ของข้อมูลสูญเสียไปดังนี้ กรณีการแก้ไขข้อมูล 1. ห้ามทาการแก้ไขข้อมูลในรีเลชันที่ถูกอ้างถึงนั้นเนื่องจากจะทาให้ข้อมูลในรีเลชันที่อ้างอิงมา ไม่สามารถอ้างอิงข้อมูลได้ 2. อนุญาตให้ทาการแก้ไขข้อมูลในรีเลชันที่ถูกอ้างอิงถึงได้แต่จะต้องตามไปแก้ไขข้อมูล ในรีเลชันที่อ้างอิงมาให้ตรงกับข้อมูลที่แก้ไขใหม่ทั้งหมด 3. อนุญาตให้ทาการแก้ไขข้อมูลในรีเลชันที่ถูกอ้างอิงถึงได้ โดยการแก้ไขข้อมูลในรีเลชัน ที่อ้างอิงมาให้มีค่าเป็น ค่าว่าง
8.
รูปที่ 3.6 รีเลชันที่มีความสัมพันธ์กัน กรณีการลบข้อมูล 1.
ห้ามทาการลบข้อมูลในรีเลชันที่ถูกอ้างถึงนั้นเนื่องจากจะทาให้ข้อมูลในรีเลชันที่อ้างอิงมา ไม่สามารถอ้างอิงข้อมูลได้ 2. อนุญาตให้ทาการลบข้อมูลในรีเลชันที่ถูกอ้างอิงถึงได้แต่จะต้องตามไปลบข้อมูลในรีเลชัน ที่อ้างอิงมาทั้งหมด 3. อนุญาตให้ทาการลบข้อมูลในรีเลชันที่ถูกอ้างอิงถึงได้โดยการแก้ไขข้อมูลในรีเลชัน ที่อ้างอิงมาให้มีค่าเป็น ค่าว่าง(Nullvalue) ค่าว่าง(Null Values) ค่าของAttribute อาจจะเป็นค่าว่าง(Null) คือไม่มีค่าหรือยังไม่ทราบค่าได้ ตัวอย่างเช่น จานวนไข่ของนกกระจอกเทศจะสามารถบอกได้เมื่อนกกระจอกเทศออกไข่แล้ว แต่ยังไม่ทราบค่าในขณะที่จานวนไข่ของช้างนั้นไม่มีค่าเป็นต้น 3.4. การจัดการกับข้อมูล (Data manipulation) Dr. E.F.Coddได้นาทฤษฎีของเซทซึ่งเป็นทฤษฎีทางคณิตศาสตร์มาใช้ในการจัดการกับ ข้อมูลของฐานเชิงสัมพันธ์ซึ่งมีอยู่หลายการกระทาด้วยกันในบทนี้จะกล่าวโดยย่อๆเท่านั้น เนื่องจากเป็นเนื้อหาทางทฤษฎี ซึ่งการนาไปใช้งานจริงนั้นจะพูดถึงในบทที่เกี่ยวกับคาสั่งที่ใช้ จัดการฐานข้อมูลซึ่งเนื้อหาจะมีความใกล้เคียงกันการกระทาเหล่านี้ได้แก่
9.
3.4.1. Restrict คาว่าRestrict เป็นโอเปอเรเตอร์ทางคณิตศาสตร์ที่ใช้ในการเลือกข้อมูลจากรีเลชั่นหนึ่งๆ ที่มีเงื่อนไขตรงตามที่ระบุไว้กล่าวอีกนัยหนึ่งคือ ใช้ในการแสดงข้อมูลของทูเพิลที่เป็นไปตามเงื่อนไขที่ระบุไว้้ รูปแบบ ชื่อรีเลชั่น
WHERE<COMPARISION> COMPARISION ในที่นี้ หมายถึงเงื่อนไขของข้อมูลที่ต้องการเรียกดู ซึ่งจะระบุชื่อแอททริบิวต์ และค่าเฉพาะที่ต้องการดูข้อมูลโดยมีเครื่องหมายที่ประกอบการระบุเงื่อนไขเช่น=(เท่ากับ) < (น้อยกว่า) > (มากกว่า)<> (ไม่เท่ากับ)เป็นต้น ในกรณีที่มีเงื่อนไขมากกว่าหนึ่งเงื่อนไขอาจใช้คาว่าOR(หรือ) AND (และ) ประกอบกันเป็นเงื่อนไขที่ต้องการได้ ตัวอย่างจากตารางให้แสดงรายละเอียดของนักศึกษาที่อยู่นครราชสีมา นักศึกษา รหัส ชื่อ จังหวัด B001 แดง นครราชสีมา B002 ดา กรุงเทพฯ B003 เขียว สระบุรี B004 ขาว นครราชสีมา นักศึกษา WHERE จังหวัด = 'นครราชสีมา' ผลที่ได้ ดังนี้
10.
นักศึกษา รหัส ชื่อ จังหวัด B001
แดง นครราชสีมา B004 ขาว นครราชสีมา 3.4.2. Project คาว่าProject เป็นโอเปอเรเตอร์ทางคณิตศาสตร์ที่ใช้ในการแสดงข้อมูลเพียงบางแอททริบิวต์จากรีเลชั่นหนึ่ง ๆ ซึ่งการแสดงข้อมูลอาจจะเป็นแบบมีเงื่อนไขหรือไม่มีก็ได้ รูปแบบ ชื่อรีเลชั่น [ชื่อแอตทริบิวต์1, ชื่อแอตทริบิวต์2, ...] หรือ ชื่อรีเลชั่น WHERE<COMPARISION> [ชื่อแอตทริบิวต์1, ...] ตัวอย่างจากตารางนักศึกษาที่ผ่านมาให้แสดงชื่อจังหวัดที่นักศึกษาอยู่ นักศึกษา [จังหวัด] ผลที่ได้ ดังนี้ จังหวัด นครราชสีมา กรุงเทพฯ สระบุรี นครราชสีมา
11.
ตัวอย่างจากตารางนักศึกษาที่ผ่านมาให้แสดงชื่อนักศึกษาและชื่อจังหวัดเฉพาะนครราชสีมา (นักศึกษา WHERE จังหวัด=
'นครราชสีมา' [ชื่อ,จังหวัด] ผลที่ได้ ดังนี้ ชื่อ จังหวัด แดง นครราชสีมา ขาว นครราชสีมา 3.4.3. Product Product หรือ Cartesian Product เป็นการกระทาเพื่อแสดงข้อมูลที่เป็นไปได้ทุกกรณีของการ จับคู่กันระหว่าง 2รีเลชันดังตัวอย่างรูปที่ 3.7 รูปแบบ ชื่อรีเลชั่นแรกTIMES ชื่อรีเลชั่นสอง] จากตารางต่อไปนี้ นักศึกษา TIMESวิชา ผลที่ได้คือ
12.
หรือแสองสมการตามรูปที่ 3.7 รูปที่ 3.7
การกระทา Product 3.4.4. Union คือการแสดงข้อมูลตามลักษณะทฤษฎีการUnionของเซต คือส่วนของข้อมูลทูเพิลที่ต่างกันของรีเลชันจะนามาทั้งหมด ส่วนข้อมูลทูเพิลที่เหมือนกันของรีเลชันจะนามาจากรีเลชันเดียวโดยรีเลชั่นที่จะมาUnionกัน ต้องเป็นรีเลชั่นที่ไปกันได้(Compatible Relation) นั่นคือ จะต้องมีจานวนและชื่อแอททริบิวต์ที่เหมือนกันและจัดเรียงแอททริบิวต์ในตารางที่เหมือนกัน (จากซ้ายไปขวา)ดังตัวอย่างรูปที่ 3.8ข้อมูลส่วนที่แรเงาคือข้อมูลผลลัพธ์ของการทา Union รูปที่ 3.8 การกระทา Union
13.
รูปแบบ ชื่อรีเลชั่นแรกUNION ชื่อรีเลชั่นสอง ตัวอย่างจากตาราง AและBเป็นดังนี้
คือ A รหัส ชื่อ จังหวัด B001 แดง นครราชสีมา B002 ดา กรุงเทพฯ B003 เขียว สระบุรี B004 ขาว นครราชสีมา B รหัส ชื่อ จังหวัด B001 แดง นครราชสีมา B005 ฝน กรุงเทพฯ AUNION B ผลที่ได้คือ รหัส ชื่อ จังหวัด<>/th> B001 แดง นครราชสีมา B002 ดา กรุงเทพฯ B003 เขียว สระบุรี B004 ขาว นครราชสีมา B005 ฝน กรุงเทพ
14.
3.4.5. Intersection คาว่าIntersection เป็นโอเปอเรเตอร์ทางคณิตศาสตร์ที่ใช้ในการแสดงข้อมูลที่มีอยู่ในทั้งสองรีเลชั่น
หรือมากกว่า โดยรีเลชั่นที่จะมาIntersection กันจะเป็นรีเลชั่นที่ไปกันได้(Compatible Relation) ดังตัวอย่างรูปที่ 3.9ข้อมูลส่วนที่แรเงาคือข้อมูลผลลัพธ์ของการทา Intersection รูปที่ 3.9 การกระทา Intersection รูปแบบ ชื่อรีเลชั่นแรกINTERSECTชื่อรีเลชั่นสอง จากตัวอย่างตาราง AและBที่ผ่านมา AINTERSECT B ผลที่ได้คือ รหัส ชื่อ จังหวัด<>/th> B001 แดง นครราชสีมา 3.4.6. Difference คือการแสดงข้อมูลทูเพิลของรีเลชันซึ่งไม่มีอยู่ในอีกรีเลชันหนึ่งตามทฤษฎีการ Difference ของเซตเช่นถ้านาข้อมูลรีเลชันA- รีเลชัน Bข้อมูลที่ได้คือข้อมูลของรีเลชันAที่ไม่มีในรีเลชัน B ซึ่งจะให้ผลลัพธ์ที่แตกต่างกันกับ รีเลชันB-รีเลชัน A โดยที่รีเลชั่นทั้งสองเป็นรีเลชั่นที่ไปกันได้(Compatible Relation) ดังตัวอย่างรูปที่ 3.10 ซึ่งผลลัพธ์ของการทาDifference คือส่วนที่แรเงา
15.
รูปที่ 3.10 การกระทา
Difference รูปแบบ ชื่อรีเลชั่นแรกMINUS ชื่อรีเลชั่นสอง จากตัวอย่างตาราง AและBที่ผ่านมา AMINUS B ผลที่ได้คือ รหัส ชื่อ จังหวัด<>/th> B002 ดา กรุงเทพฯ B003 เขียว สระบุรี B004 ขาว นครราชสีมา 3.4.7. Join เป็นการกระทาเพื่อแสดงข้อมูลที่เป็นไปได้ทั้งหมดที่เกิดจากการเชื่อมโยงข้อมูลของ 2รีเลชั่น ที่มีค่าของข้อมูลในAttribute ที่กาหนดเหมือนกันโดยAttribute นี้อาจเป็นเพียงAttribute เดียวหรือมากกว่าก็ได้แต่ที่สาคัญ Attribute นี้ จะต้องมีชื่อที่เหมือนกันและมีDomain ของข้อมูลเดียวกัน
16.
รูปแบบ ชื่อรีเลชั่น JOIN ชื่อรีเลชั่น ตัวอย่างจากตาราง
XและYที่กาหนดให้ต่อไปนี้ XJOIN Y ผลที่ได้คือ เมื่อทาคาสั่ง XJOIN Y เนื่องจากมีค่าของแอททริบิวต์"City"ที่เหมือนกัน จึงใช้Attribute นี้ เชื่อมโยงข้อมูล เช่นถ้าพิจารณาเฉพาะทูเพิลของ"B001"ของรีเลชั่นXซึ่งมีค่าแอททริบิวต์ "City" เท่ากับ"Korat" มา Join กับทูเพิลต่างๆในรีเลชั่น Y ผลที่ได้ได้แก่ทุกๆ ทูเพิลในรีเลชั่น Yที่มีค่าแอททริบิวต์"City" เท่ากับ"Korat" ในการ Join ระหว่างรีเลชั่นใดๆ นั้น ลาดับในการJoin จะไม่มีผลต่อผลลัพธ์ที่เกิดจากการJoin นั้น ดังนั้นไม่ว่าจะใช้คาสั่ง XJOIN Y หรือ YJOIN X ย่อมให้ผลลัพธ์เช่นเดียวกัน
17.
3.4.8. Division เป็นการแสดงข้อมูลจากสองรีเลชั่น โดยที่รีเลชั่นทั้งสองมีแอททริบิวต์อย่างน้อยหนึ่งแอททริบิวต์ที่เหมือนกันผลลัพธ์ที่ได้ จะเป็นค่าของแอททริบิวต์จากรีเลชั่นที่มีจานวนแอททริบิวต์มากกว่า ซึ่งเป็นค่าของแอททริบิวต์หนึ่งที่มีค่าหนึ่งที่จับคู่ตรงกับทุกค่าของแอททริบิวต์ที่เหมือนกันนี้ใน อีกรีเลชั่นที่มีแอททริบิวต์น้อยกว่ารูปแบบ ชื่อรีเลชั่น
DIVIDEBY ชื่อรีเลชั่น ตัวอย่างจากตาราง OและP ตัวอย่างถ้ารีเลชั่นP คือ
18.
ตัวอย่างถ้ารีเลชั่นP คือ
19.
จัดทาโดย นายบุญญฤทธิ์ ชอบทาดี เลขที่
6 นายรัชชานนท์ สุดยอด เลขที่ 8 นายวรวุฒิ แก้วสะอาด เลขที่ 11 นายพีรพัฒน์ สงเคราะห์ เลขที่ 13 นายกฤศอนันต์ ชาญเชี่ยว เลขที่ 16 นายธีรพล กุลวุฒิ เลขที่ 17 ชั้นมัธยมศึกษาปีที่ 5/3
Download