slide3

60
รรรรรรรรรรรรร (DATABASE SYSTEMS) Relational Database . รรรรรรร รรรรรรรรรรร รรรรรรรรรรรรรรรรรรรรรรรรรรร รรรรรรรรรรร รรรรรรรรรรรรรรรร 1

Upload: rungnapa-rungnapa

Post on 23-Jun-2015

70 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Slide3

ระบบฐานข้�อมู�ล(DATABASE SYSTEMS)

Relational Database

อ. เบญจภั�ค จงหมู��นไวย์�โปรแกรมูว ชาว ทย์าการสารสนเทศ มูหาว ทย์าล�ย์ราชภั�ฏ

นครราชส&มูา1

Page 2: Slide3

ว�ตถุ)ประสงค�

1. เข้�าใจแนวความค�ดข้องรู�ปแบบฐานข้�อม�ลเชิ�งสั�มพั�นธ์� บอกถึ�งรู�ปแบบและล�กษณะที่$%สั&าค�ญข้อง relational algebra และ relational calculus2. เข้�าใจหล�กการูและที่ฤษฎี$ที่างคณ�ตศาสัตรู�ที่$%อยู่�.เบ/0องหล�งข้องรู�ปแบบฐานข้�อม�ลเชิ�งสั�มพั�นธ์�และการูกรูะที่&าก�บข้�อม�ลที่$%ต�องการู ที่$%ถึ�กจ�ดเก1บในฐานข้�อม�ลได�

2

Page 3: Slide3

ห�วข้�อการบรรย์าย์

1. ค*าศ�พท�เก&�ย์วก�บโมูเดลเช งส�มูพ�นธ์� 2. ค)ณสมูบ�ต ข้อง Relation 3. แนวค ดข้อง E.F. Codd 4. ค/าว/าง (Null Value) 5. Redundant & Duplicate Data 6. ชน ดข้อง Relation 7. ประเภัทข้อง Key 8. ภัาษาข้องฐานข้�อมู�ลเช งส�มูพ�นธ์� 9. เหต)ผลในการใช�ฐานข้�อมู�ลเช งส�มูพ�นธ์�

3

ป3จจ)บ�น

Page 4: Slide3

บทน*า

“ฐานข้�อมู�ลเช งส�มูพ�นธ์� ” ค/อ การูรูวมกล3.มข้องรู$เลชิ�%นที่$%ผ่.านการูนอรู�ม�ลไลเซชิ�%น โดยู่แต.ละรู$เลชิ�%น

จะม$การูก&าหนดชิ/%อที่$%แตกต.างก�น

4

ป3จจ)บ�น

Page 5: Slide3

1. ค*าศ�พท�เก&�ย์วก�บโมูเดลเช งส�มูพ�นธ์�

ร&เลช��น (Relation) ท�เป4ล (Tuple) แอททร บ วท� (Attribute) คาร�ด น�ลล ต&5 (Cardinality) ด&กร& (Degree) ค&ย์�หล�ก (Primary key) โดเมูน (Domain)

5

ค.ศ. 1975

ป3จจ)บ�น

Page 6: Slide3

1. ค*าศ�พท�เก&�ย์วก�บโมูเดลเช งส�มูพ�นธ์�

6

ค.ศ. 1975

ป3จจ)บ�น

ศ�พท�เฉพาะ ศ�พท�ท��วไปรู$เลชิ�%น (Relation) ตารูาง (Table)

ที่�เป7ล (Tuple) แถึว (Row) หรู/อ เรูคอรู�ด (Record) หรู/อ รูะเบ$ยู่น

แอที่รู�บ�วที่� (Attribute)

คอล�มน� (Column) หรู/อ ฟิ7ลด� (Field)

คารู�ด�น�ลล�ต$0 (Cardinality)

จ&านวนแถึว (Number of rows)

ด$กรู$ (Degree) จ&านวนแอที่รู�บ�วที่� (Number of attribute)

ค$ยู่�หล�ก (Primary key)

ค.าเอกล�กษณ� (Unique identifier)

โดเมน (Domain) ข้อบข้.ายู่ข้องค.าข้องข้�อม�ล (Pool of legal values)

Page 7: Slide3

7

แอที่ที่รู�บ�วที่� (Attribute)

รูห�สัปรูะจ&าต�วปรูะชิาชิน

ชิ/%อ นามสัก3ล

