ระบบการจัดการฐานข้อมูล database management system

60
รรรรรรรรรรรรรรรรรรรรรร DATABASE MANAGEMENT SYSTEM 4123201

Upload: vondra

Post on 05-Jan-2016

54 views

Category:

Documents


0 download

DESCRIPTION

ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM. 4123201. คำอธิบายรายวิชา. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

ระบบการจั�ดการฐานข้�อมู�ลDATABASE

MANAGEMENT SYSTEM

4123201

Page 2: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

2

คำ�าอธิ�บายรายวิ�ชา

ความรู้� �เกี่�ยวกี่ บรู้ะบบฐานข้�อม�ล กี่ารู้ปรู้ะย�กี่ต์� Lin k Lists ความสั มพั นธ์�รู้ะหว�าง Record ในฐาน

ข้�อม�ล กี่ารู้ใช้� Key มากี่กี่ว�า 1 Key ในกี่ารู้ปรู้ะมวลผล รู้�ปแบบ Relation รู้ะบบ Hierarch

y และรู้ะบบ Network กี่ารู้ป$องกี่ นข้�อม�ล รู้ะบบกี่ารู้สั%ารู้องข้�อม�ลและกี่ารู้เรู้ยกี่ค&น กี่ารู้ว'เครู้าะห�ออกี่แบบข้�อม�ล กี่ารู้บรู้'หารู้ฐานข้�อม�ล

Page 3: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

3

การวิ�ดผลการเร�ยน

• สัอบกี่ลางภาค 30 คะแนน • เข้�าเรู้ยน 10 คะแนน • 30Project คะแนน คะแนนปลายภาค 30

Page 4: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

4

การประเมู�นผลการเร�ยน

ต์ามเกี่ณฑ์� รู้ะดั บคะแนน - 80 100A = รู้ะดั บคะแนน + = 75 – 79 รู้ะดั บคะแนน 7 7 707 4

รู้ะดั บคะแนน + = 65 – 69 รู้ะดั บคะแนน 60 64C = – รู้ะดั บคะแนน + = 55 – 59 รู้ะดั บคะแนน 50 54D = – รู้ะดั บคะแนน - =0 4 9

Page 5: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

Part I Introduction

Page 6: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

6

Bit

Byte

Field

Record

File

Database

0

01001010 (เท่�ากี่ บอ กี่ษรู้ J ในต์ารู้าง ASCII)

John Stewart

John Stewart IS101 F01 B+

Name Course Date Grade

John Stewart IS101 F01 B+Karen Taylor IS101 F02 AEmily Vincent IS101 F01 C

Name Course Date Grade

Course File

Course File

Financial File

Personal History

File

Student Databaseโคำรงสร�างล�าด�บช� น

ข้�อมู�ล

Page 7: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

7

รหั�สผ��ใช� ช#$อ - นามูสก&ล เพศ ที่�$อย�* เบอร+ติ�ดติ*อ วิ�นเก�ดB00514 สั�วารู้ ใจสับาย ญ 34 คลองสัาน 025478556 12/01/1977A00128 กี่นกี่ ย'นดั ช้ 126 บางพัล ดั 026441255 09/07/1986A01245 เพั2ญศรู้ สั�ข้สัม ญ 49/2 จต์�จ กี่รู้ 014544255 05/11/1971C13244 บ�ญม ย'นดั ช้ 66 ลาดัพัรู้�าว 066458554 26/04/1980. . . . . .. . . . . .. . . . .

ฟิ.ลด+ เรคำอร+ด

ไฟิล+

ไบติ+

โคำรงสร�างแฟิ1มูข้�อมู�ล

Page 8: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

8

FileFile

คำวิามูส�าคำ�ญข้องข้�อม�ล

เบอร+โที่รเบอร+โที่รติ�นที่างติ�นที่างเบอร+โที่รปลายเบอร+โที่รปลายที่างที่างเวิลาที่�$โที่รออกเวิลาที่�$โที่รออกวิ�นที่�$วิ�นที่�$

คำ�านวิณคำ*าใช�จั*ายคำ�านวิณคำ*าใช�จั*าย

Page 9: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

9

เบอร+โที่ร เบอร+ปลายที่าง เร�$มูติ�น ส� นส&ด วิ�นที่�$ FIELD

เก4บไฟิล+อย*างไร

RECORD

0861106494 0817159090 1415 1416 02032546

0898821136 025832478 0536 0542 02032546

0815946255 0815122362 0821 0840 03032546

0866231221 025148787 1121 1132 04032546

0814556845 0898559512 1311 1323 04032546

. . . . . . . . . .

FILE

Page 10: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

10

DATABASE

เบอร+โที่ร เบอร+ปลายที่าง เวิลาเร�$มูติ�น เวิลา ส� นส&ด วิ�นที่�$

ติารางที่�$ 1

ติารางที่�$ 2 เบอร+โที่ร ช#$อ- นามูสก&ล ที่�$อย�* เบอร+

ติ�ดติ*อ อ�เมูล+ ติารางที่�$ 3

เบอร+โที่ร ป5ญหัา แก�ไข้ ผ��ร�บผ�ดชอบ วิ�นที่�$ เวิลา

Page 11: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

11

Database systemDatabase system

DATABASE

แผนกบ�ญช� แผนกประชาส�มูพ�นธิ+

