ฐานข้อมูลเชิงสัมพันธ์ Relational Database

41
1 ฐฐฐฐฐฐฐฐฐฐฐฐฐฐฐฐฐฐฐฐฐ Relational Database 4122206A ฐฐฐฐฐฐฐฐฐฐฐฐฐฐฐฐฐฐฐ 3(2-2) ฐ.ฐฐฐฐฐ ฐฐฐฐฐฐฐ

description

ฐานข้อมูลเชิงสัมพันธ์ Relational Database. 4122206A ระบบจัดการฐานข้อมูล 3(2-2) อ.ชนิ ดา คำเพ็ง. Today Topic. ความรู้เบื้องต้นเกี่ยวกับฐานข้อมูลเชิงสัมพันธ์ การสร้างฐานข้อมูลด้วย MS Access การสร้างตาราง การสร้างความสัมพันธ์ระหว่างตาราง. ศัพท์เทคนิค. ศัพท์เทคนิค ศัพท์ทั่วไป - PowerPoint PPT Presentation

Transcript of ฐานข้อมูลเชิงสัมพันธ์ Relational Database

Page 1: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

1

ฐานข้�อมู�ลเชิ�งสั�มูพั�นธ์� Relational Database

4122206A ระบบจั�ดการฐานข้�อมู�ล 3(2-2)

อ.ชิน�ดา คำ�าเพั�ง

Page 2: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

Today Topic•ความรู้� �เบื้�องต้�นเกี่��ยวกี่�บื้ฐานข้�อม�ลเชิ�ง

สั�มพั�นธ์�•กี่ารู้สัรู้�างฐานข้�อม�ลด้�วย MS Access•กี่ารู้สัรู้�างต้ารู้าง•กี่ารู้สัรู้�างความสั�มพั�นธ์�รู้ะหว"างต้ารู้าง

Page 3: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

ศั�พัท์�เท์คำน�คำ ศั�พัท์�เท์คำน�คำ ศั�พัท์�ท์��วไป

• รู้�เลชิ��น (Relation) ต้ารู้าง (Table)• ทู�เพั�ล (Tuple) แถว (Row) หรู้อ Reccord• แอทูทูรู้�บื้�วต้� (Attribute) คอล�มน�

(Column), Field• คารู้�ด้�นาล�ต้�� (Cardinality) จำ'านวนแถว

(Number of Rows)• ค�ย�หล�กี่ (Primary Key) ค"าเอกี่ล�กี่ษณ์�

(Unique Identifier)

Page 4: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

คำวามูหมูายข้องฐานข้�อมู�ลเชิ�งสั�มูพั�นธ์�

เป็+นกี่ารู้จำ�ด้เกี่,บื้รู้วบื้รู้วมข้�อม�ลเป็+นแถวและคอล�มน�ในล�กี่ษณ์ะต้ารู้างสัองม�ต้� ทู��ป็รู้ะกี่อบื้ไป็ด้�วย Attribute ทู��แสัด้งค/ณ์สัมบื้�ต้�ข้อง Relation หน0�งๆ

โด้ย Relation ต้"างๆ ได้�ผ่"านกี่รู้ะบื้วนกี่ารู้ทู'าให� Relation เป็+นบื้รู้รู้ทู�ด้ฐาน (Normalized) ในรู้ะหว"างกี่ารู้ออกี่แบื้บื้เพั�อลด้ความซ้ำ'�าซ้ำ�อน และเพั�อให�กี่ารู้จำ�ด้กี่ารู้ฐานข้�อม�ลเป็+นไป็อย"างม�ป็รู้ะสั�ทูธ์�ภาพั

Page 5: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

แนวค�ด้เรู้�องโมเด้ลเชิ�งสั�มพั�นธ์�– ความสั�มพั�นธ์�ข้องฐานข้�อม�ลจำะอย�"ในรู้�ป็แบื้บื้ข้อง

ต้ารู้าง– ชิ�อข้องต้ารู้างคอ ชิ�อข้องความสั�มพั�นธ์�– แต้"ละคอล�มน�ข้องต้ารู้างความสั�มพั�นธ์� เรู้�ยกี่ว"า แอทู

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

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

ทู�เพั�ล(tuple) ข้องความสั�มพั�นธ์�

ฐานข้�อมู�ลเชิ�งสั�มูพั�นธ์� (Relational Database

Page 6: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

• ด้�กี่รู้� ข้องความสั�มพั�นธ์� คอ จำ'านวนแอทูทูรู้�บื้�วทู��ม�ในต้ารู้างน��น

• Cardinality ข้องความสั�มพั�นธ์�คอ จำ'านวนแถวในต้ารู้าง

คำ%ณสัมูบ�ติ�ข้องคำวามูสั�มูพั�นธ์�

Page 7: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

A Sample Relation

EmployeeNumber

FirstName LastName

100 Mary Abermany

700 Jerry Caldera

300 Alea Copley

40 Murugan Jacksoni• Deegree = • Cardinality = • Deegree = • Cardinality =

AttributesAttributes

34

Page 8: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

คำ%ณล�กษณะในการจั�ดเก�บข้�อมู�ลข้องร*เลชิ��น

1. ข้�อม�ลในแต้"ละแถวจำะไม"ซ้ำ'�ากี่�น

Page 9: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

คำ%ณล�กษณะในการจั�ดเก�บข้�อมู�ลข้องร*เลชิ��น

2. กี่ารู้เรู้�ยงล'าด้�บื้ข้องข้�อม�ลในแต้"ละแถวไม"เป็+นสัารู้ะสั'าค�ญ

Page 10: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

3. กี่ารู้เรู้�ยงล'าด้�บื้ข้อง Attribute จำะเรู้�ยงล'าด้�บื้กี่"อนหล�งอย"างไรู้กี่,ได้�

คำ%ณล�กษณะในการจั�ดเก�บข้�อมู�ลข้องร*เลชิ��น

Page 11: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

คำ%ณล�กษณะในการจั�ดเก�บข้�อมู�ลข้องร*เลชิ��น

4. ค"าข้องข้�อม�ลในแต้"ละ Attribute ข้อง Tuple หน0�งๆ จำะบื้รู้รู้จำ/

ข้�อม�ลได้�เพั�ยงค"าเด้�ยว (Single Value)

Page 12: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

5. ค"าข้องข้�อม�ลในแต้"ละ Attribute จำะบื้รู้รู้จำ/ค"าข้องข้�อม�ล ป็รู้ะเภทูเด้�ยวกี่�น

คำ%ณล�กษณะในการจั�ดเก�บข้�อมู�ลข้องร*เลชิ��น

Page 13: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

ประเภท์ข้องคำ*ย�

1. คำ*ย�หล�ก (Primary Key)เป็+น Attribute ทู��ม�ค/ณ์สัมบื้�ต้�

ข้องข้�อม�ลทู��ม�ค"าเป็+นเอกี่ล�กี่ษณ์� หรู้อไม"ม�ค"าซ้ำ'�ากี่�น

โด้ยค/ณ์สัมบื้�ต้�น��นจำะสัามารู้ถรู้ะบื้/ว"าข้�อม�ลน��นเป็+นข้อง Tuple ใด้

Page 14: ฐานข้อมูลเชิงสัมพันธ์ Relational Database
Page 15: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

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

• กี่ารู้น'าฟิ8ลด้�ต้��งแต้" 2 ฟิ8ลด้�ข้0�นไป็ มารู้วมกี่�น• เพั�อให�ม�ค/ณ์สัมบื้�ต้�เป็+น Primary Key • เน�องจำากี่หากี่ใชิ�ฟิ8ลด้�ใด้ฟิ8ลด้�หน0�งเป็+น PK จำะสั"งผ่ล

ให�ข้�อม�ลในแต้"ละเรู้คอรู้�ด้ซ้ำ'�าซ้ำ�อนได้�

3001

Page 16: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

3. คำ*ย�คำ�-แข้-ง (Candidates Key) ในแต้"ละ Relation อาจำม� Attribute ทู��ทู'าหน�าทู��

เป็+นค�ย�หล�กี่ได้�มากี่กี่ว"าหน0�ง Attribute โด้ยเรู้�ยกี่ Attribute เหล"าน��ว"า คำ*ย�คำ�-แข้-ง (Candidate Key)

• เชิ"น น�กี่ศึ0กี่ษาแต้"ละคน ม�– รู้ห�สัป็รู้ะจำ'าต้�วน�กี่ศึ0กี่ษา– รู้ห�สัป็รู้ะจำ'าต้�วบื้�ต้รู้ป็รู้ะชิาชิน

• โด้ยป็กี่ต้�แล�วจำะเลอกี่ Candidates Key ทู��สั� �นทู��สั/ด้เป็+นPrimary Key

ประเภท์ข้องคำ*ย�

Page 17: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

โด้ยเรู้าจำะเรู้�ยกี่ Candidate Key ทู��ถ�กี่เลอกี่มาใชิ�เป็+นค�ย�หล�กี่ในต้ารู้างว"า “Primary Key” และเรู้�ยกี่ Candidate Key ทู��ไม"ถ�กี่เลอกี่เป็+นค�ย�หล�กี่ว"า “คำ*ย�สั�ารอง (Alternate Key)”

ประเภท์ข้องคำ*ย�

Page 18: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

Key Rule (Continued)

รู้ห�สั ชิ�อ สักี่/ล บื้�ต้รู้ป็รู้ะชิา

ชิน

ชิ��นเรู้�ยน

สัาข้า

ค�ย�ค�"แข้"ง Candidate Keyค�ย�ค�"แข้"ง Candidate Key

ค�ย�หล�กี่ (Primary Key)ค�ย�หล�กี่ (Primary Key)ค�ย�สั'ารู้อง Alternate Keyค�ย�สั'ารู้อง Alternate Key

Page 19: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

Key Rule (Continued)

• Candidate Key สัามารู้ถเป็+น Primary Key และ Alternate Key ได้�

Page 20: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

ประเภท์ข้องคำ*ย�

2. คำ*ย�นอก (Foreign Key)คอค�ย�ซ้ำ0�งป็รู้ะกี่อบื้ด้�วยแอทูรู้�บื้�วต้�

หรู้อกี่ล/"มข้องแอต้ทูรู้�บื้�วต้�ในรู้�เลชิ�นหน0�งซ้ำ0�งม�ค/ณ์สัมบื้�ต้�เป็+นค�ย�หล�กี่ และไป็ป็รู้ากี่ฏอ�กี่รู้�เลชิ�นหน0�ง เพั�อป็รู้ะโยชิน�ในกี่ารู้เชิ�อมโยงข้�อม�ลซ้ำ0�งกี่�นและกี่�น

Page 21: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

2. คำ*ย�นอก (Foreign Key)• เป็+น Key ทู��ใชิ�ในกี่ารู้เชิ�อมโยงข้�อม�ลรู้ะหว"างต้ารู้างเข้�าด้�วยกี่�น• เชิ"น ฐานข้�อม�ลข้องธ์นาคารู้แห"งหน0�งป็รู้ะกี่อบื้ด้�วย 2 ต้ารู้าง

คอ– ต้ารู้างบื้�ญชิ�ทู��ล�กี่ค�าเป็8ด้ (เลข้ป็รู้ะจำ'าต้�วล�กี่ค�า, ชิ�อ- นามสักี่/ล

และป็รู้ะเภทูข้องบื้�ญชิ� ) – ต้ารู้างล�กี่ค�า (เลข้ป็รู้ะจำ'าต้�วล�กี่ค�า, ชิ�อ- นามสักี่/ล และทู��อย�")

หากี่ต้�องกี่ารู้ทูรู้าบื้ว"าล�กี่ค�ารู้ายหน0�งเป็8ด้บื้�ญชิ�ใด้บื้�าง กี่,เชิ�อมโยง ข้�อม�ล 2 ต้ารู้างเข้�าด้�วยกี่�น โด้ยใชิ� เลข้ประจั�าติ�วล�กคำ�าเป/น

Foreign Key

ประเภท์ข้องคำ*ย�

Page 22: ฐานข้อมูลเชิงสัมพันธ์ Relational Database
Page 23: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

เลข้ป็รู้ะจำ'าต้�วป็รู้ะชิาชิน ชิ�อ นามสักี่/ล อาย/

3501552150054 สัมชิาย แซ้ำ"ต้��ง 25

3210077565107 สัมศึรู้� แซ้ำ"อ0�ง 42

4110597520235 สัมฤทู�ย แซ้ำ"ต้��ง 23

2156800512473 สัมป็อง แซ้ำ"แต้� 16

7812350453784 สัมชิ�ย แซ้ำ"เอง 50

Primary Key ?

Page 24: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

ชิ�อ นามสักี่/ล อาย/ เพัศึ

สัมชิาย แซ้ำ"ต้��ง 25 ชิาย

สัมศึรู้� แซ้ำ"อ0�ง 42 หญ�ง

สัมฤทู�ย แซ้ำ"ต้��ง 23 ชิาย

สัมป็อง แซ้ำ"แต้� 16 ชิาย

สัมชิ�ย แซ้ำ"เล�ง 50 ชิาย

Primary Key?

Page 25: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

ID ชิ�อ นามสักี่/ล อาย/ เพัศึ

1 สัมชิาย แซ้ำ"ต้��ง 25 ชิาย

2 สัมศึรู้� แซ้ำ"อ0�ง 42 หญ�ง

3 สัมฤทู�ย แซ้ำ"ต้��ง 2

3

ชิาย

4 สัมป็อง แซ้ำ"แต้� 16 ชิาย

5 สัมชิ�ย แซ้ำ"เล�ง 50 ชิาย

Primary Key ?

ID เพัศึ

Page 26: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

รู้ห�สัสั�นค�า ชิ�อสั�นค�า จำ'านวน

รู้ห�สัพัน�กี่งาน รู้ห�สัสั�นค�า ยอด้ข้าย

Foreign Key ?ต้ารู้างสั�นค�า

ต้ารู้างยอด้ข้าย

Page 27: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

กฎเก*�ยวข้�องก�บคำ*ย�ในฐานข้�อมู�ลเชิ�งสั�มูพั�นธ์�

• คอข้�อบื้�งค�บื้หรู้อเง�อนไข้ในกี่ารู้อน/ญาต้ให�เกี่,บื้เฉพัาะข้�อม�ลทู��เหมาะสัมลงในฐานข้�อม�ล

• เพั�อให�กี่ารู้เลอกี่ข้�อม�ลจำากี่ฐานข้�อม�ลม�ความถ�กี่ต้�องป็รู้ะเภทูข้องเง�อนไข้•Key constraint ม� 2 รู้�ป็แบื้บื้ คอ

– ค�ย�หล�กี่ ค"าจำะไม"เป็+น NULL– Null ไม"ใชิ"ค"าทู��เป็+น 0 (กี่รู้ณ์�เป็+นต้�วเลข้ )

และไม"ใชิ" space (ในกี่รู้ณ์�เป็+นข้�อความ)– Null หมายถ0งไม"ทูรู้าบื้ค"าหรู้อไม"รู้� �ค"าแน"ชิ�ด้

Page 28: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

มู*คำ-าเป/น Null หมูายถึ2งอะไร ?• Null เป็+นศึ�พัทู�เฉพัาะใน Relational

Database หมายถ0ง ไม"ทูรู้าบื้ค"าข้�อม�ลทู��รู้� �แน"ชิ�ด้ เรู้าสัามารู้ถกี่'าหนด้ให�ค"าข้องคอล�มน�ใด้ๆ เป็+น Null ได้� (ถ�าเป็+นไป็ได้�ควรู้ใสั"ให�ครู้บื้จำะด้�ทู��สั/ด้ )ยกี่เว�นคอล�มน�ทู��เป็+น Primary Key เพัรู้าะจำะไม"สัามารู้ถน'า Primary Key มาใชิ�เข้�าถ0งข้�อม�ลในแต้"ละแถวได้�

Page 29: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

ติ�วอย-างติารางท์*�แสัดงคำ-า Null

รู้ห�สัน�กี่ศึ0กี่ษา รู้ห�สัว�ชิา เกี่รู้ด้ทู��ได้�4900222 E182

4900123 M117 C

4900125 P210 B+

4900236 E182 A

Page 30: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

Referential Integrity

เป็+นกี่ารู้อ�างอ�งข้�อม�ลจำากี่ความสั�มพั�นธ์�อ�น ค"าข้อง Foreign Key ต้�องมาจำากี่ค"าข้อง Primary Key จำากี่ต้ารู้างทู��เกี่��ยวข้�องเทู"าน��น

กฎเก*�ยวข้�องก�บคำ*ย�ในฐานข้�อมู�ลเชิ�งสั�มูพั�นธ์�กฎเก*�ยวข้�องก�บคำ*ย�ในฐานข้�อมู�ลเชิ�งสั�มูพั�นธ์�

รู้ห�สัสั�นค�า ชิ�อสั�นค�า จำ'านวนิ�bk00198 เสั�อยด้ 100

cd00034 กี่างเกี่งข้ายาง

250

รู้ห�สัพัน�กี่งาน รู้ห�สัสั�นค�า ยอด้ข้ายHY001 bk00198 80

HY002 cd00034 200

ต้ารู้างยอด้ข้าย

ต้ารู้างสั�นค�า

Page 31: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

กฎการคำวบคำ%มูคำวามูถึ�กติ�องข้องข้�อมู�ล (Data Integrity)

ฐานข้�อม�ลไม"สัามารู้ถรู้� �ได้�เองว"าข้�อม�ลทู��เกี่,บื้อย�"น� �นสัอด้คล�องกี่�บื้ความเป็+นจำรู้�งหรู้อไม" เรู้าจำ0งต้�องบื้อกี่ให�ฐานข้�อม�ลรู้� �ด้�วยสั��งทู��เรู้�ยกี่ว"า กี่ฎกี่ารู้ควบื้ค/มความถ�กี่ต้�องข้องข้�อม�ล หรู้อ Data Integrity

ต้�วอย"างงานรู้ะบื้บื้ทูะเบื้�ยนน�กี่ศึ0กี่ษาจำะม� Integrity Rule ด้�งต้"อไป็น��• น�กี่ศึ0กี่ษาทู/กี่คนต้�องสั�งกี่�ด้คณ์ะทู��ม�อย�"เทู"าน��น• ว�ชิาทู��ลงทูะเบื้�ยนต้�องเป็+นว�ชิาทู��เป็8ด้สัอนเทู"าน��น• เกี่รู้ด้เฉล��ยแต้"ละเทูอมจำะอย�"รู้ะหว"าง 0.00-4.00 เทู"าน��น• เกี่รู้ด้ทู��ได้�จำะต้�องเป็+น A,B+,B,C+,C,D+,D หรู้อ F เทู"าน��น

เป็+นต้�น

Page 32: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

ประเภท์ข้องร*เลชิ��น

1. ร*เลชิ��นหล�ก (Base Relation)

Relation ทู��ถ�กี่กี่'าหนด้ข้0�นเพั�อเกี่,บื้ข้�อม�ลเพั�อน'าไป็ใชิ�

โด้ย Base Relation จำะเป็+น relation ทู��เกี่,บื้ข้�อม�ลอย�"จำรู้�ง

Page 33: ฐานข้อมูลเชิงสัมพันธ์ Relational Database
Page 34: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

ประเภท์ข้องร*เลชิ��น

2. ว�ว (View)Relation ทู��ถ�กี่สัรู้�างข้0�นต้ามความ

ต้�องกี่ารู้ข้องผ่��ใชิ�งานแต้"ล"ะคน โด้ยจำะกี่'าหนด้ view ข้องต้นข้0�นมาจำากี่รู้�เลชิ��นหล�กี่

Page 35: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

Virtual Table Or Derived Table

Page 36: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

Relationship (คำวามูสั�มูพั�นธ์�)• แบื้"งออกี่เป็+น 3 ป็รู้ะเภทู คอ

– One to One Relationship 1( 1– )

– One to Many Relationship 1( – M)

– Many to Many Relationship (M – N)

Page 37: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

คำวามูสั�มูพั�นธ์�แบบหน2�งติ-อหน2�ง(One to One Relationship)

• เป็+นความสั�มพั�นธ์�ทู��เข้�าใจำง"ายทู��สั/ด้• เป็+นความสั�มพั�นธ์�ข้องข้�อม�ลใน 1 เรู้คอรู้�ด้ใน

ต้ารู้างหน0�งม�ความสั�มพั�นธ์�กี่�บื้ข้�อม�ลอย"างมากี่หน0�งข้�อม�ลกี่�บื้อ�กี่เรู้คอรู้�ด้ในอ�กี่ต้ารู้างหน0�งเทู"าน��นในล�กี่ษณ์ะทู��เป็+นหน0�งต้"อหน0�ง– น�กี่ศึ0กี่ษา 1 คนเทู"าน��นทู��จำะเป็+นนายกี่องค�กี่ารู้

น�กี่ศึ0กี่ษา

น�กี่ศึ0กี่ษา องค�กี่ารู้น�กี่ศึ0กี่ษาเป็+นนายกี่ฯ1 1

Page 38: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

คำวามูสั�มูพั�นธ์�แบบหน2�งติ-อกล%-มู(One to Many Relationship)

• เป็+นความสั�มพั�นธ์�ทู��พับื้บื้"อยทู��สั/ด้ในฐานข้�อม�ล• เป็+นความสั�มพั�นธ์�ข้องข้�อม�ลใน 1 เรู้คอรู้�ด้ในต้ารู้างหน0�ง

ม�ความสั�มพั�นธ์�กี่�บื้ข้�อม�ลมากี่กี่ว"าหน0�งข้�อม�ลกี่�บื้อ�กี่เรู้คอรู้�ด้ในอ�กี่ต้ารู้างหน0�งเทู"าน��นในล�กี่ษณ์ะทู��เป็+นหน0�งต้"อหน0�ง– น�กี่ศึ0กี่ษาแต้"ละคนสัามารู้ถลงทูะเบื้�ยนเรู้�ยนได้�มากี่กี่ว"า 1 ว�ชิา

น�กี่ศึ0กี่ษา รู้ายว�ชิาลงทูะเบื้�ยน1 M

Page 39: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

คำวามูสั�มูพั�นธ์�แบบกล%-มูติ-อกล%-มู(Many to Many Relationship)

• เป็+นความสั�มพั�นธ์�ทู��พับื้ไม"บื้"อยน�กี่• เป็+นความสั�มพั�นธ์�ข้องข้�อม�ลในเรู้คอรู้�ด้ใด้ๆ ข้องต้ารู้าง

หน0�งม�ค"าต้รู้งกี่�บื้ข้�อม�ลข้องหลายๆ เรู้คอรู้�ด้ในต้ารู้างอ�นๆ – รู้ายว�ชิา 1 รู้ายว�ชิาม�อาจำารู้ย�สัอนได้�มากี่กี่ว"า 1 คน– กี่ารู้สั��งซ้ำ�อสั�นค�าในแต้"ละครู้��งสัามารู้ถสั��งซ้ำ�อสั�นค�าได้�มากี่กี่ว"า

1 ชิน�ด้

รู้ายว�ชิา อาจำารู้ย�สัอนโด้ยM N

Page 40: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

ข้�อด*ข้องฐานข้�อมู�ลเชิ�งสั�มูพั�นธ์� 1. ผ่��ใชิ�งานเห,นภาพัข้องข้�อม�ลได้�ง"าย

2. ผ่��ใชิ�ไม"ต้�องรู้� �ว"าข้�อม�ลจำ�ด้เกี่,บื้จำรู้�งอย"างไรู้ รู้วมถ0งกี่ารู้เข้�าถ0ง ว�ธ์�กี่ารู้เรู้�ยกี่ใชิ�ข้�อม�ล

3. ภาษาทู��ใชิ�ในกี่ารู้เรู้�ยกี่ด้�ข้�อม�ล ม�ล�กี่ษณ์ะคล�ายภาษาอ�งกี่ฤษ และไม"จำ'าเป็+นต้�องเข้�ยนเป็+นล'าด้�บื้ข้��นต้อน

4. กี่ารู้เรู้�ยกี่ใชิ�หรู้อเชิ�อมโยงข้�อม�ลทู'าได้�ง"าย

Page 41: ฐานข้อมูลเชิงสัมพันธ์ Relational Database

คำ�าถึามูท์�ายบท์• 1.โครู้งสัรู้�างข้�อม�ลเชิ�งสั�มพั�นธ์�ป็รู้ะกี่อบื้ด้�วยอะไรู้บื้�าง จำง

อธ์�บื้าย• 2. ค/ณ์สัมบื้�ต้�ในกี่ารู้จำ�ด้เกี่,บื้ข้�อม�ลข้องรู้�เลชิ��นม�อะไรู้บื้�าง• 3. รู้�เลชิ�นป็รู้ะกี่อบื้ด้�วยค�ย�ป็รู้ะเภทูต้"างๆ อะไรู้บื้�าง จำง

อธ์�บื้ายพัรู้�อมยกี่ต้�วอย"างป็รู้ะกี่อบื้ป็รู้ะเภทูค�ย�ด้�งกี่ล"าว• 4. Null หมายถ0งอะไรู้ใน Relational Database• 5. เหต้/ใด้จำ0งต้�องม�กี่ารู้น'า Integrity rule มาใชิ�ในฐาน

ข้�อม�ล• 6. ความสั�มพั�นธ์�รู้ะหว"างรู้�เลชิ�นม�กี่��ป็รู้ะเภทู อะไรู้บื้�าง จำงยกี่

ต้�วอย"างป็รู้ะกี่อบื้ (ห�ามยกี่ต้�วอย"างซ้ำ'�ากี่�บื้สัไลด้�ป็รู้ะกี่อบื้กี่ารู้เรู้�ยน)