ว�นเก�ด

3102401250111

ชินว�ฒน�

ศรู$สัอ�าน

16/04/2514

3102401250112

สัมชิายู่

รู�กไที่ยู่

6/11/2514

3102401250113

ไอรูดา

สั/บสัายู่

12/06/2514

เรูคคอรู�ด (Record) ตารูาง (Table) หรู/อ รู$เลชิ�%น (Relation)

ล�กค�า(รูห�สัปรูะจ&าต�วปรูะชิาชิน,ชิ/%อ,นามสัก3ล,ว�นเก�ด)

Page 8: Slide3

2. ค)ณสมูบ�ต ข้อง Relation

1 )รู$เลชิ�%นจะต�องม$ชิ/%อก&าก�บ โดยู่แต.ละรู$เลชิ�%นจะม$ชิ/%อที่$%แตกต.างก�น ซ&0าก�นไม.ได�

2) แต.ละแอที่รู�บ�วที่�ข้องรู$เลชิ�%นจะบรูรูจ3ค.าเพั$ยู่งค.าเด$ยู่ว (Atomic) กล.าวค/อ ค.าที่$%บรูรูจ3น�0นจะไม.สัามารูถึแบ.งยู่.อยู่ต.อไปได�อ$ก

3) แต.ละแอที่รู�บ�วที่�ในรู$เลชิ�%นน�0น ๆ ต�องม$ชิ/%อแตกต.างก�น จะม$ชิ/%อแอที่รู�บ�วที่�ซ&0าก�นไม.ได�

4) ข้�อม�ลที่$%บรูรูจ3ลงในแต.ละแอที่รู�บ�วที่� เป;นไปตามข้�อก&าหนดข้องโดเมนที่$%ก&าหนดข้�0น

8

Page 9: Slide3

2. ค)ณสมูบ�ต ข้อง Relation

5) ข้�อม�ลในแต.ละที่�เป7ลต�องม$ความแตกต.างก�น จะไม.ม$ที่�เป7ลที่$%ซ&0าก�น

6) การูเรู$ยู่งล&าด�บข้องแต.ละแอที่รู�บ�วต�ไม.ม$ความสั&าค�ญใด ๆ

7) การูเรู$ยู่งล&าด�บข้องที่�เป7ลไม.ม$ความสั&าค�ญใด ๆ แต.ในเชิ�งปฏิ�บ�ต�ล&าด�บม$ผ่ลต.อปรูะสั�ที่ธ์�ภาพัการูเข้�าถึ�งข้�อม�ล

9

Page 10: Slide3

10

ไมู/มู& Tuples ค�/ใด ๆ เลย์ท&�ซ้ำ*5าก�น

รูห�สัปรูะจ&าต�วปรูะชิาชิน

ชิ/%อ นามสัก3ล

ว�นเก�ด

3102401250111 ชินว�ฒน�

ศรู$สัอ�าน

16/04/2514

3102401250112 สัมชิายู่ รู�กไที่ยู่ 6/11/2514

3102401250111 ชินว�ฒน�

ศรู$สัอ�าน

16/04/2514

3102401250113 ไอรูดา สั/บสัายู่ 12/06/2514

Page 11: Slide3

11

ล*าด�บท&�ข้อง Tuples ไมู/มู&ความูส*าค�ญ

รูห�สัปรูะจ&าต�วปรูะชิาชิน

ชิ/%อ นามสัก3ล

ว�นเก�ด

3102401250113

ไอรูดา สั/บสัายู่ 12/06/2514

3102401250111

ชินว�ฒน�

ศรู$สัอ�าน

16/04/2514

3102401250112

สัมชิายู่

รู�กไที่ยู่ 6/11/2514

Page 12: Slide3

12

ล*าด�บท&�ข้อง Attributes ไมู/มู&ความูส*าค�ญ

ชิ/%อ รูห�สัปรูะจ&าต�วปรูะชิาชิน

นามสัก3ล

ว�นเก�ด

ไอรูดา 3102401250113

สั/บสัายู่ 12/06/2514

ชินว�ฒน�

3102401250111

ศรู$สัอ�าน

16/04/2514

สัมชิายู่

3102401250112

รู�กไที่ยู่ 6/11/2514

Page 13: Slide3

13

ค/าข้อง Attribute จะเป9นค/าเด&�ย์ว ๆ (Atomic)