DBMSฝ่7ายบร�หัาร

Page 12: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

12

ระบบการจั�ดการฐานข้�อมู�ลDatabase management systems : DBMS

ซอฟิที่+แวิร+ระบบชน�ดหัน9$ง ที่�$ถู�กสร�างข้9 น มูาเพ#$อจั�ดการ ข้�อมู�ลในฐานข้�อมู�ล เป;น

ติ�วิกลางระหัวิ*างผ��ใช�ก�บฐานข้�อมู�ลส*วินประกอบข้อง DBMS

• SQL (Structure Query Language)

• โปรแกรมูอ�านวิยคำวิามูสะดวิก (General Utilities)

• โปรแกรมูช*วิยสร�างโปรแกรมูประย&กติ+และรายงาน (Applicaton and Report Generators)

• พจันาน&กรมูข้�อมู�ล (Data Dictionary)

Page 13: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

13

คำวิามูสามูารถูเบ# องติ�น• สร�างติารางข้�อมู�ล • เพ�$มู ปร�บปร&ง เร�ยกคำ�นข้�อมู�ล• เก4บรายละเอ�ยดเก�$ยวิก�บข้�อมู�ลไวิ�ใน data dictionary• มู�ระบบเสร�มูการที่�างาน • มู�ระบบส�ารองข้�อมู�ล• สน�บสน&นเคำร#$องมู#อการที่�ารายงาน

ระบบการจั�ดการฐานข้�อมู�ลDatabase management systems : DBMS

Page 14: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

14

ช#$อซอฟิที่+แวิร+ บร�ษั�ที่ผ��ผล�ติ หัมูายเหัติ&DB2 IBM ซอฟิที่+แวิร+ล�ข้ส�ที่ธิ�=Informix IBM ซอฟิที่+แวิร+ล�ข้ส�ที่ธิ�=Ingres Ingres corporation ฟิร�ซอฟิที่+แวิร+InterBase Borland ซอฟิที่+แวิร+ล�ข้ส�ที่ธิ�=MaxDB MySQL AB ฟิร�ซอฟิที่+แวิร+Microsoft Access Microsoft ซอฟิที่+แวิร+ล�ข้ส�ที่ธิ�=Microsoft SQL Server Microsoft ซอฟิที่+แวิร+ล�ข้ส�ที่ธิ�=MySQL MySQL AB ฟิร�ซอฟิที่+แวิร+Oracle Oracle ซอฟิที่+แวิร+ล�ข้ส�ที่ธิ�=PostgreSQL

PostgreSQL Global Development Group ฟิร�ซอฟิที่+แวิร+

Sybase Sybase Inc. ซอฟิที่+แวิร+ล�ข้ส�ที่ธิ�=

ซอฟิที่+แวิร+ระบบจั�ดการฐานข้�อมู�ล

Page 15: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

15

ฮาร+ดแวิร+- หน�วยน%าข้�อม�ลเข้�า- หน�วยน%าข้�อม�ลออกี่- หน�วยปรู้ะมวลผลกี่ลาง- หน�วยเกี่2บข้�อม�ลสั%ารู้อง- อ�ปกี่รู้ณ�กี่ารู้สั&�อสัารู้

ซอฟิที่+แวิร+- โปรู้แกี่รู้มจ ดักี่ารู้ฐานข้�อม�ล

บ&คำลากร- ผ��ใช้�งาน- ผ��ควบค�มรู้ะบบ- ผ��พั ฒนาโปรู้แกี่รู้ม

ข้� นติอนการด�าเน�นงาน- ข้ 6นต์อนกี่ารู้ปฏิ'บ ต์'กี่ารู้ข้องผ��ปฏิ'บ ต์'งาน

ข้�อมู�ลฐาน

ข้�อม�ล

องคำ+ประกอบข้องระบบฐานข้�อมู�ล

Page 16: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

16

PhysicalStorage of data

สถูาป5ติยกรรมูข้องระบบฐานข้�อมู�ล

... ระด�บภายนอก

ระด�บแนวิคำ�ด

ระด�บภายใน

สก�มูมู*า (Schema)(Global logical view)

วิ�วิ 2วิ�วิ 1 วิ�วิ nExternal level

Conceptual level

Internal level

Page 17: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

17

ประโยชน+ข้องสถูาป5ติยกรรมู 3 ระด�บ มู&มูมูองข้�อมู�ลข้องผ��ใช�งาน

• ที่�าใหั�ผ��ใช�งานไมู*ติ�องสนใจัวิ*าข้�อมู�ลจัะถู�กเก4บอย*างไรในด�สคำ+ เมู#$อติ�องการข้�อมู�ลก4สามูารถูอ�างถู9งติารางและเข้ติข้�อมู�ล

น� น ๆ ได�โดยติรง ซ9$ง DBMS จัะที่�าหัน�าที่�$ด�วิ*าข้�อมู�ลที่�$ติ�องการน� นเก4บอย�* ณ ติ�าแหัน*งใด (track ใด cylinder ใด ในด�สคำ+ และที่�าการด9งข้�อมู�ลน� นจัากด�สก+มูาใหั�แก*ผ��ใช�)

คำวิามูเป;นอ�สระก�นข้องข้�อมู�ล• การเปล�$ยนแปลงข้�อมู�ลในระด�บแนวิคำ�ดไมู*มู�ผลกระที่บก�บ

