ฐฐฐฐฐฐฐฐฐฐฐฐฐ ฐฐฐฐฐฐฐฐ Relation Data Model
Dec 31, 2015
ฐานข้�อมู�ลเชิ�งสั�มูพั�นธ์�
Relation Data Model
เน��อหาKey RuleKey RuleAlgebra RuleAlgebra RuleConstraintsConstraintsCartesian RuleCartesian Rule
Key Ruleแนวคิ�ดเรื่��องโมูเดลเชิ�งแนวคิ�ดเรื่��องโมูเดลเชิ�ง
สั�มูพั�นธ์�สั�มูพั�นธ์�คิ�ย์�คิ�ย์�พั��นฐาน พั��นฐาน Relational Relational AlgebraAlgebra
Key Rule แนวคิ�ดเรื่องโมเดลเชิ�งสั�มพั�นธ์�แนวคิ�ดเรื่องโมเดลเชิ�งสั�มพั�นธ์�
คิวามสั�มพั�นธ์�ของฐานข�อม�ลจะอยู่��ในรื่�ปแบบของตารื่างคิวามสั�มพั�นธ์�ของฐานข�อม�ลจะอยู่��ในรื่�ปแบบของตารื่าง ชิอของตารื่างคิอ ชิอของคิวามสั�มพั�นธ์�ชิอของตารื่างคิอ ชิอของคิวามสั�มพั�นธ์� แต�ละคิอล�มน�ของตารื่างคิวามสั�มพั�นธ์� เรื่$ยู่กว�า แอททรื่�แต�ละคิอล�มน�ของตารื่างคิวามสั�มพั�นธ์� เรื่$ยู่กว�า แอททรื่�
บ�วบ�ว (attribute) (attribute) ของคิวามสั�มพั�นธ์�ของคิวามสั�มพั�นธ์� คิ�าและขอบเขตของข�อม�ลของแอททรื่�บ�วเรื่$ยู่กว�า โดเมน คิ�าและขอบเขตของข�อม�ลของแอททรื่�บ�วเรื่$ยู่กว�า โดเมน
(Domain)(Domain) แต�ละแถวของตารื่างคิวามสั�มพั�นธ์� เรื่$ยู่กว�า แถว หรื่อ ท�แต�ละแถวของตารื่างคิวามสั�มพั�นธ์� เรื่$ยู่กว�า แถว หรื่อ ท�
เพั�ลเพั�ล (tuple) (tuple) ของคิวามสั�มพั�นธ์�ของคิวามสั�มพั�นธ์�
Key Rule
คิ ณสัมูบั�ติ�ข้องคิวามูสั�มูพั�นธ์�คิ ณสัมูบั�ติ�ข้องคิวามูสั�มูพั�นธ์�ล)าด�บของแถวและคิอล�มน�ไม�ท)าให�ข�อม�ลล)าด�บของแถวและคิอล�มน�ไม�ท)าให�ข�อม�ล
เปล$ยู่นไปเปล$ยู่นไปจะไม�ม$สัองแถวท$ซ้ำ),าก�นจะไม�ม$สัองแถวท$ซ้ำ),าก�นแอททรื่�บ�วต�ท-กต�วจะเป.น แอททรื่�บ�วต�ท-กต�วจะเป.น atomic atomic เท�าน�,นเท�าน�,นด$กรื่$ของคิวามสั�มพั�นธ์� คิอ จ)านวนแอททรื่�ด$กรื่$ของคิวามสั�มพั�นธ์� คิอ จ)านวนแอททรื่�
บ�วต�ท$ม$ในคิวามสั�มพั�นธ์�น�,นบ�วต�ท$ม$ในคิวามสั�มพั�นธ์�น�,น
Key Rule
คิ�ย์�คิ�ย์� คิ$ยู่� คิอ สั�งท$ใชิ�ในการื่ก)าหนดคิวามเป.น คิ$ยู่� คิอ สั�งท$ใชิ�ในการื่ก)าหนดคิวามเป.น
เอกล�กษณ์�ของแถวในคิวามสั�มพั�นธ์� เอกล�กษณ์�ของแถวในคิวามสั�มพั�นธ์� ท)าให�การื่เข�าถ1งข�อม�ลบนฐานข�อม�ลเป.นไปได�ท)าให�การื่เข�าถ1งข�อม�ลบนฐานข�อม�ลเป.นไปได�
อยู่�างรื่วดเรื่2วอยู่�างรื่วดเรื่2ว ท)าให�สัามารื่ถแยู่กแยู่ะข�อม�ลในฐานข�อม�ลให�เป.นท)าให�สัามารื่ถแยู่กแยู่ะข�อม�ลในฐานข�อม�ลให�เป.น
ไปอยู่�างถ�กต�องไปอยู่�างถ�กต�อง
Key Rule
ปรื่ะเภทข้องคิ�ย์�ปรื่ะเภทข้องคิ�ย์� คิ$ยู่�หล�ก คิ$ยู่�หล�ก (Primary Key) (Primary Key) คิอ คิอ คิ$ยู่�ท$ใชิ�ในการื่อ�างถ1ง คิ$ยู่�ท$ใชิ�ในการื่อ�างถ1ง Entity Entity
ในฐานข�อม�ลและในฐานข�อม�ลและไม�ม$โอกาสัไม�ม$โอกาสัซ้ำ),าซ้ำ),าซ้ำ�อนก�นบนฐานข�อม�ลน�,นซ้ำ�อนก�นบนฐานข�อม�ลน�,น คิ$ยู่�รื่อง คิ$ยู่�รื่อง (Secondary Key)(Secondary Key) คิอคิอ คิ$ยู่�เด$ยู่วหรื่อคิ$ยู่�ผสัม เมอ คิ$ยู่�เด$ยู่วหรื่อคิ$ยู่�ผสัม เมอ
ใชิ�ในการื่คิ�นหาข�อม�ลของคิวามสั�มพั�นธ์�จะได�มากกว�าหน1งใชิ�ในการื่คิ�นหาข�อม�ลของคิวามสั�มพั�นธ์�จะได�มากกว�าหน1งเรื่คิคิอรื่�ดเรื่คิคิอรื่�ด
คิ$ยู่�นอก คิ$ยู่�นอก (Foreign Key)(Foreign Key) คิอ คิอ คิ$ยู่�เด$ยู่วหรื่อคิ$ยู่�ผสัม ซ้ำ1งเป.นคิ$ยู่�เด$ยู่วหรื่อคิ$ยู่�ผสัม ซ้ำ1งเป.นคิ$ยู่�ท� วไปของคิวามสั�มพั�นธ์�หน1ง แต�เป.นคิ$ยู่�หล�กของอ$กคิวามคิ$ยู่�ท�วไปของคิวามสั�มพั�นธ์�หน1ง แต�เป.นคิ$ยู่�หล�กของอ$กคิวามสั�มพั�นธ์�หน1ง เป.นต�วท$ใชิ�ในการื่เชิอมต�อรื่ะหว�างคิวามสั�มพั�นธ์�สั�มพั�นธ์�หน1ง เป.นต�วท$ใชิ�ในการื่เชิอมต�อรื่ะหว�างคิวามสั�มพั�นธ์�
Key Rule
ซ้ำ-ปเปอรื่�คิ$ยู่� ซ้ำ-ปเปอรื่�คิ$ยู่� (Super key) (Super key) คิอ กล-�มของแอทคิอ กล-�มของแอททรื่�บ�วต�ท$สัามารื่ถน)าไปคิ�นหาข�อม�ลท$เป.นทรื่�บ�วต�ท$สัามารื่ถน)าไปคิ�นหาข�อม�ลท$เป.นเอกล�กษณ์�ได�เอกล�กษณ์�ได�
คิ$ยู่�แข�งข�น คิ$ยู่�แข�งข�น (Candidate key) (Candidate key) คิอ ซ้ำ-ปเปอรื่�คิอ ซ้ำ-ปเปอรื่�คิ$ยู่�และไม�ม$กล-�มยู่�อยู่ของคิ$ยู่�ใดในคิ$ยู่�แข�งข�นท$คิ$ยู่�และไม�ม$กล-�มยู่�อยู่ของคิ$ยู่�ใดในคิ$ยู่�แข�งข�นท$สัามารื่ถเป.นซ้ำ-ปเปอรื่�คิ$ยู่�ได�สัามารื่ถเป.นซ้ำ-ปเปอรื่�คิ$ยู่�ได�
Key Rule
โคิรื่งสัรื่�างของ Keyโคิรื่งสัรื่�างของ Key
ติ�วอย์(าง
จากตารื่างข�างบน : จงบอกปรื่ะเภทของคิ$ยู่�จากตารื่างข�างบน : จงบอกปรื่ะเภทของคิ$ยู่�
Algebra Rule
พั,นฐาน พั,นฐาน Relational AlgebraRelational AlgebraRelational Algebra Relational Algebra
Operations Operations ข�,นพั,นฐานข�,นพั,นฐานRelational CalculusRelational Calculus
Algebra Rule
พั,นฐาน พั,นฐาน Relational AlgebraRelational Algebra Relational Algebra Relational Algebra เรื่$ยู่กอ$กอยู่�างว�า เรื่$ยู่กอ$กอยู่�างว�า
Relational query languageRelational query language ใชิ�ในการื่จ�ดการื่ข�อม�ลโดยู่การื่รื่ะบ-ต�วกรื่ะท)า ใชิ�ในการื่จ�ดการื่ข�อม�ลโดยู่การื่รื่ะบ-ต�วกรื่ะท)า
ก�บคิวามสั�มพั�นธ์�ท$ต�องการื่จ�ดการื่ ผลล�พัธ์�ท$ก�บคิวามสั�มพั�นธ์�ท$ต�องการื่จ�ดการื่ ผลล�พัธ์�ท$ได�คิอคิวามสั�มพั�นธ์�ใหม�ได�คิอคิวามสั�มพั�นธ์�ใหม�
Algebra Ruleปรื่ะเภทการื่ใชิ�งานของต�วกรื่ะท)าก�บคิวามสั�มพั�นธ์� ปรื่ะเภทการื่ใชิ�งานของต�วกรื่ะท)าก�บคิวามสั�มพั�นธ์� 1. 1. การื่ใชิ�งานข�,นพั,นฐานการื่ใชิ�งานข�,นพั,นฐาน
Selection Selection เลอกแถวจากคิวามสั�มพั�นธ์�เลอกแถวจากคิวามสั�มพั�นธ์� Projection Projection เลอกเฉพัาะคิอล�มน�ท$ต�องการื่จากคิวามเลอกเฉพัาะคิอล�มน�ท$ต�องการื่จากคิวาม
สั�มพั�นธ์�สั�มพั�นธ์� Cross Product Cross Product สัามารื่ถรื่วมคิวามสั�มพั�นธ์�ได�สัามารื่ถรื่วมคิวามสั�มพั�นธ์�ได� Set DifferenceSet Difference หาคิวามแตกต�างรื่ะหว�าง หาคิวามแตกต�างรื่ะหว�าง 2 2 คิวามคิวาม
สั�มพั�นธ์�สั�มพั�นธ์� UnionUnion เชิอม เชิอม 2 2 คิวามสั�มพั�นธ์�เข�าด�วยู่ก�นคิวามสั�มพั�นธ์�เข�าด�วยู่ก�น
Algebra Rule Selection (Selection (σσ) )
การื่รื่ะบ-เงอนไขสัามารื่ถท)าไดการื่รื่ะบ-เงอนไขสัามารื่ถท)าได โดยู่ ใชิ โดยู่ ใชิเคิรื่องหมายู่ในการื่เปรื่$ยู่บเท$ยู่บและเคิรื่องหมายู่ในการื่เปรื่$ยู่บเท$ยู่บและต�วกรื่ะท)าทางตรื่รื่กะรื่ต�วกรื่ะท)าทางตรื่รื่กะรื่วมก�นไดวมก�นได
= (= (เทเทาก�บาก�บ), ), ≠≠ ( (ไมไมเทเทาก�บาก�บ), < (), < (นนอยู่กวอยู่กวาา), ), ≤≤ ( (นนอยู่กวอยู่กวาหรื่อเทาหรื่อเทาก�บาก�บ), > (), > (มากกวมากกวาา), > (), > (มากกวมากกวาาหรื่อเทหรื่อเทาก�บาก�บ))
- - ต�วกรื่ะท)าทางตรื่รื่กะ ได ต�วกรื่ะท)าทางตรื่รื่กะ ไดแกแก (and) , (or) (and) , (or) และ และ (not)(not)
ต�วอยู่�างต�วอยู่�าง σσ heightheight > 178 > 178 Player Player
SELECT name, position, age, height, weightSELECT name, position, age, height, weight
FROM PlayerFROM Player
WHERE height > 178WHERE height > 178NameName PositionPosition AgeAge HeightHeight weightweight
สั-เมธ์สั-เมธ์ กองหน�ากองหน�า 2828 180180 8080
Algebra Rule Projection operator Projection operator (¶ (¶))
การื่เลอกเฉพัาะบางคิอล�มน�ของคิวามการื่เลอกเฉพัาะบางคิอล�มน�ของคิวามสั�มพั�นธ์�ท$สันใจข1,นมาแสัดง เข$ยู่นในรื่�ปแบบสั�มพั�นธ์�ท$สันใจข1,นมาแสัดง เข$ยู่นในรื่�ปแบบของ ของ ¶¶ attributesattributes r r
ต�วอยู่�าง ต�วอยู่�าง ¶¶ weight, height weight, height Player Player
SELECTSELECT weight, height weight, height
FROMFROM Player Player
WeightWeight HeightHeight
8080 178178
6565 170170
7171 169169
Algebra Ruleการื่ใชิ� การื่ใชิ� Selection (Selection (σσ)) รื่�วมก�บ รื่�วมก�บ
Projection operator Projection operator (¶ (¶))ต�วอยู่�างต�วอยู่�าง ¶¶ name, position name, position ( (σσ height > 178 height > 178 PlayerPlayer))
SELECTSELECT name, position name, position
FROMFROM Player Player
WHEREWHERE height > 178 height > 178
NameName PositionPosition
สั-เมธ์สั-เมธ์ กองหน�ากองหน�า
ก�องเก$ยู่รื่ต�ก�องเก$ยู่รื่ต� กองกลางกองกลาง
Algebra Rule
Union Union ((⋃⋃)) เชิอม เชิอม 2 2 คิวามสั�มพั�นธ์�เข�าด�วยู่ก�นคิวามสั�มพั�นธ์�เข�าด�วยู่ก�น ต�วอยู่�าง ต�วอยู่�าง Player 2000 Player 2000 ⋃ ⋃ Player Player 20012001
SELECTSELECT name, position, age, height, weight name, position, age, height, weight
FROM FROMPlayer2000Player2000
UNIONUNION
SELECTSELECT name, position,age, height, weight name, position,age, height, weight
FROM FROM2001Player2001Player
NameName PositionPosition AgAgee
WeighWeightt
HeightHeight
สั-เมธ์สั-เมธ์ กองหน�ากองหน�า 2626 7070 175175
ผลด$ผลด$ ป6กซ้ำ�ายู่ป6กซ้ำ�ายู่ 2121 6969 168168
ก�องก�องเก$ยู่รื่ต�เก$ยู่รื่ต�
กองกลางกองกลาง 2424 7575 180180
พั�เชิษฐ�พั�เชิษฐ� ป6กซ้ำ�ายู่ป6กซ้ำ�ายู่ 2222 7171 169169
ชิาต�ชิายู่ชิาต�ชิายู่ กองหล�งกองหล�ง 2929 8080 185185
Algebra Rule
Difference Difference (-) (-) คิคิวามสั�มพั�นธ์�ท$ม$คิวามแตกต�างวามสั�มพั�นธ์�ท$ม$คิวามแตกต�างติ�วอย์(าง ติ�วอย์(าง Player2000 − Player2001 Player2000 − Player2001 ((อยู่��ใน อยู่��ใน player player
2000 2000 แต�ไม�อยู่��ใน แต�ไม�อยู่��ใน 20012001))
SELECTSELECT name, position, age, name, position, age, height, weight height, weight
FROMFROM 2000Player 2000Player
MINUSMINUS
SELECTSELECT name, position, age, height, weight name, position, age, height, weight FROMFROM 2001Player 2001Player
NameName PositionPosition AgAgee
WeighWeightt
HeightHeight
ผลด$ผลด$ ป6กซ้ำ�ายู่ป6กซ้ำ�ายู่ 2121 6969 168168
ก�องก�องเก$ยู่รื่ต�เก$ยู่รื่ต�
กองกลางกองกลาง 2424 7575 180180
NameName PositionPosition AgAgee
WeigWeightht
HeightHeight
สั-เมธ์สั-เมธ์ กองหน�ากองหน�า 2626 7070 175175
ผลด$ผลด$ ป6กซ้ำ�ายู่ป6กซ้ำ�ายู่ 2121 6969 168168
ก�องก�องเก$ยู่รื่ต�เก$ยู่รื่ต�
กองกลางกองกลาง 2424 7575 180180
NameName PositionPosition AgeAge WeightWeight HeightHeight
สั-เมธ์สั-เมธ์ กองหน�ากองหน�า 2626 7070 175175
พั�เชิษฐ�พั�เชิษฐ� ป6กซ้ำ�ายู่ป6กซ้ำ�ายู่ 2222 7171 169169
ชิาต�ชิายู่ชิาต�ชิายู่ กองหล�งกองหล�ง 2929 8080 185185
Player 2000Player 2000
Player 2001Player 2001
ติ�วอย์(าง
Algebra Rule
2. 2. การื่ใชิ�งานข�,นสั�งการื่ใชิ�งานข�,นสั�งIntersection Intersection การื่เลอกสั�งท$ซ้ำ),าการื่เลอกสั�งท$ซ้ำ),าJoin Join การื่รื่วมตารื่างการื่รื่วมตารื่าง
Algebra Rule IntersectionIntersection (∩) (∩) คิวามสั�มพั�นธ์�ท$เก�ดจากแถวท$คิวามสั�มพั�นธ์�ท$เก�ดจากแถวท$
ซ้ำ),าก�นซ้ำ),าก�น ต�วอยู่�าง ต�วอยู่�าง Player2000 Player2000 ∩∩ Player2001 Player2001
SELECTSELECT name, position, age, height, weight name, position, age, height, weight
FROMFROM Player2000 Player2000
INTERSECTINTERSECT
SELECTSELECT name, position, age, height, weight name, position, age, height, weight
NameName PositionPosition AgeAge WeightWeight HeightHeight
สั-เมธ์สั-เมธ์ กองหน�ากองหน�า 2626 7070 175175
Algebra Rule
ปรื่ะเภทการื่กรื่ะท)าก�บคิวามสั�มพั�นธ์� ม$ ปรื่ะเภทการื่กรื่ะท)าก�บคิวามสั�มพั�นธ์� ม$ 2 2 รื่�ปแบบ คิอรื่�ปแบบ คิอ Unary Operators Unary Operators คิอ ต�วกรื่ะท)าท$ต�องการื่เพั$ยู่งคิอ ต�วกรื่ะท)าท$ต�องการื่เพั$ยู่ง
คิวามสั�มพั�นธ์�เด$ยู่ว เชิ�น คิวามสั�มพั�นธ์�เด$ยู่ว เชิ�น select, project (select, project (เลอกเลอกจากตารื่างเด$ยู่วจากตารื่างเด$ยู่ว))
Binary Operators Binary Operators คิอ ต�วกรื่ะท)าท$ต�องการื่ คิอ ต�วกรื่ะท)าท$ต�องการื่ 2 2คิวามสั�มพั�นธ์� เชิ�น คิวามสั�มพั�นธ์� เชิ�น union, intersection, union, intersection, difference difference และ และ Cartesian productCartesian product ( (เลอกเลอกต�,งแต�ต�,งแต� 2 2 ตารื่างตารื่าง))
Algebra Rule Relational Algebra Operations Relational Algebra Operations ข�,นพั,นฐาน ข�,นพั,นฐาน
ได�แก�ได�แก� Selection operator Selection operator คิอ การื่เลอกข�อม�ลคิวามสั�มพั�นธ์�คิอ การื่เลอกข�อม�ลคิวามสั�มพั�นธ์�
จากเงอนไขท$ก)าหนด เท$ยู่บได�ก�บ จากเงอนไขท$ก)าหนด เท$ยู่บได�ก�บ SELECT...FROM...WHERE SELECT...FROM...WHERE ในคิ)าสั�ง ในคิ)าสั�ง SQLSQL
Projection Operator Projection Operator คิอ การื่เลอกเฉพัาะบางคิอล�มน�คิอ การื่เลอกเฉพัาะบางคิอล�มน�ของคิวามสั�มพั�นธ์�ข1,นมาแสัดง ของคิวามสั�มพั�นธ์�ข1,นมาแสัดง
Union Union คิวามสั�มพั�นธ์�ท$จะน)ามาท)า คิวามสั�มพั�นธ์�ท$จะน)ามาท)า Union Union ก�นได� ก2ต�อเมอรื่�ปก�นได� ก2ต�อเมอรื่�ปแบบของคิวามสั�มพั�นธ์�เหมอนก�น เท$ยู่บได�ก�บ แบบของคิวามสั�มพั�นธ์�เหมอนก�น เท$ยู่บได�ก�บ SELECT…SELECT…FROM…WHERE…UNION SELECT…FROM…FROM…WHERE…UNION SELECT…FROM…WHERE…WHERE…
Algebra Rule Difference Difference คิอ คิวามสั�มพั�นธ์�ท$ม$คิวามแตกคิอ คิวามสั�มพั�นธ์�ท$ม$คิวามแตก
ต�างก�น โดยู่ม$ รื่�ปแบบคิวามสั�มพั�นธ์�ท$เหมอนต�างก�น โดยู่ม$ รื่�ปแบบคิวามสั�มพั�นธ์�ท$เหมอนก�น เท$ยู่บได�ก�บ ก�น เท$ยู่บได�ก�บ SELECT…FROM…SELECT…FROM…WHERE…MINUS SELECT…FROM…WHERE…MINUS SELECT…FROM…WHEREWHERE
Intersection Intersection คิอ คิวามสั�มพั�นธ์�ท$เก�ดจากคิอ คิวามสั�มพั�นธ์�ท$เก�ดจากแถวท$ซ้ำ),าก�น เท$ยู่บได�ก�บ แถวท$ซ้ำ),าก�น เท$ยู่บได�ก�บ SELECT…SELECT…FROM…WHERE…INTERSECTION FROM…WHERE…INTERSECTION SELECT…FROM…WHERESELECT…FROM…WHERE
Algebra Rule Relational CalculusRelational Calculus
เป.นการื่ใชิ�คิณ์�ตศาสัตรื่�ของตรื่รื่กะเข�ามาชิ�วยู่ในการื่เป.นการื่ใชิ�คิณ์�ตศาสัตรื่�ของตรื่รื่กะเข�ามาชิ�วยู่ในการื่คิ�นหาข�อม�ลคิ�นหาข�อม�ล
คิ)าตอบท$ได�คิอแถวของข�อม�ลจากคิวามสั�มพั�นธ์�ท$ท)าให�คิ)าตอบท$ได�คิอแถวของข�อม�ลจากคิวามสั�มพั�นธ์�ท$ท)าให�คิ�าของสัมการื่คิณ์�ตศาสัตรื่�ม$คิ�าเป.น คิ�าของสัมการื่คิณ์�ตศาสัตรื่�ม$คิ�าเป.น จรื่�งจรื่�ง
Constraints คิอ ข�อบ�งคิ�บหรื่อเงอนไขในการื่อน-ญาตให�เก2บคิอ ข�อบ�งคิ�บหรื่อเงอนไขในการื่อน-ญาตให�เก2บ
เฉพัาะข�อม�ลท$เหมาะสัมลงในฐานข�อม�ล เพัอให�การื่เฉพัาะข�อม�ลท$เหมาะสัมลงในฐานข�อม�ล เพัอให�การื่เลอกข�อม�ลจากฐานข�อม�ลม$คิวามถ�กต�อง ได�แก�เลอกข�อม�ลจากฐานข�อม�ลม$คิวามถ�กต�อง ได�แก� Key constraintKey constraint Not Null constraintNot Null constraint Referential Integrity constraintReferential Integrity constraint CheckCheck Assertion constraintAssertion constraint
Constraintsปรื่ะเภทของเงอนไขปรื่ะเภทของเงอนไขKey constraintKey constraint ม$ ม$ 2 2 รื่�ปแบบ คิอ รื่�ปแบบ คิอ
คิ$ยู่�หล�ก คิ�าจะไม�เป.น คิ$ยู่�หล�ก คิ�าจะไม�เป.น NULL NULL และถ�กใชิ�เป.นด�ชิน$ในการื่เรื่$ยู่งและถ�กใชิ�เป.นด�ชิน$ในการื่เรื่$ยู่งล)าด�บเสัมอล)าด�บเสัมอ
Unique Unique เป.น เป.น key key เอกล�กษณ์�อาจม$เพั�ม นอกเหนอจาก เอกล�กษณ์�อาจม$เพั�ม นอกเหนอจาก คิ$ยู่�หล�กโดยู่จะถ�กใชิ�เป.นด�ชิน$ในการื่เรื่$ยู่งรื่ายู่การื่ต�อจากคิ$ยู่�คิ$ยู่�หล�กโดยู่จะถ�กใชิ�เป.นด�ชิน$ในการื่เรื่$ยู่งรื่ายู่การื่ต�อจากคิ$ยู่�หล�ก โดยู่อ�ตโนม�ต�หล�ก โดยู่อ�ตโนม�ต�
Referential IntegrityReferential Integrity เป.นการื่อ�างอ�งข�อม�ลจากคิวามสั�มพั�นธ์�อนเป.นการื่อ�างอ�งข�อม�ลจากคิวามสั�มพั�นธ์�อน
Constraints
Check Check เป.นการื่ตรื่วจสัอบคิ�าของเป.นการื่ตรื่วจสัอบคิ�าของข�อม�ลข�อม�ลในคิวามสั�มพั�นธ์�ในคิวามสั�มพั�นธ์�ให�เป.นไปตามให�เป.นไปตาม
เงอนไข เพัอกรื่องเฉพัาะข�อม�ลท$เหมาะ เงอนไข เพัอกรื่องเฉพัาะข�อม�ลท$เหมาะสัมลงไปในฐานข�อม�ลสัมลงไปในฐานข�อม�ล
AssertionAssertion เป.นการื่ตรื่วจสัอบคิ�าของเป.นการื่ตรื่วจสัอบคิ�าของข�อม�ลโดยู่รื่วมของท-กข�อม�ลโดยู่รื่วมของท-กคิวามสั�มพั�นธ์�คิวามสั�มพั�นธ์�ให�ให�เป.นไปตามเงอนไขเป.นไปตามเงอนไข
Cartesian RuleCartesian Rule
Cartesian Cartesian ProductProduct
JoinJoin
Cartesian Rule
Cartesian Product Cartesian Product คิอ การื่น)าแถวคิอ การื่น)าแถวจากคิวามสั�มพั�นธ์�ท$ จากคิวามสั�มพั�นธ์�ท$ 1 1 มาต�อก�บแถวมาต�อก�บแถวจากคิวามสั�มพั�นธ์�ท$ จากคิวามสั�มพั�นธ์�ท$ 22 จ)านวนแถวของคิวามสั�มพั�นธ์�ผลล�พัธ์� จะจ)านวนแถวของคิวามสั�มพั�นธ์�ผลล�พัธ์� จะ
เท�าก�บจ)านวนแถวของคิวามสั�มพั�นธ์�ท$ เท�าก�บจ)านวนแถวของคิวามสั�มพั�นธ์�ท$ 1 1คิ�ณ์จ)านวนแถวของคิวามสั�มพั�นธ์�ท$ คิ�ณ์จ)านวนแถวของคิวามสั�มพั�นธ์�ท$ 22
FirstFirst LastLast AgeAge
ด)าด)า สัน�ทสัน�ท 2222
แดงแดง แจ9แจ9 3535
ม�วงม�วง เข�มเข�ม 2828
DinnerDinner DessertDessert
สัเต:ก สัเต:ก ผลไม�ผลไม�อาหารื่ทะเลอาหารื่ทะเล รื่วมม�ตรื่รื่วมม�ตรื่
Cartesian Rule
FirstFirst LastLast AgeAge DinnerDinner DessertDessert
ด)าด)า สัน�ทสัน�ท 2222 สัเต:ก สัเต:ก ผลไม�ผลไม�ด)าด)า สัน�ทสัน�ท 2222 อาหารื่ทะเลอาหารื่ทะเล รื่วมม�ตรื่รื่วมม�ตรื่แดงแดง แจ9แจ9 3535 สัเต:ก สัเต:ก ผลไม�ผลไม�แดงแดง แจ9แจ9 3535 อาหารื่ทะเลอาหารื่ทะเล รื่วมม�ตรื่รื่วมม�ตรื่ม�วงม�วง เข�มเข�ม 2828 สัเต:ก สัเต:ก ผลไม�ผลไม�ม�วงม�วง เข�มเข�ม 2828 อาหารื่ทะเลอาหารื่ทะเล รื่วมม�ตรื่รื่วมม�ตรื่
RR SS
R X SR X S
Cartesian Rule Join Join คิอ การื่รื่วมข�อม�ลจากหลายู่คิวามสั�มพั�นธ์�คิอ การื่รื่วมข�อม�ลจากหลายู่คิวามสั�มพั�นธ์�
เข�าด�วยู่ก�น ม$หลายู่แบบด�งน$,เข�าด�วยู่ก�น ม$หลายู่แบบด�งน$, Theta-Join Theta-Join คิอ การื่ คิอ การื่ join join แบบปกต�ซ้ำ1งท)าให�เก�ดชิอแบบปกต�ซ้ำ1งท)าให�เก�ดชิอ
คิอล�มน�ท$ซ้ำ),าก�นคิอล�มน�ท$ซ้ำ),าก�น Equi-Join Equi-Join คิอ การื่ คิอ การื่ join join แบบม$เงอนไข แบบม$เงอนไข ““เท�าก�บเท�าก�บ” ”
(=) (=) เท�าน�,น และคิอล�มน�ท$ซ้ำ),าก�นจะถ�กแสัดงเพั$ยู่งคิรื่�,งเท�าน�,น และคิอล�มน�ท$ซ้ำ),าก�นจะถ�กแสัดงเพั$ยู่งคิรื่�,งเด$ยู่วเด$ยู่ว
Natural-Join Natural-Join คิอ คิอ Equi-Join Equi-Join ท$ ท$ join join ท-กคิอล�มน�ท$ท-กคิอล�มน�ท$ซ้ำ),าก�นซ้ำ),าก�น
Cartesian Rule
EMPEMP
DEPTDEPT
EMPEMPEMPEMP
ผลล�พัธ์จากการื่ Join คิวามูสั�มูพั�นธ์ EMP และ DEPTINFO โดย์ใชิเง��อนไข้ DEPT=DEPTผลล�พัธ์จากการื่ Join คิวามูสั�มูพั�นธ์ EMP และ DEPTINFO โดย์ใชิเง��อนไข้ DEPT=DEPT
ใชิ� Join เพัอคินหารื่ายู่ละเอ$ยู่ดเก$ยู่วก�บท$ท)างานของพัน�กงานท-กคินใชิ� Join เพัอคินหารื่ายู่ละเอ$ยู่ดเก$ยู่วก�บท$ท)างานของพัน�กงานท-กคิน
Question… Question…