ชิ/%อ รูห�สัปรูะจ&าต�วปรูะชิาชิน

นามสัก3ล

ว�นเก�ด

ไอรูดา 3102401250113

3102401250112

3102401250111

สั/บสัายู่ 12/06/2514

ชินว�ฒน� 3102401250111

ศรู$สัอ�าน 16/04/2514

สัมศรู$สัมชิายู่

3102401250112

รู�กไที่ยู่ 6/11/2514

Page 14: Slide3

14

ค/าข้องข้�อมู�ลในแต/ละ Attribute จะบรรจ)ค/าข้องข้�อมู�ลประเภัทเด&ย์วก�น

ชิ/%อ รูห�สัปรูะจ&าต�วปรูะชิาชิน

นามสัก3ล

ว�นเก�ด

ไอรูดา สัามหน�%งศ�นยู่�สัองสั$% สั/บสัายู่ 99999

ชินว�ฒน�

3102401250111 ศรู$สัอ�าน

16/04/2514

สัมชิายู่ 3102401250112 รู�กไที่ยู่ สัว�สัด$

Page 15: Slide3

3. กฎ 12 ข้�อบนฐานข้�อมู�ลเช งส�มูพ�นธ์�ข้องคอดด�

(Codd’s 12 Relational Database Rules)

1. กฎด�านสารสนเทศ (Information) 2. กฎการร�บประก�นการเข้�าถุ;ง (Guaranteed

Access) 3. กฎการปฏ บ�ต ก�บค/า Null อย์/างมู&แบบแผน 4. กฎการออนไลน�แคตาล<อกแบบไดนามู กท&�ต�5งอย์�/

บนพ�5นฐานข้องแบบจ*าลองเช งส�มูพ�นธ์� 5. กฎด�านภัาษาข้�อมู�ล 6. กฎการปร�บปร)งว ว 7. กฎการแทรก การปร�บปร)ง และการลบข้�อมู�ล

ระด�บส�ง 8. กฎความูอ สระข้องข้�อมู�ลเช งกาย์ภัาพ

15

Page 16: Slide3

9. กฎความูอ สระข้องข้�อมู�ลเช งตรรกะ (Logical Data Independence)

10. กฎความูคงสภัาพท&�เป9นอ สระ (Integrity Independence)

11. กฎการกระจาย์ท&�เป9นอ สระ (Distribution Independence)

12. กฎปราศจากเวอร�ช��นย์/อย์ (Nonsubversion)

16

3. กฎ 12 ข้�อบนฐานข้�อมู�ลเช งส�มูพ�นธ์�ข้องคอดด�

(Codd’s 12 Relational Database Rules)

Page 17: Slide3

ค/าข้อง Attribute อาจจะเป9นค/าว/าง (Null) ค�อ ไมู/มู&ค/าหร�อย์�งไมู/ทราบค/าได�

ต�วอย์/าง เช/น จ*านวนไข้/ข้องนกกระจอกเทศ จะสามูารถุบอกได�เมู��อนก

กระจอกเทศออกไข้/แล�ว แต/ย์�งไมู/ทราบค/า ในข้ณะท&�จ*านวนไข้/ข้องช�างน�5นไมู/มู&ค/า เป9นต�น

17

4. ค/าว/าง (Null Value)

Page 18: Slide3

ต�วอย์/าง

18

ค.ศ. 1975

ป3จจ)บ�นpart Part-

description

P2 Nut

P1 Bolt

P3 Washer

P4 Nut

part Part-descriptio

n

P2 -

P1 Bolt

P3 Washer

P4 Nut

Part Part

(a) (b)

Page 19: Slide3

Duplicate data จะเก ดข้;5นก=ต/อเมู��อ Attribute หน;�งมู&ค/าข้องข้�อมู�ลท&�เหมู�อนก�นต�5งแต/สองค/าข้;5นไป

ข้�อมู�ลจะซ้ำ*5าซ้ำ�อน (Redundant) ก=ต/อเมู��อเราสามูารถุต�ดข้�อมู�ลท&�ซ้ำ*5าซ้ำ�อนน�5นออกไปได� โดย์ไมู/ท*าให�ส�ญเส&ย์ข้�อมู�ล

อาจกล/าวได�ว/า ความูซ้ำ*5าซ้ำ�อน (Redundancy) ค�อ Duplication ท&�ไมู/จ*าเป9น