โปรแกรมูประย&กติ+ที่�$ผ��ใช�เข้�ยนข้9 นในระด�บภายนอก• การเปล�$ยนแปลงวิ�ธิ�การเก4บข้�อมู�ลในส#$อ ไมู*มู�ผลกระที่บก�บ

การเก4บข้�อมู�ลระด�บแนวิคำ�ด

Page 18: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

Part II Relational Database

Page 19: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

19

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+(Relational database)

ปA คำ.ศ .1970 โดย ดร.เอดการ+ คำอดด+ (Edgar F. Codd)

เป;นร�ปแบบที่�$ที่�าคำวิามูเข้�าใจัได�ง*าย สามูารถูจั�ดการก�บข้�อมู�ลได�โดยใช�คำ�าส�$งง*าย ๆ ส*วินข้องการติ�ดติ*อก�บผ��ใช� ก�บส*วินข้องการเก4บ

ข้�อมู�ลจัร�งน� นมู�คำวิามูเป;นอ�สระติ*อก�น น�$นคำ#อในมู&มูมูองข้องผ��ใช�จัะไมู*ร��ส9กถู9งรายละเอ�ยดที่�$ซ�บซ�อนข้องการเก4บจัร�ง

Page 20: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

20

ศ�พที่+ที่�$เก�$ยวิข้�อง ร�เลช�$น (Relation) แอที่ติร�บ�วิติ+ (Attribute) โดเมูน (Domain) ที่�พเพ�ล (Tuple) ด�กร� (Degree) คำาร+ด�น�ลล�ติ� (Cardinality)

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 21: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

21

ร�เลช�$น หัมูายถู9ง การก�าหันดติารางที่�$ประกอบด�วิยคำอล�มูน+และแถูวิ หัร#อติาราง 2 มู�ติ�

ติาราง (table)

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 22: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

22

ล�กษัณะข้องร�เลช�$น 1 .เป;นติาราง 2 มู�ติ�2. แติ*ละช*องข้องติารางติ�องบรรจั&ข้�อมู�ลเพ�ยงคำ*า

เด�ยวิ3. ไมู*จั�าเป;นติ�องเร�ยงล�าด�บคำอล�มูน+ หัร#อแถูวิใด ๆ 4. ข้�อมู�ลในแติ*ละแถูวิติ�องไมู*ซ� าก�น 5. ข้�อมู�ลในแติ*ละคำอล�มูน+จัะติ�องเป;นข้�อมู�ลประเภที่

เด�ยวิก�น

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 23: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

23

แอที่ติร�บ�วิติ+ คำ#อ คำ&ณสมูบ�ติ�ข้องร�เลช�$น หัร#อคำอล�มูน+ข้องติารางน�$นเอง หัร#ออาจัเที่�ยบได�ก�บฟิ.ลด+ในแฟิ1มูข้�อมู�ล

