ระบบการจัดการฐานข้อมูล database management system
DESCRIPTION
ระบบการจัดการฐานข้อมูล DATABASE MANAGEMENT SYSTEM. 4123201. คำอธิบายรายวิชา. - PowerPoint PPT PresentationTRANSCRIPT
ระบบการจั�ดการฐานข้�อมู�ลDATABASE
MANAGEMENT SYSTEM
4123201
2
คำ�าอธิ�บายรายวิ�ชา
ความรู้� �เกี่�ยวกี่ บรู้ะบบฐานข้�อม�ล กี่ารู้ปรู้ะย�กี่ต์� Lin k Lists ความสั มพั นธ์�รู้ะหว�าง Record ในฐาน
ข้�อม�ล กี่ารู้ใช้� Key มากี่กี่ว�า 1 Key ในกี่ารู้ปรู้ะมวลผล รู้�ปแบบ Relation รู้ะบบ Hierarch
y และรู้ะบบ Network กี่ารู้ป$องกี่ นข้�อม�ล รู้ะบบกี่ารู้สั%ารู้องข้�อม�ลและกี่ารู้เรู้ยกี่ค&น กี่ารู้ว'เครู้าะห�ออกี่แบบข้�อม�ล กี่ารู้บรู้'หารู้ฐานข้�อม�ล
3
การวิ�ดผลการเร�ยน
• สัอบกี่ลางภาค 30 คะแนน • เข้�าเรู้ยน 10 คะแนน • 30Project คะแนน คะแนนปลายภาค 30
4
การประเมู�นผลการเร�ยน
ต์ามเกี่ณฑ์� รู้ะดั บคะแนน - 80 100A = รู้ะดั บคะแนน + = 75 – 79 รู้ะดั บคะแนน 7 7 707 4
รู้ะดั บคะแนน + = 65 – 69 รู้ะดั บคะแนน 60 64C = – รู้ะดั บคะแนน + = 55 – 59 รู้ะดั บคะแนน 50 54D = – รู้ะดั บคะแนน - =0 4 9
Part I Introduction
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โคำรงสร�างล�าด�บช� น
ข้�อมู�ล
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มูข้�อมู�ล
8
FileFile
คำวิามูส�าคำ�ญข้องข้�อม�ล
เบอร+โที่รเบอร+โที่รติ�นที่างติ�นที่างเบอร+โที่รปลายเบอร+โที่รปลายที่างที่างเวิลาที่�$โที่รออกเวิลาที่�$โที่รออกวิ�นที่�$วิ�นที่�$
คำ�านวิณคำ*าใช�จั*ายคำ�านวิณคำ*าใช�จั*าย
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
10
DATABASE
เบอร+โที่ร เบอร+ปลายที่าง เวิลาเร�$มูติ�น เวิลา ส� นส&ด วิ�นที่�$
ติารางที่�$ 1
ติารางที่�$ 2 เบอร+โที่ร ช#$อ- นามูสก&ล ที่�$อย�* เบอร+
ติ�ดติ*อ อ�เมูล+ ติารางที่�$ 3
เบอร+โที่ร ป5ญหัา แก�ไข้ ผ��ร�บผ�ดชอบ วิ�นที่�$ เวิลา
11
Database systemDatabase system
DATABASE
แผนกบ�ญช� แผนกประชาส�มูพ�นธิ+
DBMSฝ่7ายบร�หัาร
12
ระบบการจั�ดการฐานข้�อมู�ลDatabase management systems : DBMS
ซอฟิที่+แวิร+ระบบชน�ดหัน9$ง ที่�$ถู�กสร�างข้9 น มูาเพ#$อจั�ดการ ข้�อมู�ลในฐานข้�อมู�ล เป;น
ติ�วิกลางระหัวิ*างผ��ใช�ก�บฐานข้�อมู�ลส*วินประกอบข้อง DBMS
• SQL (Structure Query Language)
• โปรแกรมูอ�านวิยคำวิามูสะดวิก (General Utilities)
• โปรแกรมูช*วิยสร�างโปรแกรมูประย&กติ+และรายงาน (Applicaton and Report Generators)
• พจันาน&กรมูข้�อมู�ล (Data Dictionary)
13
คำวิามูสามูารถูเบ# องติ�น• สร�างติารางข้�อมู�ล • เพ�$มู ปร�บปร&ง เร�ยกคำ�นข้�อมู�ล• เก4บรายละเอ�ยดเก�$ยวิก�บข้�อมู�ลไวิ�ใน data dictionary• มู�ระบบเสร�มูการที่�างาน • มู�ระบบส�ารองข้�อมู�ล• สน�บสน&นเคำร#$องมู#อการที่�ารายงาน
ระบบการจั�ดการฐานข้�อมู�ลDatabase management systems : DBMS
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. ซอฟิที่+แวิร+ล�ข้ส�ที่ธิ�=
ซอฟิที่+แวิร+ระบบจั�ดการฐานข้�อมู�ล
15
ฮาร+ดแวิร+- หน�วยน%าข้�อม�ลเข้�า- หน�วยน%าข้�อม�ลออกี่- หน�วยปรู้ะมวลผลกี่ลาง- หน�วยเกี่2บข้�อม�ลสั%ารู้อง- อ�ปกี่รู้ณ�กี่ารู้สั&�อสัารู้
ซอฟิที่+แวิร+- โปรู้แกี่รู้มจ ดักี่ารู้ฐานข้�อม�ล
บ&คำลากร- ผ��ใช้�งาน- ผ��ควบค�มรู้ะบบ- ผ��พั ฒนาโปรู้แกี่รู้ม
ข้� นติอนการด�าเน�นงาน- ข้ 6นต์อนกี่ารู้ปฏิ'บ ต์'กี่ารู้ข้องผ��ปฏิ'บ ต์'งาน
ข้�อมู�ลฐาน
ข้�อม�ล
องคำ+ประกอบข้องระบบฐานข้�อมู�ล
16
PhysicalStorage of data
สถูาป5ติยกรรมูข้องระบบฐานข้�อมู�ล
... ระด�บภายนอก
ระด�บแนวิคำ�ด
ระด�บภายใน
สก�มูมู*า (Schema)(Global logical view)
วิ�วิ 2วิ�วิ 1 วิ�วิ nExternal level
Conceptual level
Internal level
17
ประโยชน+ข้องสถูาป5ติยกรรมู 3 ระด�บ มู&มูมูองข้�อมู�ลข้องผ��ใช�งาน
• ที่�าใหั�ผ��ใช�งานไมู*ติ�องสนใจัวิ*าข้�อมู�ลจัะถู�กเก4บอย*างไรในด�สคำ+ เมู#$อติ�องการข้�อมู�ลก4สามูารถูอ�างถู9งติารางและเข้ติข้�อมู�ล
น� น ๆ ได�โดยติรง ซ9$ง DBMS จัะที่�าหัน�าที่�$ด�วิ*าข้�อมู�ลที่�$ติ�องการน� นเก4บอย�* ณ ติ�าแหัน*งใด (track ใด cylinder ใด ในด�สคำ+ และที่�าการด9งข้�อมู�ลน� นจัากด�สก+มูาใหั�แก*ผ��ใช�)
คำวิามูเป;นอ�สระก�นข้องข้�อมู�ล• การเปล�$ยนแปลงข้�อมู�ลในระด�บแนวิคำ�ดไมู*มู�ผลกระที่บก�บ
โปรแกรมูประย&กติ+ที่�$ผ��ใช�เข้�ยนข้9 นในระด�บภายนอก• การเปล�$ยนแปลงวิ�ธิ�การเก4บข้�อมู�ลในส#$อ ไมู*มู�ผลกระที่บก�บ
การเก4บข้�อมู�ลระด�บแนวิคำ�ด
Part II Relational Database
19
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+(Relational database)
ปA คำ.ศ .1970 โดย ดร.เอดการ+ คำอดด+ (Edgar F. Codd)
เป;นร�ปแบบที่�$ที่�าคำวิามูเข้�าใจัได�ง*าย สามูารถูจั�ดการก�บข้�อมู�ลได�โดยใช�คำ�าส�$งง*าย ๆ ส*วินข้องการติ�ดติ*อก�บผ��ใช� ก�บส*วินข้องการเก4บ
ข้�อมู�ลจัร�งน� นมู�คำวิามูเป;นอ�สระติ*อก�น น�$นคำ#อในมู&มูมูองข้องผ��ใช�จัะไมู*ร��ส9กถู9งรายละเอ�ยดที่�$ซ�บซ�อนข้องการเก4บจัร�ง
20
ศ�พที่+ที่�$เก�$ยวิข้�อง ร�เลช�$น (Relation) แอที่ติร�บ�วิติ+ (Attribute) โดเมูน (Domain) ที่�พเพ�ล (Tuple) ด�กร� (Degree) คำาร+ด�น�ลล�ติ� (Cardinality)
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
21
ร�เลช�$น หัมูายถู9ง การก�าหันดติารางที่�$ประกอบด�วิยคำอล�มูน+และแถูวิ หัร#อติาราง 2 มู�ติ�
ติาราง (table)
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
22
ล�กษัณะข้องร�เลช�$น 1 .เป;นติาราง 2 มู�ติ�2. แติ*ละช*องข้องติารางติ�องบรรจั&ข้�อมู�ลเพ�ยงคำ*า
เด�ยวิ3. ไมู*จั�าเป;นติ�องเร�ยงล�าด�บคำอล�มูน+ หัร#อแถูวิใด ๆ 4. ข้�อมู�ลในแติ*ละแถูวิติ�องไมู*ซ� าก�น 5. ข้�อมู�ลในแติ*ละคำอล�มูน+จัะติ�องเป;นข้�อมู�ลประเภที่
เด�ยวิก�น
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
23
แอที่ติร�บ�วิติ+ คำ#อ คำ&ณสมูบ�ติ�ข้องร�เลช�$น หัร#อคำอล�มูน+ข้องติารางน�$นเอง หัร#ออาจัเที่�ยบได�ก�บฟิ.ลด+ในแฟิ1มูข้�อมู�ล
น�กศ9กษัา (รหั�สน�กศ9กษัา , ช#$อ-นามูสก&ล , เพศ ,เบอร+ติ�ดติ*อ)
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
24
Composite attribute หัร#อ แอที่ติร�บ�วิติ+ผสมู แอที่ติร�บ�วิติ+ที่�$ประกอบข้9 นมูาจัากข้�อมู�ลมูากกวิ*า 1 คำ*า เป;นการ
รวิมูหัลายแอที่ติร�บ�วิติ+เข้�าด�วิยก�น สามูารถูน�าไปแยกใหั�กลายเป;นแอที่ติร�บ�วิติ+เด�$ยวิได� เช*น แอที่ติร�บ�วิติ+ที่�$อย�* ซ9$งประกอบด�วิย บ�านเลข้ที่�$ ถูนน อ�าเภอ จั�งหัวิ�ด รหั�สไปรษัณ�ย+ แยกได�ถู9ง
5 แอที่ติร�บ�วิติ+ Derived atrribute หัร#อ แอที่ติร�บ�วิติ+ที่�$แปลคำ*ามูา แอที่ติร�บ�วิติ+ที่�$อาจัไมู*มู�ข้�อมู�ลใด ๆ แติ*จัะได�คำ*าข้�อมู�ลมูาจัากการ
คำ�านวิณจัากแอที่ติร�บ�วิติ+อ#$น เช*น แอที่ติร�บ�วิติ+อาย&การที่�างาน คำ�านวิณมูาจัาก แอที่ติร�บ�วิติ+วิ�นเร�$มูที่�างาน ลบก�บวิ�นที่�$
ป5จัจั&บ�น เป;นติ�น
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
25
โดเมูน (Domain ) คำ#อการระบ&ข้อบเข้ติข้�อมู�ลที่�$เป;นไปได�ใหั�แก*แอที่
ติร�บ�วิติ+ หัน9$ง ๆ เพ#$อเป;นการร�บประก�นคำวิามูถู�กติ�องข้�อมู�ลในระด�บหัน9$ง
โดเมูนข้องแอที่ติร�บ�วิติ+เพศ คำ#อ ชาย หัร#อ หัญ�ง อย*างใดอย*างหัน9$งเที่*าน� น
โดเมูนข้องเง�นเด#อนอาจัารย+จัะติ�องมู�คำ*าไมู*เป;นศ�นย+ และ ไมู*ติ�ดลบ
โดเมูนข้องช#$อสมูาช�กจัะติ�องเป;นติ�วิอ�กษัรเที่*าน� น
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
26
ที่�พเพ�ล (Tuple)
คำ#อ แถูวิ หัร#อระเบ�ยน ในติาราง ด�กร� (Degree)
คำ#อ จั�านวินแอที่ติร�บ�วิติ+ในร�เลช�$น ด�กร�อาจัช� ใหั�เหั4นถู9งคำวิามูละเอ�ยดข้องรายการข้�อมู�ลก4ได�
คำาร+ด�น�ลล�ติ� (Cardinality)คำ#อจั�านวินแถูวิ หัร#อจั�านวินที่�พเพ�ล ภายในติารางหัน9$ง ๆ คำาร+ด�น�ลล�ติ� ช� ใหั�เหั4นถู9งจั�านวินรายการข้�อมู�ลในติารางหัน9$ง ๆ
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
27
คำ�ย+หัล�ก (Primary key) แอที่ติร�บ�วิติ+ที่�$ใช�เพ#$อการเจัาะจังข้�อมู�ลแถูวิใด
แถูวิหัน9$งในติาราง โดยที่�$คำ�ย+หัล�ก อาจัประกอบด�วิยแอที่ติร�บ�วิติ+ 1 ติ�วิหัร#อมูากกวิ*า 1 ติ�วิ ที่�$สามูารถูใช�เป;นติ�วิเจัาะจังบอกวิ*าก�าล�งอ�างอ�งถู9งที่�พเพ�ลไหันหัร#อแถูวิไหัน
อาศ�ยคำ�ย+หัล�กเพ#$อช� เฉพาะเจัาะจังวิ*าติ�องการระบ&ถู9งข้�อมู�ลแถูวิใดแถูวิหัน9$งในร�เลช�$น
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
28
คำ&ณสมูบ�ติ�ข้องแอที่ติร�บ�วิติ+ที่�$เป;นคำ�ย+หัล�ก 1( ) คำ*าข้องข้�อมู�ลที่&กแถูวิในแอที่ติร�บ�วิติ+ที่�$ที่�าหัน�าที่�$เป;น
คำ�ย+หัล�กติ�องไมู*ซ� าก�น (2) แอที่ติร�บ�วิติ+ที่�$เป;นคำ�ย+หัล�กอาจัประกอบข้9 นจัากแอที่
ติร�บ�วิติ+มูากกวิ*า 1 แอที่ติร�บ�วิติ+ เพ#$อใหั�ได�เป;นคำ*าที่�$ไมู*ซ� าก�นในแติ*ละแถูวิ เร�ยกวิ*า Composite key
(3) แอที่ติร�บ�วิติ+ที่�$เป;นคำ�ย+หัล�กจัะติ�องไมู*เป;นคำ*าวิ*าง (null values)
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
29
ล�กคำ�า (รหั�สล�กคำ�า , ช#$อ-นามูสก&ล , ที่�$อย�* , โปรโมูช�น , เบอร+ติ�ดติ*อ , หัมูายเลข้ประจั�าติ�วิประชาชน )
ล�กคำ�า
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
30
การลงที่ะเบ�ยน (รหั�สน�กศ9กษัา, รหั�สวิ�ชาที่�$ลงที่ะเบ�ยน, รหั�สผ��สอน, สถูานที่�$, วิ�นที่�$เร�ยน
การลงที่ะเบ�ยน
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
31
คำ�ย+นอก หัร#อคำ�ย+ติ*างด�าวิ (Foreign key) คำวิามูส�มูพ�นธิ+ที่�$เก�ดข้9 นระหัวิ*างร�เลช�นจัะอาศ�ยแอที่ติร�บ�
วิติ+ติ�วิหัน9$งซ9$งไปส�มูพ�นธิ+ก�บคำ�ย+หัล�กในร�เลช�นอ#$น เก�ดเป;นการเช#$อมูโยงระหัวิ*างร�เลช�น แอที่ติร�บ�วิติ+น� เร�ยก
วิ*า คำ�ย+นอก หัร#อคำ�ย+ติ*างด�าวิ คำ#อ แอที่ติร�บ�วิติ+ที่�$ใช�แสดงคำวิามูส�มูพ�นธิ+ระหัวิ*างร�เลช�น คำ#อ กล&*มูข้องแอที่ติร�บ�วิติ+ในร�เลช�นหัน9$งที่�$มู�คำ&ณสมูบ�ติ�
เป;นคำ�ย+หัล�ก และไปปรากฏในอ�กร�เลช�$นหัน9$ง คำ#อ แอที่ติร�บ�วิติ+ที่�$ข้�อมู�ลมู�คำวิามูสอดคำล�องก�บคำ�ย+หัล�กใน
อ�กร�เลช�นหัน9$ง
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
32
คำ&ณสมูบ�ติ�ข้องคำ�ย+นอก1( ) คำ*าที่�$ปรากฏในแอที่ติร�บ�วิติ+ที่�$เป;นคำ�ย+นอกในร�เลช�น
หัน9$งจัะติ�องมู�คำ*าเที่*าก�บคำ*าในแอที่ติร�บ�วิติ+ที่�$เป;นคำ�ย+หัล�กในแถูวิใดแถูวิหัน9$งในอ�กร�เลช�นหัน9$ง
(2) คำ*าที่�$ปรากฏในแอที่ติร�บ�วิติ+ที่�$เป;นคำ�ย+นอกอาจัเป;นคำ*าวิ*างได�
(3) ที่� งคำ�ย+นอกและคำ�ย+หัล�กในอ�กร�เลช�นที่�$ส�มูพ�นธิ+ก�นไมู*จั�าเป;นติ�องมู�ช#$อแอที่ติร�บ�วิติ+เด�ยวิก�นก4ได� แติ*จั�าเป;น
ติ�องมู�โดเมูนเด�ยวิก�น
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
33
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
34
คำ�ย+คำ�*แข้*ง (Candidate key)
ร�เลช�นหัน9$ง ๆ อาจัมู�แอที่ติร�บ�วิติ+ที่�$สามูารถูที่�าหัน�าที่�$เป;นคำ�ย+หัล�กได�มูากกวิ*าหัน9$งแอที่ติร�บ�วิติ+ แอที่ติร�บ�วิติ+เหัล*า
น� น จัะถู�กเร�ยกวิ*า คำ�ย+คำ�*แข้*ง คำ#อ แอที่ติร�บ�วิติ+หัร#อกล&*มูข้องแอที่ติร�บ�วิติ+อ#$นที่�$สามูารถู
ที่�าหัน�าที่�$เป;นคำ�ย+หัล�กได� อาจัเร�ยกอ�กช#$อหัน9$งวิ*า คำ�ย+ส�ารอง หัร#อ alternate key
คำ�ย+หัล�กคำ#อคำ�ย+ที่�$ถู�กเล#อกมูาจัากกล&*มูข้องคำ�ย+คำ�*แข้*งในร�เลช�$นหัน9$ง ๆ น�$นเอง
ฐานข้�อมู�ลเช�งส�มูพ�นธิ+
Part III Structure Query Language
36
ภาษัาสอบถูามูเช�งโคำรงสร�าง (Structure Query Language) หัร#อ SQL หัร#อ ภาษัาซ�เคำวิล เป;นภาษัาพ# นฐานส�าหัร�บการจั�ดการบร�หัารข้�อมู�ลส�าหัร�บ
ระบบฐานข้�อมู�ลเช�งส�มูพ�นธิ+ วิ�ติถู&ประสงคำ+เพ#$อใช�สร�างฐานข้�อมู�ลและโคำรงสร�างร�เลช�น สน�บสน&นการจั�ดการข้�อมู�ลพ# นฐาน ได�แก* การเพ�$มู ปร�บปร&ง
และลบข้�อมู�ล และสน�บสน&นการคำ�วิร�ข้�อมู�ล จั�ดเป;นภาษัาร&*นที่�$ 4(Fourth Generation
language ) คำ&ณสมูบ�ติ�ส�าคำ�ญคำ#อ เร�ยนร��ใช�งานได�ง*าย น�าไปใช�ได�อย*างมู�
ประส�ที่ธิ�ภาพ มู�ล�กษัณะเป;นภาษัาธิรรมูชาติ�ใกล�เคำ�ยงก�บภาษัามูน&ษัย+
สามูารถูใช�ได�ก�บเคำร#$องคำอมูพ�วิเติอร+ที่&กแพลติฟิอร+มู
SQL
37
SQL
ประเภที่ข้องคำ�าส�$งในภาษัาซ�เคำวิล คำ�าส�$งน�ยามูข้�อมู�ล (Data definition) ได�แก* คำ�าส�$งที่�$ใช�ในการ
จั�ดการโคำรงสร�างติารางในฐานข้�อมู�ล เช*น คำ�าส�$งที่�$ใช�สร�างฐานข้�อมู�ล คำ�าส�$งสร�างติาราง คำ�าส�$งเพ�$มูและลบฟิ.ลด+ในติาราง เป;นติ�น
ได�แก* Create Database, Create Table, Alter Table เป;นติ�น
คำ�าส�$งจั�ดการข้�อมู�ล (Data manipulation) เป;นกล&*มูคำ�าส�$งที่�$ใช�จั�ดการก�บข้�อมู�ลที่�$อย�*ภายในติารางข้�อมู�ล ไมู*เก�$ยวิก�บโคำรงสร�างติาราง
เช*น การเพ�$มูการปร�บปร&ง การลบข้�อมู�ลในติาราง เป;นติ�น ได�แก* Insert Update และ Delete
คำ�าส�$งเร�ยกคำ�นข้�อมู�ล (Data retrieval) เป;นคำ�าส�$งส�าหัร�บเร�ยกด�ข้�อมู�ลจัากติาราง เพ#$อแสดงผลออกมูาติามูเง#$อนไข้ที่�$ระบ& ได�แก* คำ�าส�$ง select ร�ปแบบไวิยากรณ+ข้องคำ�าส�$ง select มู�คำวิามูย#ดหัย&*นมูาก
พอที่�$จัะสามูารถูคำ�นหัาข้�อมู�ลภายใติ�เง#$อนไข้ที่�$ซ�บซ�อนได�
38
SQL
ประเภที่การใช�งานข้องภาษัาซ�เคำวิล
1( ) การใช�งานแบบโติ�ติอบ (Interactive SQL) ผ��ใช�สามูารถูพ�มูพ+ประโยคำคำ�าส�$งในภาษัาซ�เคำวิลผ*าน
ที่างจัอภาพ และคำ�าส�$งจัะถู�กน�าไปปฏ�บ�ติ�ที่�นที่� มู�กใหั�ส�ที่ธิ�แก*ผ��ใช�ที่�$มู�หัน�าที่�$โดยติรงเที่*าน� น
(2) การใช�งานแบบฝ่5งติ�วิในโปรแกรมู (Embedded SQL ) หัมูายถู9งการสอดแที่รกประโยคำคำ�าส�$งภาษัาซ�เคำวิล
ไวิ�ในภาษัาระด�บส�งเพ#$อปฏ�บ�ติ�การก�บฐานข้�อมู�ล ภาษัาระด�บส�งที่�$สน�บสน&นวิ�ธิ�การน� ได�แก* ภาษัาซ� ภาษัาโคำบอล ภาษัาปาส
คำาล เป;นติ�น (3) การใช�งานแบบโปรแกรมู (Batch SQL)
หัมูายถู9งการเข้�ยนโปรแกรมูด�วิยคำ�าส�$งในภาษัาซ�เคำวิล ที่�$สามูารถูที่�างานและใหั�ผลล�พธิ+แบบเบ4ดเสร4จั เช*น การพ�มูพ+รายงานประจั�าวิ�น การพ�มูพ+รายงานประจั�าเด#อน เป;นติ�น
Part IV Integrity Control
40
กฎข้องคำวิามูคำงสภาพ (Integrity rule)
กฎคำวิามูคำงสภาพข้องการอ�างอ�ง (Referential integrity rule)
กฎคำวิามูคำงสภาพข้องการอ�างอ�ง (Referential integrity rule)
กฎคำวิามูคำงสภาพข้องเอนติ�ติ�
(Entity integrity rule)
กฎคำวิามูคำงสภาพข้องเอนติ�ติ�
(Entity integrity rule)
41
Entity integrity rule
“คำ�ย+หัล�กจัะไมู*อน&ญาติใหั�มู�คำ*าวิ*าง”
42
Referential integrity rule
ถู�ามู�ร�เลช�$น R2 ซ9$งมู� Fk เป;นคำ�ย+นอกที่�$อ�างอ�งถู9งคำ�ย+หัล�ก Pk ในร�เลช�$น R1 ส�าหัร�บที่&กๆ คำ*าข้อง Fk ใน R2 จัะติ�อง
หัร#อไมู*ก4ติ�องมู�คำ*า
attribute ใน Fk เป;นคำ*า
วิ*าง
หัร#อไมู*ก4ติ�องมู�คำ*า
attribute ใน Fk เป;นคำ*า
วิ*าง
มู�คำ*าเที่*าก�บ คำ*า Pk ใน
แถูวิใดแถูวิหัน9$งในร�เลช�$น R1
มู�คำ*าเที่*าก�บ คำ*า Pk ใน
แถูวิใดแถูวิหัน9$งในร�เลช�$น R1
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
มู&งหัล�งคำา ไมู*ใช* ข้�อมู�ลที่�$
มู�ในติารางประเภที่คำวิามู
ช�านาญ
มู&งหัล�งคำา ไมู*ใช* ข้�อมู�ลที่�$
มู�ในติารางประเภที่คำวิามู
ช�านาญ
44
ถู�ามู�ใคำรไปแก�ไข้หัร#อลบข้�อมู�ลซ9$งมู�ผลไปกระที่บก�บกฎ Integrity จัะร�บมู#อ
อย*างไร
ถู�ามู�ใคำรไปแก�ไข้หัร#อลบข้�อมู�ลซ9$งมู�ผลไปกระที่บก�บกฎ Integrity จัะร�บมู#อ
อย*างไร
ป5ญหัา
วิ�ธิ�แก�ไข้ที่�$เป;นไปได� 2 ที่าง คำ#อ...ติ� งระบบใหั�ไมู*ยอมูร�บการเปล�$ยนแปลงด�ง
กล*าวิ หัร#อไมู*ก4 อน&ญาติใหั�เปล�$ยนแปลงได� โดยระบบจัะ
ที่�าการปร�บแติ*ง ข้�อมู�ลที่�$เก�$ยวิข้�องใหั�ย�ง คำงเป;นไปติามูกฎที่� ง 2 อย�*
วิ�ธิ�แก�ไข้ที่�$เป;นไปได� 2 ที่าง คำ#อ...ติ� งระบบใหั�ไมู*ยอมูร�บการเปล�$ยนแปลงด�ง
กล*าวิ หัร#อไมู*ก4 อน&ญาติใหั�เปล�$ยนแปลงได� โดยระบบจัะ
ที่�าการปร�บแติ*ง ข้�อมู�ลที่�$เก�$ยวิข้�องใหั�ย�ง คำงเป;นไปติามูกฎที่� ง 2 อย�*
45
ติารางติ�วิอย*างแสดงการก�าหันดสถูานการณ+ติ*าง ๆ เพ#$อใหั�เป;นไปติามู referential integrity
46
สถูานการณ+ที่�$เป;นไปได� 3 ที่างกระที่�าแบบเป;นที่อดๆ (cascade)
ยอมูแบบมู�เง#$อนไข้ (restricted)
เปล�$ยนเป;นคำ*าวิ*าง (nullify)
47
ร�ปแสดงการก�าหันดใหั�ติรวิจัสอบกฎคำวิามูคำงสภาพข้องการอ�างอ�งและการก�าหันดสถูานการณ+แบบ CASCADES
CASCADESCASCADESCASCADESCASCADES
Part V Database design
49
ผ�งเอ4นติ�ติ� -ร�เลช�นช�พ (ERD: Entity-
Relational Diagram) Peter Chen (1976) มูาติรฐาน
ANSI ปA 1988 ERD แสดงเอ4นติ�ติ� และคำวิามูส�มูพ�นธิ+
ระหัวิ*างก�นข้องเอ4นติ�ติ� ที่�$ประกอบก�นเป;นฐานข้�อมู�ล
ใช�เป;นเคำร#$องมู#อส#$อสารระหัวิ*างผ��ออกแบบฐานข้�อมู�ลและผ��ใช�ฐานข้�อมู�ล
Entity-Relational Model
50
องคำ+ประกอบข้อง ERD เอ4นติ�ติ� (Entity)แอที่ติร�บ�วิที่+ (Attribute)คำวิามูส�มูพ�นธิ+ (Relationship)
51
เอ4นติ�ติ� (Entity) ส�$งติ*าง ๆ ที่�$มู�เอกล�กษัณ+สามูารถูช� เฉพาะเจัาะจัง
ได� เป;นส�$งที่�$สามูารถูน�าไปเก4บในฐานข้�อมู�ลได� อาจั เป;นส�$งที่�$เป;นร�ปธิรรมู หัร#อนามูธิรรมูก4ได� เช*น
บ&คำคำล ส�ติวิ+ ส�$งข้อง สถูานที่�$ คำวิามูคำ�ด เหัติ&การณ+ เป;นติ�น
บ&คำคำล พัน กี่งาน น กี่ศ;กี่ษา น กี่ฟ�ต์บอล แพัท่ย� ส�$งข้อง สั'นค�า รู้ถยนต์� หน งสั&อ สถูานที่�$ สันามบ'น รู้�านอาหารู้ โกี่ดั งสั'นค�า คำวิามูคำ�ด หล กี่สั�ต์รู้ แผนปรู้ะกี่ นช้ว'ต์ เหัติ&การณ+ กี่ารู้แข้�งข้ นฟ�ต์บอล ข้�าว กี่ารู้รู้ กี่ษาโรู้ค
52
แอที่ติร�บ�วิที่+ (Attribute) คำ&ณสมูบ�ติ� ล�กษัณะหัร#อรายละเอ�ยดข้องเอ4นติ�ติ�
พน�กงาน ช#$อ - นามูสก&ล
ส*วินส�ง
น� าหัน�ก
วิ�นเด#อนปAเก�ด
ประวิ�ติ�การศ9กษัา
กร&Eปเล#อดหัมูายเลข้บ�ติรประจั�าติ�วิประชาชน
ที่�$อย�*
53
ร�านอาหัารสาข้า
ที่�$ติ� ง
ผ��จั�ดการร�านเบอร+โที่รศ�พที่+จั�านวินโติEะ
จั�านวินบร�กร
54
คำวิามูส�มูพ�นธิ+ (Relationship)คำวิามูส�มูพ�นธิ+ระหัวิ*างเอ4นติ�ติ� ในฐานข้�อมู�ล
ล�กคำ�า ก�บ ส�นคำ�า คำวิามูส�มูพ�นธิ+ คำ#อ ส�$งซ# อ
น�กศ9กษัา ก�บ แผนการเร�ยน
คำวิามูส�มูพ�นธิ+ คำ#อ ลงที่ะเบ�ยน อาจัารย+ ก�บ คำณะ
คำวิามูส�มูพ�นธิ+ คำ#อ ส�งก�ด
55
คำวิามูส�มูพ�นธิ+ (Relationship) ความสั มพั นธ์�แบบหัน9$งติ*อหัน9$ง (One to
One)สัาม ภรู้รู้ยา–ผ��น%าปรู้ะเท่ศ ปรู้ะเท่ศ–
ความสั มพั นธ์�แบบหัน9$งติ*อกล&*มู (One to Many)แม� ล�กี่–อาจารู้ย�ท่�ปรู้;กี่ษา - น กี่ศ;กี่ษา
ความสั มพั นธ์�แบบกล&*มูติ*อกล&*มู (Many to Many)ล�กี่ค�า สั'นค�า–รู้ายว'ช้า - น กี่ศ;กี่ษา
56
สั�วนปรู้ะกี่อบข้อง ER Diagram
1. Entity ใช�ส�ญล�กษัณ+
พัน กี่งานข้ายพัน กี่งานข้าย สั'นค�าสั'นค�าข้ายสั'นค�าข้ายสั'นค�าM Nรู้ห สัพัน กี่งานรู้ห สัพัน กี่งาน
ช้&�อพัน กี่งานช้&�อพัน กี่งาน
ท่�อย��ท่�อย��
รู้ห สัสั'นค�ารู้ห สัสั'นค�า
ช้&�อสั'นค�าช้&�อสั'นค�า
จ%านวนคงเหล&อจ%านวนคงเหล&อ
รู้าคารู้าคาโกี่ดั งท่�เกี่2บโกี่ดั งท่�เกี่2บเบอรู้�โท่รู้เบอรู้�โท่รู้
2. Attribute ใช�ส�ญล�กษัณ+3. Relationship ใช�ส�ญล�กษัณ+
57
ข้ 6นต์อนกี่ารู้แท่นความสั มพั นธ์�ข้องข้�อม�ลดั�วย ER DiagramER Diagram1 . ก�าหันด Entity ที่�$จั�าเป;น2. ก�าหันดคำวิามูส�มูพ�นธิ+ระหัวิ*าง Entity
3. ก�าหันด Attribute ข้อง Entity
4. พ�จัารณา Attribute ที่�$ข้9 นก�บ Relationship
5. เล#อก Primary key (Identifier)
... เปล�$ยน ER Diagram เป;น Table
58
การแปลงคำวิามูส�มูพ�นธิ+ E-R ใหั�อย�*ในร�ปติารางในฐานข้�อมู�ลเช�งส�มูพ�นธิ+ แติ*ละเอ4นติ�ติ� จัะถู�กแปลงเป;นติาราง ช#$อ
เอ4นติ�ติ� จัะเป;น ช#$อติาราง แติ*ละแอที่ติร�บ�วิติ+จัะกลายเป;นคำอล�มูน+ข้อง
ติาราง มู�แอที่ติร�บ�วิติ+หัน9$งที่�าหัน�าที่�$เป;นคำ�ย+หัล�ก
ข้องติาราง
59
การแปลงคำวิามูส�มูพ�นธิ+ แยกได� 3 ล�กษัณะ
ติามูคำวิามูส�มูพ�นธิ+แบบหัน9$งติ*อหัน9$งคย�หล กี่ข้องต์ารู้างหน;�งจะกี่ลายเป=นคย�นอกี่ข้องอกี่ต์ารู้าง
หน;�งแบบหัน9$งติ*อกล&*มู
คย�หล กี่ข้องเอ2นต์'ต์6ดั�าน One เป=นคย�นอกี่ข้องเอ2นต์'ต์6ดั�าน Many
แบบกล&*มูติ*อกล&*มูสัรู้�างต์ารู้างใหม�ข้;6นมา โดัยมคย�หล กี่จากี่เอ2นต์'ต์6ท่ 6งสัองมาท่%า
หน�าท่�รู้ �วมกี่ นในต์ารู้างใหม� ต์ารู้างใหม�น6จะถ�กี่เรู้ยกี่ว�า Junction Table (ต์ารู้างเช้&�อมต์�อ) ท่%ากี่ารู้เช้&�อมเอ2นต์'ต์6ท่�มความสั มพั นธ์�แบบกี่ล��มต์�อกี่ล��ม
60
ติ�วิอย*างพ�จัารณาส*วินหัน9$งข้องระบบลงที่ะเบ�ยนน�กศ9กษัา ก�าหันดคำวิามูส�มูพ�นธิ+ข้องแติ*ละ Entity ได�ด�งน�
1. น�กศ9กษัาลงที่ะเบ�ยนได�หัลายรายวิ�ชา 2. รายวิ�ชาหัน9$งๆ น�กศ9กษัาสามูารถูลงที่ะเบ�ยน
ได�หัลายคำน 3. น�กศ9กษัาคำนหัน9$งส�งก�ดได� 1 สาข้าวิ�ชา 4. สาข้าวิ�ชาแติ*ละสาข้าวิ�ชามู�น�กศ9กษัาส�งก�ดได�
หัลายคำน