19

5. Redundant & Duplicate Data

Page 20: Slide3

ต�วอย์/าง

20

ค.ศ. 1975

ป3จจ)บ�น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 -

Supplier - Part Supplier - Part

(a) (b)

Page 21: Slide3

ต�วอย์/าง

21

ค.ศ. 1975

ป3จจ)บ�นSupplier#

Part-descriptio

n

S2 P1

S7 P6

S2 P4

s5 P1

Part# Part-descriptio

n

P1 Bolt

P6 Bolt

P4 Nut

Supplier – Part-1 Part

(a) (b)

Page 22: Slide3

Relation หล�ก (Base Relation) เป9น Relation ท&�ถุ�กก*าหนดข้;5นเพ��อเก=บข้�อมู�ลและเพ��อ

น*าข้�อมู�ลไปใช� เมู��อมู&การสร�าง Relation โดย์ใช� Data Definition Language เช/น ใน SQL ค*าส��ง CREATE TABLE เป9นการสร�าง Relation หล�ก

ว ว (View) หร�ออาจเร&ย์กอ&กอย์/างหน;�งว/า Relation สมูมูต (Virtual Relation) เป9น Relation ท&�ถุ�กสร�างข้;5นตามูความูต�องการใช�

ข้�อมู�ลข้องผ��ใช�แต/ละคน เน��องจากผ��ใช�แต/ละคนอาจต�องการใช�ข้�อมู�ลในล�กษณะท&�แตกต/างก�น จ;งท*าการก*าหนดว วข้องต�วเองข้;5นมูาจาก Relation หล�ก

22

6. ชน ดข้อง Relation

Page 23: Slide3

Simple key หมูาย์ถุ;ง key ท&�ประกอบด�วย์ attribute เด&ย์ว

Combine key (Composite key หร�อ Concatenated key) Combine Key หร�อ ค&ย์�ประกอบ หมูาย์ถุ;ง Key ท&�

ประกอบด�วย์ attribute มูากกว/า 1 attribute Candidate key

Candidate Key หร�อ ค&ย์�ค�/แข้/ง หมูาย์ถุ;ง key ท&�สามูารถุจะเป9นค�/แข้/ง ซ้ำ;�งจะถุ�กเล�อกให�เป9นค&ย์�หล�ก

23

7. ประเภัทข้อง Key

Page 24: Slide3

Primary key Primary key หร�อ ค&ย์�หล�ก หมูาย์ถุ;ง candidate

key ต�วหน;�งท&�ถุ�กเล�อกข้;5นมูาเป9นค&ย์�หล�ก ส*าหร�บ primary key เราจะใช�ส�ญล�กษณ�ข้&ดเส�นใต�ก*าก�บไว�ใต� attribute ต�วน�5น

Foreign key หมูาย์ถุ;ง nonkey attribute ใน relation หน;�งท&�

เป9น primary key ใน relation อ��น

24

7. ประเภัทข้อง Key

Page 25: Slide3

Secondary key (Alternate key) ค&ย์�รอง หมูาย์ถุ;ง candidate key ท&�ไมู/ได�ถุ�กเล�อก

เป9นค&ย์�หล�ก (primary key) Superkey

attribute หร�อ เซ้ำ=ทข้อง attribute ท&�สามูารถุบ/งบอกว/าแต/ละแถุว (Tuple) แตกต/างก�น ในท)ก ๆ ความูส�มูพ�นธ์�จะต�องมู&อย์/างน�อย์ หน;�ง Super key ในเซ้ำ=ทข้อง attributes

25

7. ประเภัทข้อง Key

Page 26: Slide3

ต�องเป9นภัาษา Relational Complete Language ตามูแนวค ดข้อง Codd มู& 2 สาย์ ด�งน&5 Relational Calculus (R.C) Relational Algebra (R.A)

26

8. ภัาษาข้องฐานข้�อมู�ลเช งส�มูพ�นธ์�

Page 27: Slide3

ผลงานท&�ได�จากการพ�ฒนาระบบงานส�งส)ด (Productivity) ส�งมูาก

โครงสร�างข้�อมู�ลเร&ย์บง/าย์ ท*าให�ง/าย์ต/อการใช�งานและการเข้&ย์นโปรแกรมู

ภัาษาท&�ใช�เหมูาะสมู เป9นภัาษาท&�เร&ย์กว/า “relational complete language” เป9น concept ข้อง set theory เช/น ภัาษา SQL, QBE เป9นต�น