น�กศ9กษัา (รหั�สน�กศ9กษัา , ช#$อ-นามูสก&ล , เพศ ,เบอร+ติ�ดติ*อ)

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 24: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

24

Composite attribute หัร#อ แอที่ติร�บ�วิติ+ผสมู แอที่ติร�บ�วิติ+ที่�$ประกอบข้9 นมูาจัากข้�อมู�ลมูากกวิ*า 1 คำ*า เป;นการ

รวิมูหัลายแอที่ติร�บ�วิติ+เข้�าด�วิยก�น สามูารถูน�าไปแยกใหั�กลายเป;นแอที่ติร�บ�วิติ+เด�$ยวิได� เช*น แอที่ติร�บ�วิติ+ที่�$อย�* ซ9$งประกอบด�วิย บ�านเลข้ที่�$ ถูนน อ�าเภอ จั�งหัวิ�ด รหั�สไปรษัณ�ย+ แยกได�ถู9ง

5 แอที่ติร�บ�วิติ+ Derived atrribute หัร#อ แอที่ติร�บ�วิติ+ที่�$แปลคำ*ามูา แอที่ติร�บ�วิติ+ที่�$อาจัไมู*มู�ข้�อมู�ลใด ๆ แติ*จัะได�คำ*าข้�อมู�ลมูาจัากการ

คำ�านวิณจัากแอที่ติร�บ�วิติ+อ#$น เช*น แอที่ติร�บ�วิติ+อาย&การที่�างาน คำ�านวิณมูาจัาก แอที่ติร�บ�วิติ+วิ�นเร�$มูที่�างาน ลบก�บวิ�นที่�$

ป5จัจั&บ�น เป;นติ�น

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 25: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

25

โดเมูน (Domain ) คำ#อการระบ&ข้อบเข้ติข้�อมู�ลที่�$เป;นไปได�ใหั�แก*แอที่

ติร�บ�วิติ+ หัน9$ง ๆ เพ#$อเป;นการร�บประก�นคำวิามูถู�กติ�องข้�อมู�ลในระด�บหัน9$ง

โดเมูนข้องแอที่ติร�บ�วิติ+เพศ คำ#อ ชาย หัร#อ หัญ�ง อย*างใดอย*างหัน9$งเที่*าน� น

โดเมูนข้องเง�นเด#อนอาจัารย+จัะติ�องมู�คำ*าไมู*เป;นศ�นย+ และ ไมู*ติ�ดลบ

โดเมูนข้องช#$อสมูาช�กจัะติ�องเป;นติ�วิอ�กษัรเที่*าน� น

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 26: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

26

ที่�พเพ�ล (Tuple)

คำ#อ แถูวิ หัร#อระเบ�ยน ในติาราง ด�กร� (Degree)

คำ#อ จั�านวินแอที่ติร�บ�วิติ+ในร�เลช�$น ด�กร�อาจัช� ใหั�เหั4นถู9งคำวิามูละเอ�ยดข้องรายการข้�อมู�ลก4ได�

คำาร+ด�น�ลล�ติ� (Cardinality)คำ#อจั�านวินแถูวิ หัร#อจั�านวินที่�พเพ�ล ภายในติารางหัน9$ง ๆ คำาร+ด�น�ลล�ติ� ช� ใหั�เหั4นถู9งจั�านวินรายการข้�อมู�ลในติารางหัน9$ง ๆ

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 27: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

27

คำ�ย+หัล�ก (Primary key) แอที่ติร�บ�วิติ+ที่�$ใช�เพ#$อการเจัาะจังข้�อมู�ลแถูวิใด

แถูวิหัน9$งในติาราง โดยที่�$คำ�ย+หัล�ก อาจัประกอบด�วิยแอที่ติร�บ�วิติ+ 1 ติ�วิหัร#อมูากกวิ*า 1 ติ�วิ ที่�$สามูารถูใช�เป;นติ�วิเจัาะจังบอกวิ*าก�าล�งอ�างอ�งถู9งที่�พเพ�ลไหันหัร#อแถูวิไหัน

อาศ�ยคำ�ย+หัล�กเพ#$อช� เฉพาะเจัาะจังวิ*าติ�องการระบ&ถู9งข้�อมู�ลแถูวิใดแถูวิหัน9$งในร�เลช�$น

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 28: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

28

คำ&ณสมูบ�ติ�ข้องแอที่ติร�บ�วิติ+ที่�$เป;นคำ�ย+หัล�ก 1( ) คำ*าข้องข้�อมู�ลที่&กแถูวิในแอที่ติร�บ�วิติ+ที่�$ที่�าหัน�าที่�$เป;น

คำ�ย+หัล�กติ�องไมู*ซ� าก�น (2) แอที่ติร�บ�วิติ+ที่�$เป;นคำ�ย+หัล�กอาจัประกอบข้9 นจัากแอที่

ติร�บ�วิติ+มูากกวิ*า 1 แอที่ติร�บ�วิติ+ เพ#$อใหั�ได�เป;นคำ*าที่�$ไมู*ซ� าก�นในแติ*ละแถูวิ เร�ยกวิ*า Composite key

(3) แอที่ติร�บ�วิติ+ที่�$เป;นคำ�ย+หัล�กจัะติ�องไมู*เป;นคำ*าวิ*าง (null values)

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 29: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

29

ล�กคำ�า (รหั�สล�กคำ�า , ช#$อ-นามูสก&ล , ที่�$อย�* , โปรโมูช�น , เบอร+ติ�ดติ*อ , หัมูายเลข้ประจั�าติ�วิประชาชน )

ล�กคำ�า

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 30: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

30

การลงที่ะเบ�ยน (รหั�สน�กศ9กษัา, รหั�สวิ�ชาที่�$ลงที่ะเบ�ยน, รหั�สผ��สอน, สถูานที่�$, วิ�นที่�$เร�ยน

การลงที่ะเบ�ยน

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 31: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

31

คำ�ย+นอก หัร#อคำ�ย+ติ*างด�าวิ (Foreign key) คำวิามูส�มูพ�นธิ+ที่�$เก�ดข้9 นระหัวิ*างร�เลช�นจัะอาศ�ยแอที่ติร�บ�

วิติ+ติ�วิหัน9$งซ9$งไปส�มูพ�นธิ+ก�บคำ�ย+หัล�กในร�เลช�นอ#$น เก�ดเป;นการเช#$อมูโยงระหัวิ*างร�เลช�น แอที่ติร�บ�วิติ+น� เร�ยก

วิ*า คำ�ย+นอก หัร#อคำ�ย+ติ*างด�าวิ คำ#อ แอที่ติร�บ�วิติ+ที่�$ใช�แสดงคำวิามูส�มูพ�นธิ+ระหัวิ*างร�เลช�น คำ#อ กล&*มูข้องแอที่ติร�บ�วิติ+ในร�เลช�นหัน9$งที่�$มู�คำ&ณสมูบ�ติ�

เป;นคำ�ย+หัล�ก และไปปรากฏในอ�กร�เลช�$นหัน9$ง คำ#อ แอที่ติร�บ�วิติ+ที่�$ข้�อมู�ลมู�คำวิามูสอดคำล�องก�บคำ�ย+หัล�กใน

อ�กร�เลช�นหัน9$ง

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 32: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

32

คำ&ณสมูบ�ติ�ข้องคำ�ย+นอก1( ) คำ*าที่�$ปรากฏในแอที่ติร�บ�วิติ+ที่�$เป;นคำ�ย+นอกในร�เลช�น

หัน9$งจัะติ�องมู�คำ*าเที่*าก�บคำ*าในแอที่ติร�บ�วิติ+ที่�$เป;นคำ�ย+หัล�กในแถูวิใดแถูวิหัน9$งในอ�กร�เลช�นหัน9$ง

(2) คำ*าที่�$ปรากฏในแอที่ติร�บ�วิติ+ที่�$เป;นคำ�ย+นอกอาจัเป;นคำ*าวิ*างได�

(3) ที่� งคำ�ย+นอกและคำ�ย+หัล�กในอ�กร�เลช�นที่�$ส�มูพ�นธิ+ก�นไมู*จั�าเป;นติ�องมู�ช#$อแอที่ติร�บ�วิติ+เด�ยวิก�นก4ได� แติ*จั�าเป;น

ติ�องมู�โดเมูนเด�ยวิก�น

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 33: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

33

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 34: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

34

คำ�ย+คำ�*แข้*ง (Candidate key)

ร�เลช�นหัน9$ง ๆ อาจัมู�แอที่ติร�บ�วิติ+ที่�$สามูารถูที่�าหัน�าที่�$เป;นคำ�ย+หัล�กได�มูากกวิ*าหัน9$งแอที่ติร�บ�วิติ+ แอที่ติร�บ�วิติ+เหัล*า

น� น จัะถู�กเร�ยกวิ*า คำ�ย+คำ�*แข้*ง คำ#อ แอที่ติร�บ�วิติ+หัร#อกล&*มูข้องแอที่ติร�บ�วิติ+อ#$นที่�$สามูารถู

ที่�าหัน�าที่�$เป;นคำ�ย+หัล�กได� อาจัเร�ยกอ�กช#$อหัน9$งวิ*า คำ�ย+ส�ารอง หัร#อ alternate key

คำ�ย+หัล�กคำ#อคำ�ย+ที่�$ถู�กเล#อกมูาจัากกล&*มูข้องคำ�ย+คำ�*แข้*งในร�เลช�$นหัน9$ง ๆ น�$นเอง

ฐานข้�อมู�ลเช�งส�มูพ�นธิ+

Page 35: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

Part III Structure Query Language

Page 36: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

36

ภาษัาสอบถูามูเช�งโคำรงสร�าง (Structure Query Language) หัร#อ SQL หัร#อ ภาษัาซ�เคำวิล เป;นภาษัาพ# นฐานส�าหัร�บการจั�ดการบร�หัารข้�อมู�ลส�าหัร�บ

ระบบฐานข้�อมู�ลเช�งส�มูพ�นธิ+ วิ�ติถู&ประสงคำ+เพ#$อใช�สร�างฐานข้�อมู�ลและโคำรงสร�างร�เลช�น สน�บสน&นการจั�ดการข้�อมู�ลพ# นฐาน ได�แก* การเพ�$มู ปร�บปร&ง

และลบข้�อมู�ล และสน�บสน&นการคำ�วิร�ข้�อมู�ล จั�ดเป;นภาษัาร&*นที่�$ 4(Fourth Generation

language ) คำ&ณสมูบ�ติ�ส�าคำ�ญคำ#อ เร�ยนร��ใช�งานได�ง*าย น�าไปใช�ได�อย*างมู�

ประส�ที่ธิ�ภาพ มู�ล�กษัณะเป;นภาษัาธิรรมูชาติ�ใกล�เคำ�ยงก�บภาษัามูน&ษัย+

สามูารถูใช�ได�ก�บเคำร#$องคำอมูพ�วิเติอร+ที่&กแพลติฟิอร+มู

SQL

Page 37: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

37

SQL

ประเภที่ข้องคำ�าส�$งในภาษัาซ�เคำวิล คำ�าส�$งน�ยามูข้�อมู�ล (Data definition) ได�แก* คำ�าส�$งที่�$ใช�ในการ

จั�ดการโคำรงสร�างติารางในฐานข้�อมู�ล เช*น คำ�าส�$งที่�$ใช�สร�างฐานข้�อมู�ล คำ�าส�$งสร�างติาราง คำ�าส�$งเพ�$มูและลบฟิ.ลด+ในติาราง เป;นติ�น

ได�แก* Create Database, Create Table, Alter Table เป;นติ�น

คำ�าส�$งจั�ดการข้�อมู�ล (Data manipulation) เป;นกล&*มูคำ�าส�$งที่�$ใช�จั�ดการก�บข้�อมู�ลที่�$อย�*ภายในติารางข้�อมู�ล ไมู*เก�$ยวิก�บโคำรงสร�างติาราง

เช*น การเพ�$มูการปร�บปร&ง การลบข้�อมู�ลในติาราง เป;นติ�น ได�แก* Insert Update และ Delete

คำ�าส�$งเร�ยกคำ�นข้�อมู�ล (Data retrieval) เป;นคำ�าส�$งส�าหัร�บเร�ยกด�ข้�อมู�ลจัากติาราง เพ#$อแสดงผลออกมูาติามูเง#$อนไข้ที่�$ระบ& ได�แก* คำ�าส�$ง select ร�ปแบบไวิยากรณ+ข้องคำ�าส�$ง select มู�คำวิามูย#ดหัย&*นมูาก

พอที่�$จัะสามูารถูคำ�นหัาข้�อมู�ลภายใติ�เง#$อนไข้ที่�$ซ�บซ�อนได�

Page 38: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

38

SQL

ประเภที่การใช�งานข้องภาษัาซ�เคำวิล

1( ) การใช�งานแบบโติ�ติอบ (Interactive SQL) ผ��ใช�สามูารถูพ�มูพ+ประโยคำคำ�าส�$งในภาษัาซ�เคำวิลผ*าน

ที่างจัอภาพ และคำ�าส�$งจัะถู�กน�าไปปฏ�บ�ติ�ที่�นที่� มู�กใหั�ส�ที่ธิ�แก*ผ��ใช�ที่�$มู�หัน�าที่�$โดยติรงเที่*าน� น

(2) การใช�งานแบบฝ่5งติ�วิในโปรแกรมู (Embedded SQL ) หัมูายถู9งการสอดแที่รกประโยคำคำ�าส�$งภาษัาซ�เคำวิล

ไวิ�ในภาษัาระด�บส�งเพ#$อปฏ�บ�ติ�การก�บฐานข้�อมู�ล ภาษัาระด�บส�งที่�$สน�บสน&นวิ�ธิ�การน� ได�แก* ภาษัาซ� ภาษัาโคำบอล ภาษัาปาส

คำาล เป;นติ�น (3) การใช�งานแบบโปรแกรมู (Batch SQL)

หัมูายถู9งการเข้�ยนโปรแกรมูด�วิยคำ�าส�$งในภาษัาซ�เคำวิล ที่�$สามูารถูที่�างานและใหั�ผลล�พธิ+แบบเบ4ดเสร4จั เช*น การพ�มูพ+รายงานประจั�าวิ�น การพ�มูพ+รายงานประจั�าเด#อน เป;นติ�น

Page 39: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

Part IV Integrity Control

Page 40: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

40

กฎข้องคำวิามูคำงสภาพ (Integrity rule)

กฎคำวิามูคำงสภาพข้องการอ�างอ�ง (Referential integrity rule)

กฎคำวิามูคำงสภาพข้องการอ�างอ�ง (Referential integrity rule)

กฎคำวิามูคำงสภาพข้องเอนติ�ติ�

(Entity integrity rule)

กฎคำวิามูคำงสภาพข้องเอนติ�ติ�

(Entity integrity rule)

Page 41: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

41

Entity integrity rule

“คำ�ย+หัล�กจัะไมู*อน&ญาติใหั�มู�คำ*าวิ*าง”

Page 42: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

42

Referential integrity rule

ถู�ามู�ร�เลช�$น R2 ซ9$งมู� Fk เป;นคำ�ย+นอกที่�$อ�างอ�งถู9งคำ�ย+หัล�ก Pk ในร�เลช�$น R1 ส�าหัร�บที่&กๆ คำ*าข้อง Fk ใน R2 จัะติ�อง

หัร#อไมู*ก4ติ�องมู�คำ*า

attribute ใน Fk เป;นคำ*า

วิ*าง

หัร#อไมู*ก4ติ�องมู�คำ*า

attribute ใน Fk เป;นคำ*า

วิ*าง

มู�คำ*าเที่*าก�บ คำ*า Pk ใน

แถูวิใดแถูวิหัน9$งในร�เลช�$น R1

มู�คำ*าเที่*าก�บ คำ*า Pk ใน

แถูวิใดแถูวิหัน9$งในร�เลช�$น R1

Page 43: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

43ร�ปแสดงร�เลช�นที่�$ผ�ดกฎคำวิามูคำงสภาพข้องการอ�างอ�ง

คำนงาน(Worker)

รหั�สคำนงาน ช#$อคำนงาน อ�ติราคำ*าแรงติ*อชมู. ประเภที่คำวิามูช�านาญ รหั�สผ��คำวิบคำ&มูWk_ID (Pk) Wk_NAME Hour_Rate Skill_Type (Fk) Supv_ID (Fk)

1245 สั�ดัใจดัพัรู้�อม 16 ไฟฟ$า 14112521 พั'เช้ฏิมากี่ม 16 ป�น 25221411 พั'ช้ ยใจซื่&�อ 16.5 ม�งหล งคา2511 พั'เช้ฏิมากี่ม 15 ปรู้ะปา2522 ดั�วงเกี่&6อกี่�ล 16.5 ป�น

คำวิามูช�านาญ(Skill)

ประเภที่คำวิามูช�านาญ อ�ติราโบน�ส จั�านวินชมู.ข้� นติ�$าSkill_Type (Pk) Bonus_Rate Min_Hour

ปรู้ะปา 3 45ไฟฟ$า 3.5 40ป�น 2.5 50

มู&งหัล�งคำา ไมู*ใช* ข้�อมู�ลที่�$

มู�ในติารางประเภที่คำวิามู

ช�านาญ

มู&งหัล�งคำา ไมู*ใช* ข้�อมู�ลที่�$

มู�ในติารางประเภที่คำวิามู

ช�านาญ

Page 44: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

44

ถู�ามู�ใคำรไปแก�ไข้หัร#อลบข้�อมู�ลซ9$งมู�ผลไปกระที่บก�บกฎ Integrity จัะร�บมู#อ

อย*างไร

ถู�ามู�ใคำรไปแก�ไข้หัร#อลบข้�อมู�ลซ9$งมู�ผลไปกระที่บก�บกฎ Integrity จัะร�บมู#อ

อย*างไร

ป5ญหัา

วิ�ธิ�แก�ไข้ที่�$เป;นไปได� 2 ที่าง คำ#อ...ติ� งระบบใหั�ไมู*ยอมูร�บการเปล�$ยนแปลงด�ง

กล*าวิ หัร#อไมู*ก4 อน&ญาติใหั�เปล�$ยนแปลงได� โดยระบบจัะ

ที่�าการปร�บแติ*ง ข้�อมู�ลที่�$เก�$ยวิข้�องใหั�ย�ง คำงเป;นไปติามูกฎที่� ง 2 อย�*

วิ�ธิ�แก�ไข้ที่�$เป;นไปได� 2 ที่าง คำ#อ...ติ� งระบบใหั�ไมู*ยอมูร�บการเปล�$ยนแปลงด�ง

กล*าวิ หัร#อไมู*ก4 อน&ญาติใหั�เปล�$ยนแปลงได� โดยระบบจัะ

ที่�าการปร�บแติ*ง ข้�อมู�ลที่�$เก�$ยวิข้�องใหั�ย�ง คำงเป;นไปติามูกฎที่� ง 2 อย�*

Page 45: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

45

ติารางติ�วิอย*างแสดงการก�าหันดสถูานการณ+ติ*าง ๆ เพ#$อใหั�เป;นไปติามู referential integrity

Page 46: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

46

สถูานการณ+ที่�$เป;นไปได� 3 ที่างกระที่�าแบบเป;นที่อดๆ (cascade)

ยอมูแบบมู�เง#$อนไข้ (restricted)

เปล�$ยนเป;นคำ*าวิ*าง (nullify)

Page 47: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

47

ร�ปแสดงการก�าหันดใหั�ติรวิจัสอบกฎคำวิามูคำงสภาพข้องการอ�างอ�งและการก�าหันดสถูานการณ+แบบ CASCADES

CASCADESCASCADESCASCADESCASCADES

Page 48: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

Part V Database design

Page 49: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

49

ผ�งเอ4นติ�ติ� -ร�เลช�นช�พ (ERD: Entity-

Relational Diagram) Peter Chen (1976) มูาติรฐาน

ANSI ปA 1988 ERD แสดงเอ4นติ�ติ� และคำวิามูส�มูพ�นธิ+

ระหัวิ*างก�นข้องเอ4นติ�ติ� ที่�$ประกอบก�นเป;นฐานข้�อมู�ล

ใช�เป;นเคำร#$องมู#อส#$อสารระหัวิ*างผ��ออกแบบฐานข้�อมู�ลและผ��ใช�ฐานข้�อมู�ล

Entity-Relational Model

Page 50: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

50

องคำ+ประกอบข้อง ERD เอ4นติ�ติ� (Entity)แอที่ติร�บ�วิที่+ (Attribute)คำวิามูส�มูพ�นธิ+ (Relationship)

Page 51: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

51

เอ4นติ�ติ� (Entity) ส�$งติ*าง ๆ ที่�$มู�เอกล�กษัณ+สามูารถูช� เฉพาะเจัาะจัง

ได� เป;นส�$งที่�$สามูารถูน�าไปเก4บในฐานข้�อมู�ลได� อาจั เป;นส�$งที่�$เป;นร�ปธิรรมู หัร#อนามูธิรรมูก4ได� เช*น

บ&คำคำล ส�ติวิ+ ส�$งข้อง สถูานที่�$ คำวิามูคำ�ด เหัติ&การณ+ เป;นติ�น

บ&คำคำล พัน กี่งาน น กี่ศ;กี่ษา น กี่ฟ�ต์บอล แพัท่ย� ส�$งข้อง สั'นค�า รู้ถยนต์� หน งสั&อ สถูานที่�$ สันามบ'น รู้�านอาหารู้ โกี่ดั งสั'นค�า คำวิามูคำ�ด หล กี่สั�ต์รู้ แผนปรู้ะกี่ นช้ว'ต์ เหัติ&การณ+ กี่ารู้แข้�งข้ นฟ�ต์บอล ข้�าว กี่ารู้รู้ กี่ษาโรู้ค

Page 52: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

52

แอที่ติร�บ�วิที่+ (Attribute) คำ&ณสมูบ�ติ� ล�กษัณะหัร#อรายละเอ�ยดข้องเอ4นติ�ติ�

พน�กงาน ช#$อ - นามูสก&ล

ส*วินส�ง

น� าหัน�ก

วิ�นเด#อนปAเก�ด

ประวิ�ติ�การศ9กษัา

กร&Eปเล#อดหัมูายเลข้บ�ติรประจั�าติ�วิประชาชน

ที่�$อย�*

Page 53: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

53

ร�านอาหัารสาข้า

ที่�$ติ� ง

ผ��จั�ดการร�านเบอร+โที่รศ�พที่+จั�านวินโติEะ

จั�านวินบร�กร

Page 54: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

54

คำวิามูส�มูพ�นธิ+ (Relationship)คำวิามูส�มูพ�นธิ+ระหัวิ*างเอ4นติ�ติ� ในฐานข้�อมู�ล

ล�กคำ�า ก�บ ส�นคำ�า คำวิามูส�มูพ�นธิ+ คำ#อ ส�$งซ# อ

น�กศ9กษัา ก�บ แผนการเร�ยน

คำวิามูส�มูพ�นธิ+ คำ#อ ลงที่ะเบ�ยน อาจัารย+ ก�บ คำณะ

คำวิามูส�มูพ�นธิ+ คำ#อ ส�งก�ด

Page 55: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

55

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

One)สัาม ภรู้รู้ยา–ผ��น%าปรู้ะเท่ศ ปรู้ะเท่ศ–

ความสั มพั นธ์�แบบหัน9$งติ*อกล&*มู (One to Many)แม� ล�กี่–อาจารู้ย�ท่�ปรู้;กี่ษา - น กี่ศ;กี่ษา

ความสั มพั นธ์�แบบกล&*มูติ*อกล&*มู (Many to Many)ล�กี่ค�า สั'นค�า–รู้ายว'ช้า - น กี่ศ;กี่ษา

Page 56: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

56

สั�วนปรู้ะกี่อบข้อง ER Diagram

1. Entity ใช�ส�ญล�กษัณ+

พัน กี่งานข้ายพัน กี่งานข้าย สั'นค�าสั'นค�าข้ายสั'นค�าข้ายสั'นค�าM Nรู้ห สัพัน กี่งานรู้ห สัพัน กี่งาน

ช้&�อพัน กี่งานช้&�อพัน กี่งาน

ท่�อย��ท่�อย��

รู้ห สัสั'นค�ารู้ห สัสั'นค�า

ช้&�อสั'นค�าช้&�อสั'นค�า

จ%านวนคงเหล&อจ%านวนคงเหล&อ

รู้าคารู้าคาโกี่ดั งท่�เกี่2บโกี่ดั งท่�เกี่2บเบอรู้�โท่รู้เบอรู้�โท่รู้

2. Attribute ใช�ส�ญล�กษัณ+3. Relationship ใช�ส�ญล�กษัณ+

Page 57: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

57

ข้ 6นต์อนกี่ารู้แท่นความสั มพั นธ์�ข้องข้�อม�ลดั�วย ER DiagramER Diagram1 . ก�าหันด Entity ที่�$จั�าเป;น2. ก�าหันดคำวิามูส�มูพ�นธิ+ระหัวิ*าง Entity

3. ก�าหันด Attribute ข้อง Entity

4. พ�จัารณา Attribute ที่�$ข้9 นก�บ Relationship

5. เล#อก Primary key (Identifier)

... เปล�$ยน ER Diagram เป;น Table

Page 58: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

58

การแปลงคำวิามูส�มูพ�นธิ+ E-R ใหั�อย�*ในร�ปติารางในฐานข้�อมู�ลเช�งส�มูพ�นธิ+ แติ*ละเอ4นติ�ติ� จัะถู�กแปลงเป;นติาราง ช#$อ

เอ4นติ�ติ� จัะเป;น ช#$อติาราง แติ*ละแอที่ติร�บ�วิติ+จัะกลายเป;นคำอล�มูน+ข้อง

ติาราง มู�แอที่ติร�บ�วิติ+หัน9$งที่�าหัน�าที่�$เป;นคำ�ย+หัล�ก

ข้องติาราง

Page 59: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

59

การแปลงคำวิามูส�มูพ�นธิ+ แยกได� 3 ล�กษัณะ

ติามูคำวิามูส�มูพ�นธิ+แบบหัน9$งติ*อหัน9$งคย�หล กี่ข้องต์ารู้างหน;�งจะกี่ลายเป=นคย�นอกี่ข้องอกี่ต์ารู้าง

หน;�งแบบหัน9$งติ*อกล&*มู

คย�หล กี่ข้องเอ2นต์'ต์6ดั�าน One เป=นคย�นอกี่ข้องเอ2นต์'ต์6ดั�าน Many

แบบกล&*มูติ*อกล&*มูสัรู้�างต์ารู้างใหม�ข้;6นมา โดัยมคย�หล กี่จากี่เอ2นต์'ต์6ท่ 6งสัองมาท่%า

หน�าท่�รู้ �วมกี่ นในต์ารู้างใหม� ต์ารู้างใหม�น6จะถ�กี่เรู้ยกี่ว�า Junction Table (ต์ารู้างเช้&�อมต์�อ) ท่%ากี่ารู้เช้&�อมเอ2นต์'ต์6ท่�มความสั มพั นธ์�แบบกี่ล��มต์�อกี่ล��ม

Page 60: ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM

60

ติ�วิอย*างพ�จัารณาส*วินหัน9$งข้องระบบลงที่ะเบ�ยนน�กศ9กษัา ก�าหันดคำวิามูส�มูพ�นธิ+ข้องแติ*ละ Entity ได�ด�งน�

1. น�กศ9กษัาลงที่ะเบ�ยนได�หัลายรายวิ�ชา 2. รายวิ�ชาหัน9$งๆ น�กศ9กษัาสามูารถูลงที่ะเบ�ยน

ได�หัลายคำน 3. น�กศ9กษัาคำนหัน9$งส�งก�ดได� 1 สาข้าวิ�ชา 4. สาข้าวิ�ชาแติ*ละสาข้าวิ�ชามู�น�กศ9กษัาส�งก�ดได�

หัลายคำน