27

9. เหต)ผลในการใช�ฐานข้�อมู�ลเช งส�มูพ�นธ์�

Page 28: Slide3

ฐานข้�อมู�ลเช งส�มูพ�นธ์� Key Rule Algebra Rule Constraints Cartesian Rule

28

Page 29: Slide3

Key Rule

แนวค�ดเรู/%องโมเดลเชิ�งสั�มพั�นธ์� ค$ยู่� พั/0นฐาน Relational Algebra

29

Page 30: Slide3

Key Rule

แนวค�ดเรู/%องโมเดลเชิ�งสั�มพั�นธ์� ความสั�มพั�นธ์�ข้องฐานข้�อม�ลจะอยู่�.ในรู�ปแบบข้อง

ตารูาง ชิ/%อข้องตารูางค/อ ชิ/%อข้องความสั�มพั�นธ์� แต.ละคอล�มน�ข้องตารูางความสั�มพั�นธ์� เรู$ยู่กว.า

แอที่ที่รู�บ�ว (attribute) ข้องความสั�มพั�นธ์� ค.าและข้อบเข้ตข้องข้�อม�ลข้องแอที่ที่รู�บ�วต�เรู$ยู่กว.า

โดเมน (Domain) แต.ละแถึวข้องตารูางความสั�มพั�นธ์� เรู$ยู่กว.า แถึว

หรู/อ ที่�เพั�ล (tuple) ข้องความสั�มพั�นธ์� 30

Page 31: Slide3

Key Rule

ค3ณสัมบ�ต�ข้องความสั�มพั�นธ์� ล&าด�บข้องแถึวและคอล�มน�ไม.ที่&าให�ข้�อม�ลเปล$%ยู่นไป จะไม.ม$สัองแถึวที่$%ซ&0าก�น แอที่ที่รู�บ�วต�ที่3กต�วจะเป;น atomic เที่.าน�0น ด$กรู$ข้องความสั�มพั�นธ์� ค/อ จ&านวนแอที่ที่รู�บ�วต�ที่$%ม$

ในความสั�มพั�นธ์�น�0น

31

Page 32: Slide3

Key Rule ค$ยู่�

ค$ยู่� ค/อ สั�%งที่$%ใชิ�ในการูก&าหนดความเป;นเอกล�กษณ�ข้องแถึวในความสั�มพั�นธ์�

ที่&าให�การูเข้�าถึ�งข้�อม�ลบนฐานข้�อม�ลเป;นไปได�อยู่.างรูวดเรู1ว

ที่&าให�สัามารูถึแยู่กแยู่ะข้�อม�ลในฐานข้�อม�ลให�เป;นไปอยู่.างถึ�กต�อง

32

Page 33: Slide3

Key Ruleประเภัทข้องค&ย์� ค$ยู่�หล�ก (Primary Key) ค/อ ค$ยู่�ที่$%ใชิ�ในการูอ�างถึ�ง

Entity ในฐานข้�อม�ล ค$ยู่�รูอง (Secondary Key) ค/อ ค$ยู่�เด$%ยู่วหรู/อค$ยู่�ผ่สัม

เม/%อใชิ�ในการูค�นหาข้�อม�ลข้องความสั�มพั�นธ์�จะได�มากกว.าหน�%งเรูคคอรู�ด

ค$ยู่�นอก (Foreign Key) ค/อ ค$ยู่�เด$%ยู่วหรู/อค$ยู่�ผ่สัม ซ�%งเป;นค$ยู่�ที่�%วไปข้องความสั�มพั�นธ์�หน�%ง แต.เป;นค$ยู่�หล�กข้องอ$กความสั�มพั�นธ์�หน�%ง เป;นต�วที่$%ใชิ�ในการูเชิ/%อมต.อรูะหว.างความสั�มพั�นธ์�

33

Page 34: Slide3

Key Rule

ซ3ปเปอรู�ค$ยู่� (Super key) ค/อ กล3.มข้องแอที่ที่รู�บ�วที่$%สัามารูถึน&าไปค�นหาข้�อม�ลที่$%เป;นเอกล�กษณ�ได�

ค$ยู่�แข้.งข้�น (Candidate key) ค/อ ซ3ปเปอรู�ค$ยู่�และไม.ม$กล3.มยู่.อยู่ข้องค$ยู่�ใดในค$ยู่�แข้.งข้�นที่$%สัามารูถึเป;นซ3ปเปอรู�ค$ยู่�ได�

34

Page 35: Slide3

Algebra Rule

พั/0นฐาน Relational Algebra Relational Algebra Operations ข้�0นพั/0น

ฐาน Relational Calculus

35

Page 36: Slide3

Algebra Rule

พั/0นฐาน Relational Algebra Relational Algebra เรู$ยู่กอ$กอยู่.างว.า

Relational query language ใชิ�ในการูจ�ดการูข้�อม�ลโดยู่การูรูะบ3ต�วกรูะที่&า ก�บ

ความสั�มพั�นธ์�ที่$%ต�องการูจ�ดการู ผ่ลล�พัธ์�ที่$%ได�ค/อ ความสั�มพั�นธ์�ใหม.

36

Page 37: Slide3

Algebra Rule

ปรูะเภที่การูใชิ�งานข้องต�วกรูะที่&าก�บความสั�มพั�นธ์� ม$ 2 รู�ปแบบ ค/อ การูใชิ�งานข้�0นพั/0นฐาน

Selection เล/อกแถึวจากความสั�มพั�นธ์� Projection เล/อกเฉพัาะคอล�มน�ที่$%ต�องการูจากความ

สั�มพั�นธ์� Cross Product สัามารูถึรูวมความสั�มพั�นธ์�ได� Set Difference หาความแตกต.างรูะหว.าง 2 ความ

สั�มพั�นธ์� Union เชิ/%อม 2 ความสั�มพั�นธ์�เข้�าด�วยู่ก�น

37

Page 38: Slide3

Algebra Rule

การูใชิ�งานข้�0นสั�ง intersection join division renaming

38

Page 39: Slide3

Algebra Rule

ปรูะเภที่การูกรูะที่&าก�บความสั�มพั�นธ์� ม$ 2 รู�ปแบบ ค/อ

Unary Operators ค/อ ต�วกรูะที่&าที่$%ต�องการูเพั$ยู่งความสั�มพั�นธ์�เด$ยู่ว เชิ.น select, project และ rename

Binary Operators ค/อ ต�วกรูะที่&าที่$%ต�องการู 2 ความสั�มพั�นธ์� เชิ.น union, intersection, difference และ cartesian product 39

Page 40: Slide3

Algebra Rule Relational Algebra Operations ข้�0นพั/0นฐาน

ได�แก. Selection operator ค/อ การูเล/อกข้�อม�ลความสั�มพั�นธ์�

จากเง/%อนไข้ที่$%ก&าหนด เที่$ยู่บได�ก�บ SELECT...FROM...WHERE ในค&าสั�%ง SQL

Projection Operator ค/อ การูเล/อกเฉพัาะบางคอล�มน�ข้องความสั�มพั�นธ์�ข้�0นมาแสัดง

Union ความสั�มพั�นธ์�ที่$%จะน&ามาที่&า Union ก�นได� ก1ต.อเม/%อรู�ปแบบข้องความสั�มพั�นธ์�เหม/อนก�น เที่$ยู่บได�ก�บ SELECT…FROM…WHERE…UNION SELECT…FROM…WHERE…

40

Page 41: Slide3

Algebra Rule Difference ค/อ ความสั�มพั�นธ์�ที่$%ม$ความแตกต.าง

ก�น โดยู่ม$ รู�ปแบบความสั�มพั�นธ์�ที่$%เหม/อนก�น เที่$ยู่บได�ก�บ SELECT…FROM…WHERE…MINUS SELECT…FROM…WHERE

Intersection ค/อ ความสั�มพั�นธ์�ที่$%เก�ดจากแถึวที่$%ซ&0าก�น เที่$ยู่บได�ก�บ SELECT…FROM…WHERE…INTERSECTION SELECT…FROM…WHERE

Division รู�ปแบบข้องความสั�มพั�นธ์� ค/อ R1/R2 ไม.น�ยู่มใชิ� แต.อาจจะใชิ�ในการูค�นหาบางปรูะเภที่

41

Page 42: Slide3

Algebra Rule

Relational Calculus เป;นการูใชิ�คณ�ตศาสัตรู�ข้องตรูรูกะเข้�ามาชิ.วยู่ในการู

ค�นหา ข้�อม�ล ค&าตอบที่$%ได�ค/อแถึวข้องข้�อม�ลจากความสั�มพั�นธ์�ที่$%

ที่&าให�ค.าข้องสัมการูคณ�ตศาสัตรู�ม$ค.าเป;น จร ง

42

Page 43: Slide3

Constraints

ค/อ ข้�อบ�งค�บหรู/อเง/%อนไข้ในการูอน3ญาตให�เก1บเฉพัาะข้�อม�ลที่$%เหมาะสัมลงในฐานข้�อม�ล เพั/%อให�การูเล/อกข้�อม�ลจากฐานข้�อม�ลม$ความถึ�กต�อง

43

Page 44: Slide3

Constraints

ปรูะเภที่ข้องเง/%อนไข้ Key constraint ม$ 2 รู�ปแบบ ค/อ

ค$ยู่�หล�ก ค.าจะไม.เป;น NULL และถึ�กใชิ�เป;นด�ชิน$ในการูเรู$ยู่งล&าด�บเสัมอ

Unique เป;น key เอกล�กษณ�อาจม$เพั�%ม นอกเหน/อจาก ค$ยู่�หล�กโดยู่จะถึ�กใชิ�เป;นด�ชิน$ในการูเรู$ยู่งรูายู่การูต.อจากค$ยู่�หล�ก โดยู่อ�ตโนม�ต�

Referential Integrity เป;นการูอ�างอ�งข้�อม�ลจากความสั�มพั�นธ์�อ/%น

44

Page 45: Slide3

Constraints

Check เป;นการูตรูวจสัอบค.าข้องข้�อม�ลในความสั�มพั�นธ์�ให�เป;นไปตามเง/%อนไข้ เพั/%อกรูองเฉพัาะข้�อม�ลที่$%เหมาะสัมลงไปในฐานข้�อม�ล

Assertion เป;นการูตรูวจสัอบค.าข้องข้�อม�ลโดยู่รูวมข้องที่3กความสั�มพั�นธ์�ให�เป;นไปตามเง/%อนไข้

45

Page 46: Slide3

Cartesian Rule

Cartesian Product Join

46

Page 47: Slide3

Cartesian Rule

Cartesian Product ค/อ การูน&าแถึวจากความสั�มพั�นธ์�ที่$% 1 มาต.อก�บแถึวจากความสั�มพั�นธ์�ที่$% 2 จ&านวนแถึวข้องความสั�มพั�นธ์�ผ่ลล�พัธ์� จะเที่.าก�บ

จ&านวนแถึวข้องความสั�มพั�นธ์�ที่$% 1 X จ&านวนแถึวข้องความสั�มพั�นธ์�ที่$% 2

47

Page 48: Slide3

Cartesian Rule

Join ค/อ การูรูวมข้�อม�ลจากหลายู่ความสั�มพั�นธ์�เข้�าด�วยู่ก�น ม$หลายู่แบบด�งน$0 Theta-Join ค/อ การู join แบบปกต�ซ�%งที่&าให�เก�ด

ชิ/%อคอล�มน�ที่$%ซ&0าก�น Equi-Join ค/อ การู join แบบม$เง/%อนไข้ เที่.าก�บ “ ”

(=) เที่.าน�0น และคอล�มน�ที่$%ซ&0าก�นจะถึ�กแสัดงเพั$ยู่งครู�0งเด$ยู่ว

Natural-Join ค/อ Equi-Join ที่$% join ที่3กคอล�มน�ที่$%ซ&0าก�น

48

Page 49: Slide3

49

Q&A

ข้�อซ้ำ�กถุามู ?

Page 50: Slide3

ประเภัทข้องค&ย์� 1. ค&ย์�หล�ก (Primary Key)

เป;น Attribute ที่$%ม$ค3ณสัมบ�ต�ข้องข้�อม�ลที่$%ม$ค.าเป;นเอกล�กษณ� หรู/อไม.ม$ค.าซ&0าก�น

โดยู่ค3ณสัมบ�ต�น� 0นจะสัามารูถึรูะบ3ว.าข้�อม�ลน�0นเป;นข้อง Tuple ใด

Page 51: Slide3
Page 52: Slide3

ประเภัทข้องค&ย์�2. ค&ย์�ผสมู (Composite Key)

การูน&าฟิ7ลด�ต�0งแต. 2 ฟิ7ลด�ข้�0นไปมารูวมก�น เพั/%อให�ม$ค3ณสัมบ�ต�เป;น Primary Key เน/%องจากหากใชิ�ฟิ7ลด�ใดฟิ7ลด�หน�%งเป;น PK จะสั.งผ่ล

ให�ข้�อม�ลในแต.ละเรูคอรู�ดซ&0าซ�อนได�

3001

Page 53: Slide3

3. ค&ย์�ค�/แข้/ง (Candidates Key) ในแต.ละ Relation อาจม$ Attribute ที่$%ที่&าหน�าที่$%

เป;นค$ยู่�หล�กได�มากกว.าหน�%ง Attribute โดยู่เรู$ยู่ก Attribute เหล.าน$0ว.า ค&ย์�ค�/แข้/ง (Candidate Key)

เชิ.น น�กศ�กษาแต.ละคน ม$รูห�สัปรูะจ&าต�วน�กศ�กษา รูห�สัปรูะจ&าต�วบ�ตรูปรูะชิาชิน

โดยู่ปกต�แล�วจะเล/อก Candidates Key ที่$%สั� 0นที่$%สั3ดเป;น Primary Key

ประเภัทข้องค&ย์�

Page 54: Slide3

โดยู่เรูาจะเรู$ยู่ก Candidate Key ที่$%ถึ�กเล/อกมาใชิ�เป;นค$ยู่�หล�กในตารูางว.า “Primary Key” และเรู$ยู่ก Candidate Key ที่$%ไม.ถึ�กเล/อกเป;นค$ยู่�หล�กว.า “ค&ย์�ส*ารอง (Alternate Key)”

ประเภัทข้องค&ย์�

Page 55: Slide3

Key Rule (Continued)

รูห�สั ชิ/%อ สัก3ล บ�ตรูปรูะชิาชิ

ชิ�0นเรู$ยู่น สัาข้า

ค$ยู่�ค�.แข้.ง Candidate Keyค$ยู่�ค�.แข้.ง Candidate Key

ค$ยู่�หล�ก (Primary Key)ค$ยู่�หล�ก (Primary Key)ค$ยู่�สั&ารูอง Alternate Keyค$ยู่�สั&ารูอง Alternate Key

Page 56: Slide3

Key Rule (Continued)

Candidate Key สัามารูถึเป;น Primary Key และ Alternate Key ได�

Page 57: Slide3

ประเภัทข้องค&ย์�

2. ค&ย์�นอก (Foreign Key)ค/อค$ยู่�ซ�%งปรูะกอบด�วยู่แอที่รู�บ�วต�

หรู/อกล3.มข้องแอตที่รู�บ�วต�ในรู$เลชิ�นหน�%งซ�%งม$ค3ณสัมบ�ต�เป;นค$ยู่�หล�ก และไปปรูากฏิอ$กรู$เลชิ�นหน�%ง เพั/%อปรูะโยู่ชิน�ในการูเชิ/%อมโยู่งข้�อม�ลซ�%งก�นและก�น

Page 58: Slide3

2. ค&ย์�นอก หร�อค&ย์�เช��อมูโย์ง (Foreign Key)เป;น Key ที่$%ใชิ�ในการูเชิ/%อมโยู่งข้�อม�ลรูะหว.างตารูาง

เข้�าด�วยู่ก�น เชิ.น ฐานข้�อม�ลข้องธ์นาคารูแห.งหน�%งปรูะกอบด�วยู่ 2 ตารูาง ค/อ ตารูางบ�ญชิ$ที่$%ล�กค�าเป7ด (เลข้ปรูะจ&าต�วล�กค�า, ชิ/%อ-

นามสัก3ล และปรูะเภที่ข้องบ�ญชิ$ ) ตารูางล�กค�า (เลข้ปรูะจ&าต�วล�กค�า, ชิ/%อ-นามสัก3ล และที่$%

อยู่�.)หากต�องการูที่รูาบว.าล�กค�ารูายู่หน�%งเป7ดบ�ญชิ$ใดบ�าง ก1เชิ/%อมโยู่งข้�อม�ล 2 ตารูางเข้�าด�วยู่ก�น โดยู่ใชิ�เลข้ประจ*าต�วล�กค�าเป9น Foreign Key

ประเภัทข้องค&ย์�

Page 59: Slide3

Data & Process Modeling

Page 60: Slide3

Overview