Upload
upton-fletcher
View
28
Download
2
Tags:
Embed Size (px)
DESCRIPTION
ความรู้พื้นฐานเกี่ยวกับฐานข้อมูล ( Introduction to Database ). ความรู้พื้นฐานเกี่ยวกับฐานข้อมูล - PowerPoint PPT Presentation
Citation preview
1
ความรพนฐานเกยวกบฐานขอมล
( Introduction to Database )
2
ความรพนฐานเกยวกบฐานขอมลวตถประสงค เพอใหมความรความเขาใจใน
เรอง 1 . โครงสรางแฟมขอมล2. ประเภทของแฟมขอมล
3. การจดโครงสรางแฟมขอมล( File Organization)
4. ระบบแฟมขอมล (File System)5. ระบบฐานขอมล (Database
System) 6. ความสำาคญและ หนาทของ DBMS 7. สวน
ประกอบของระบบฐานขอมล 8. คำาศพททใชในฐานขอมล
3
โครงสรางแฟมขอมล ประกอบดวยโครงสราง
พนฐานจากหนวยทเลกทสดไปยงหนวยทใหญ ทสด ดงน
1. Bit ประกอบดวยเลขฐานสอง ใชแทนคาหนวยทเลกทสดของขอมลในระบบ
คอมพวเตอร จะมอยเพยงสองสถานะ คอ 0 หรอ1
2 . Byte ประกอบดวยจำานวน Bit เชน 1 ไบตม 8 บต เพอสรางรหสแทนขอมล เชน ตวอกษร J คอ
01001010 3 .Field คอ การนำาตวอกษรมารวมกนเพอให
เกดความหมาย เชน STD_NAME เปนฟลดทใชเกบชอนกศกษา
4
โครงสรางแฟมขอมล 4 . Record คอ กลม
ของ Field ทสมพนธกน เชน record ของ นกศกษา ประกอบดวย field รหส นศ ., ชอ-
นามสกล , วชาทลง, เกรดทได
5 . File คอ กลมของ Record ท สมพนธกน เชน แฟมประวตนกศกษาประกอบ
ดวย record ของนกศกษาทงมหาวทยาลย 6 . Database คอ กลมของ
File ทสมพนธกน เชน ใน Student Database ประกอบดวย Course File,Personal History File และFinancial File
5
ตวอยาง โครงสรางแฟมขอมล
Bit ByteField
Record
001001010 (Letter J)
John Stewart(STD_ NAME field)
45310 John Stewart IS101 F01 B+STD-NO STD_NAME
COURSE DATE GRADE
File 45310 John Stewart IS101 F01 B+ 45311 Karen Taylor IS101 F01 A 45312 Emily Vincent IS101 F01 C
Course File
Course FileStudent Database Financial FilePersonal
History FileDatabase
6
ชนดของขอมล
ชนดของขอมลทจดเกบ มดงตอไปน 1. ขอความ (Text) ประกอบ
ดวยตวอกษรตางๆมารวมกน ไมมรปแบบทแนนอน 2 .
ชนดทเปนรปแบบ (Formatted data) เปนขอมล ทประกอบดวยอกษรตางๆทมรปแบบแนนอน เชน ในรป
แบบรหส ไดแก รหสนกศกษา รหสวชา 3 . รปภาพ (Images) เปนรปภาพทใชแทนขอมล เปน
ภาพทไดจากการสแกนภาพ หรอ จากวดโอ 4 . เสยง (Voice)
เปนขอมลทจดเกบเปนลกษณะของเสยง
7
ประเภทของแฟมขอมล 1. Master File เปนแฟมขอมล
หลก ซงจดเกบขอมลทมกจะไมมการเปลยนแปลง เชน แฟมขอมลประวตนกศกษา การ
ปรบปรงแกไขขอมลใน Master File ทำาได 3 รปแบบ 11. การเพม (Add) เชน การ
เพม record นกศกษาใหม 12. การ ลบออก (Delete) เชน การลบ record นกศกษาทลา
ออก 13. การแกไข (Modify) เชน การเปลยนแปลงทอยของนกศกษา 2.Transaction File เปนแฟมขอมลทจดเกบขอมล
การดำาเนนธรกรรมประจำาวน (Transaction) มการ เคลอนไหวตลอดเวลา เชน รายการฝากถอนเงนในบญช
ลกคาธนาคาร3. Document File เปนแฟมเอกสารหรอ
แฟมรายงาน (Report File) ทไดจากการพมพดวย โปรแกรม
8
การจดโครงสรางแฟมขอมล(File Organization) พนฐานของรป
แบบการจดโครงสรางขอมล ประกอบดวย 1. โครงสรางแฟมขอมลแบบเรยงลำาดบ
( Sequential File Organization) ขอมลแตละrecord จะถกจดเกบเปนลำาดบตาม field ทใชจด
เรยง ถา filed ทใชจดเรยงเปน คยหลก (Primary Key) จะเรยกวา Ordering Key การคนหาขอมล
จะเรยงตามลำาดบของ record 2. โครงสรางแฟมขอมลแบบดชน
(Indexed File Organization) เปนการเกบ ขอมลแตละ record แบบเรยงตามลำาดบหรอไมเรยง
กได โดยแฟมแบบดชน ประกอบดวย คาของfield ท ใชเปนดชนและตำาแหนงของ record ในแฟมขอมล
การคนหาหรอเรยกใชขอมลจะทำาผานแฟมดชน ทำาใหการเรยกใชขอมลรวดเรว
9
การจดโครงสรางแฟมขอมล(File Organization) 3. โครงสรางแฟมขอมลแบบแฮช ( Hashed File Organization) เปนโครงสรางแฟมขอมลทมการ
กำาหนดทอย (Relative record number) ทใชเกบ ขอมลแตละ record โดยใช Hash algorithm ซง
เปนเทคนคในการแปลงคาของ field ทเลอกใช (Hash Field) ใหเปนตำาแหนงทอยของแฟมขอมลดงนนrecord ของแฟมขอมลแบบ Hash จะอยแบบกระจดกระจาย การจดแฟมขอมล
แบบ Hash เหมาะกบการเรยกใชขอมลทมการระบคา ของ Hash Field เชน Flyers แตแฟมแบบนไม
เหมาะกบการเรยกใชขอมลทตองคนหาขอมลเปนชวงหรอใชfield อนทไมใช Hash Field ในการแสดงขอมล
10 (a) โครงสรางแบบ Sequential (b) โครงสรางแบบ Hash
11 โครงสรางแบบIndexed
12
ระบบแฟมขอมล ( File System)
Personal Department Sales Department AccountingDepartment
EmployeeCustomersSales AccountsSalesmanInventory
Duplicate data (salesman is an employee)
13
ตวอยางแฟมพนกงานและแฟมพนกงานขาย
14
ระบบแฟมขอมล ( File System) การจดเกบแฟมขอมล
จะถกจดเกบลงในคอมพวเตอรเปนอสระ โดยจะสรางระบบ แฟมขอมลภายในหนวยงานของตนเอง ทำาใหเกดขอจำากด
หรอปญหา ดงน 1. ขอมลมการเกบแยกจากกน (Separation and Isolation of Data) ในแตละ
หนวยงาน ทำาใหเปนการยากในการเขาถงขอมลไดโดยตรง 2. ขอมลมความซำาซอน (Data Redundancy) ทำาใหเสยคาใชจายในการจดเกบขอมลและเสยเนอทในการเกบขอมล ปญหาความซำาซอนของขอมลชดเดยวกนทมการเกบอยหลายแฟมทำาใหเกดความผดพลาดในขอมล (Data Anomaly) 3 ลกษณะ ดงน
21. ขอผดพลาดจากการเพมขอมล (Insert Anomaly) เปนการเพมขอมลใหกบแฟมขอมลตางๆท
สมพนธกนไมครบถวน เชน เพมขอมลพนกงานขายใหม ชอ นายองอาจ เฉพาะแฟมขอมลพนกงานขาย โดยไมได
เพมขอมลในแฟมพนกงาน
15 ตวอยางความขดแยงของการเพมขอมล
16
2.2 ขอผดพลาดจากการลบขอมล ( Deletion Anomaly ) เชน พนกงานชอ นายพชย ลา
ออก ทางแผนกบคคลไดลบชอออกจากแฟมพนกงาน แต ขอมลของนายพชย ยงคงอยในแฟมพนกงานขาย ซงไม
ถกตอง
ตวอยางความขดแยงของการลบขอมล
17
23. ขอผดพลาดจากการเปลยนแปลงขอมล (Modification Anomaly) เชน กรณ น. ส
นงนช เปลยนชอเปน น.ส. ณชกานต ไดมการเปลยน ชอเฉพาะในแฟมขอมลพนกงาน ทำาใหขอมลไมมความ
ถกตองตรงกน
ตวอยางความขดแยงของการเปลยนแปลงขอมล
18
ระบบแฟมขอมล ( File System) 3. ขอมลมความขนตอกน (Data Dependence) ระหวางโปรแกรมกบโครงสราง
แฟมขอมล การเปลยนแปลงโครงสรางแฟมขอมล ทำาใหตอง แกไขโปรแกรมทเกยวของทงหมด เชน เปลยน ความกวาง
ของเงนเดอนจาก 5 หลก เปน 6 หลก
4. มรปแบบทไมตรงกน (Incompatible File Formats) เนองจากแฟมขอมลถกสรางดวย
โปรแกรมทใชภาษาทตางกน ทำาใหโครงสรางขอมลตางกนและเปนการยากในการนำาแฟมขอมลทงสองมาประมวล
ผลรวมกน
19
ระบบแฟมขอมล ( File System) 5. รายงานตางๆถกกำาหนดไวอยางจำากด รปแบบของรายงานตางๆถกกำาหนดรปแบบทแนนอนลงใน
โปรแกรม ถาตองการรายงานใหม ตองเขยนโปรแกรม เพม
ขอดของแฟมขอมล1. งายตอการออกแบบและพฒนา
เนองจากการออกแบบแฟมขอมลไมมความสลบซบซอน 2. การประมวล
ผลแบบแฟมขอมลเปนวธดงเดมและมความรวดเรว เนองจากการประมวลผลขอมลสามารถกำาหนด
แฟมขอมลทเกยวของในโปรแกรมไดโดยตรง ทำาใหโปรแกรมทำางานควยความรวดเรว
20
ระบบฐานขอมล(Database System)Personal Department
Sales Department
Accounting Department
DBMS
DatabaseEmployeesCustomers
SalesInventoryAccounts
21
ระบบฐานขอมล(Database System) - เปนศนยรวมของขอมลทมความสมพนธกน
- มกระบวนการจดหมวดหมขอมลทมแบบแผน- เปนแหลงรวมของขอมลจากแผนก
ตางๆ ภายใตฐานขอมลชดเดยวกน - ผใชงานในแตละ แผนกสามารถใชขอมลสวนกลางรวมกนได ทำาให
ขอมลไมซำาซอน ระบบการจดการฐานขอมล(Database Management System ) DBMS คอ โปรแกรมทใชเปนเครอง
มอในการจดการฐานขอมล ทำาหนาทเปนตวกลางในการ ตดตอระหวางผใชกบฐานขอมล เพอจดการและควบคม
ความถกตอง ความซำาซอน และความสมพนธระหวาง ขอมลตางๆในฐานขอมล DBMS ใชภาษา SQL ใน
การโตตอบกบผใช เพอใหสามารถทำาการสราง เรยกด บำารงรกษา และจดการควบคมการเขาถงฐานขอมล
22
ภาษา SQL (Structured Query Language)• เปนภาษาทมรปแบบเปนภาษาองกฤษ งายตอการเรยนร
และเขยนโปรแกรม• มความสามารถในการนยามโครงสรางตารางภายในฐาน
ขอมล การจดการขอมล และควบคมสทธการใชงานฐานขอมล
• ประกอบดวยภาษา 3 รปแบบ1. ภาษาสำาหรบนยามขอมล (Data Definition Language :DDL)2. ภาษาสำาหรบจดการฐานขอมล (Data Manipulation Language : DML)3. ภาษาควบคม (Control Language : CL)
23
ภาษา SQL (Structured Query Language)1. ภาษาสำาหรบนยามขอมล (Data Definition
Language :DDL)• เปนภาษาทใชในการนยามโครงสรางของฐานขอมล
(Schema) เพอทำาการสราง เปลยนแปลง หรอยกเลกโครงสรางของฐานขอมลทไดออกแบบไว
• โครงสรางของฐานขอมล (Schema) ไดแก การกำาหนดชอฐานขอมล ตาราง (table) ทมในฐานขอมล แตละตารางมเขตขอมล (field)ใดบาง และมประเภทขอมลเปนอะไร ขนาดเทาใด เขตขอมลใดทเปนคยหลก
• ตวอยางภาษา DDL เชน คำาสง CREATE, ALTER, DROP
24
ภาษา SQL (Structured Query Language)
2. ภาษาสำาหรบจดการฐานขอมล (Data Manipulation Language : DML)
• เปนภาษาทใชในการจดการขอมลภายในตารางของฐานขอมล• ตวอยางภาษา DML เชน คำาสง SELECT, INSERT,
UPDATE, DELETE
3. ภาษาควบคม (Control Language : CL) • เปนภาษาทใชควบคมระบบรกษาความปลอดภยของฐาน
ขอมล• ตวอยางเชน คำาสง GRANT, REVOKE
25DBMS จะจดการการโตตอบระหวางผใชงานกบฐานขอมล
26
ระบบการจดการฐานขอมล หนาทของ DBMS มดงน1. ใหผใชงานสามารถสรางฐานขอมล
(DDL :Data Definition Language) 2. ใหผใชงานสามารถเพม,ปรบปรง,ลบและเรยกใชขอมลจากฐาน
ขอมล (DML : Data Manipulation Language) 3. ทำาการ
ควบคมการเขาถงฐานขอมล ดงน - ความปลอดภยของระบบ(Security System)
- ความคงสภาพของระบบ(Integrity System) - การ
เขาถงขอมลพรอมกน (Concurrency Control System) - การกคนระบบ (Recovery Control System) - การเขาถง
รายการตางๆ (User-accessible Catalog)
27
สวนประกอบของระบบฐานขอมลสวนประกอบหลกของระบบฐาน
ขอมล ม 5 สวน ดงน 1. Hardware คอ อปกรณคอมพวเตอรทจะนำามาใชงาน 2.
Software หมายถง ระบบปฏบตการ , ซอฟตแวรการจดการฐานขอมล(DBMS), Application Program
และ Utility Program 3. Data คอ ขอมลทเกบอยในฐานขอมล และคำาอธบาย
ขอมล (Meta-data)ซงเปนขอมลทอธบายคณลกษณะ ของขอมล เชน โครงสรางของขอมล 4.
Procedure คอ ขนตอนการปฏบตงาน ผใชจะจดการกบฐานขอมลตามขนตอนการปฏบตงานทกำาหนดไวตามคมอ 5. People คอบคลากรทมหนาทในการจดการฐานขอมล เชน ผบรหาร
ขอมลและฐานขอมล (Data and Database Administrators), นกออกแบบฐานขอมล(Database Designers), นกเขยนโปรแกรม(Application Programmers) และผใช
งาน (End Users)
28
บคลากร ( People)บคลากรทเกยวของกบฐานขอมล จำาแนกไดเปน 3 ประ
เภทใหญๆ ดงน 1. ผบรหารและดแลฐานขอมล (Database Administrators หรอ DBA) มหนาท
- จดการฐานขอมล ไดแก ออกแบบและสรางฐานขอมล บำารงรกษาฐานขอมล ออกแบบโปรแกรมประยกตในการจดการกบขอมล ตดตามแกปญหา DBMS- ควบคมระบบรกษาความปลอดภย เชน กำาหนดสทธในการใชงาน- วางแผนปองกนความเสยหาย ควบคมการทำา backup
29
บคลากร ( People) 2. นกเขยนโปรแกรมประยกต (Application
Programmers) มหนาท เขยนโปรแกรมประยกตเพอจดการกบขอมลภายในฐานขอมล ตามท DBA ไดออกแบบไว
3. ผใชงาน (End-Users) คอ ผใชงานโปรแกรมซงไดพฒนาแลว ม 2 แบบ คอ3.1 ผใชงานทวไป ทไมมความรเกยวกบ DBMS จะปฏบตงานผานเมนทกำาหนดในการเรยกดขอมลหรอการพมพรายงานตางๆ
3.2 ผใชงานทมความร เปนผใชงานทมความรเกยวกบฐานขอมล สามารถใชชดคำาสง SQL ในการปฏบตงานกบขอมล
30
สวนประกอบของระบบฐานขอมล
31
ขอดของฐานขอมล 1. ความเปนอสระของโปรแกรมและ
ขอมล(Program-Data Independence) 2. ลด ความซำาซอนในขอมล (Minimal Data
Redundancy) 3. ความคงทของขอมล(Improved Data Consistency) 4.
การใชขอมลรวมกน (Improved Data Sharing)5. เพมคณประโยชนในการพฒนา
ระบบ ( Increased Productivity of Application Development)
6. ความเปนมาตราฐานเดยวกน (Enforcement of Standard) 7 . ขอมลมคณภาพมาก
ขน (Improved Data Quality)8. การเขาถงขอมลและการตอบรบขอมลมทศทาง ทดขน (Improved Data Accessibility and
Development)9. ลดขนตอนการบำารงรกษาโปรแกรม
( Reduced Program Maintenance)
32
ขอเสยของฐานขอมล 1. มความซบซอน (more complex
than file technology) 2. มขนาดใหญ(large size) 3. การทำางานชา (slow processing)
4. ตนทนสง (cost of DBMS)5. ตองใชผเชยวชาญในการจดการฐาน
ขอมล(database specialist) 6. ปญหาจาก การใชขอมลรวมกน (problem of data sharing)
7. ผลกระทบตอความลมเหลวในขอมล(higher impact of a failure) 8.
การกระบบเปนไปคอนขางยาก ( recovery more difficult)
33
• Entity เปนคำานาม หมายถง สงตางๆหรอ เรองตางๆทเกยวของ เมอมการออกแบบระบบฐานขอมล (อาจเปนรปธรรม หรอ นามธรรมกได) เชน บคคล สถานท การลงทะเบยน การสงซอเปรยบเทยบเทากบ แฟม (file) ในระบบแฟมขอมล
• Attribute เปนขอมลทแสดงถงคณสมบตของ Entity เชน Entity รายวชา ประกอบดวย Attribute รหสวชา, ชอวชา, จำานวนหนวยกตเปรยบเทยบเทากบ เขตขอมล (field) ในระบบแฟมขอมล
คำาศพททใชในฐานขอมล
34
Std_no Std_name Faculty_code Major_code Address GPAStudent Entity
Attributes
Faculty_code Faculty_name Administrators
Entity Attributes และ ความ สมพนธแบบ one-to-many
Faculty
Student
Std_no Std_name Faculty_code Major_code Address GPA
Relationship
35
• แบงเปน 3 ประเภท1. แบบหนงตอหนง (One-to-One)
เปนความสมพนธทม record เพยง 1 record ใน entity A ทมความสมพนธกบ record เพยง 1 record ใน entity Bเชน entity นกศกษา กบ entity การประกนชวตทมหาวทยาลยจดหาให
รหสนกศกษา ... 4015-00014015-11114015-2121
รหสประกน ... 123-5865432-6268965-8742
การประกนฯ
ความสมพนธระหวาง Entity
36
2. แบบหนงตอกลม (One-to-many)เปนความสมพนธทม record 1 record ใน entity A ทมความสมพนธกบ record หลาย record ใน entity Bเชน entity นกศกษา กบ entity อาจารยทปรกษา
รหสนกศกษา ... 4015-00014015-11114015-2121
นกศกษา
รหสอาจารย ... 401205440101380205
อาจารยทปรกษา
ความสมพนธระหวางEntity
37
3. แบบกลมตอกลม (Many-to-Many)เปนความสมพนธทมแตละ record ใน entity A ทมความสมพนธกบ record หลาย record ใน entity Bเชน entity นกศกษา กบ entity วชาทเรยน
รหสนกศกษา ... 4015-00014015-11114015-2121
รหส วชา ... 150-311150-426150-510
วชาทเรยน
ความสมพนธระหวางEntity
38
1. จงอธบายวาโครงสรางแฟมขอมลประกอบดวยอะไรบาง
2. จงอธบายวาชนดของขอมลมอะไรบาง
3. จงอธบายวาประเภทของแฟมขอมลมกประเภท อะไรบาง
4. เหตผลสำาคญใดทจำาเปนตองมการจดโครงสรางแฟมขอมล
5. จงบอกลกษณะการทำางานของระบบแฟมขอมล พรอมขอดและขอเสย
6. จงบอกลกษณะการทำางานของระบบฐานขอมล พรอมขอดและขอเสย
7.ระบบการจดการฐานขอมล(DBMS) คอ อะไร มสวนสำาคญตอฐานขอมลอยางไร และมหนาทอะไรบาง
8. สวนประกอบของระบบฐานขอมลมอะไรบาง จงอธบาย
9. ภาษา SQL คอ อะไร ประกอบดวยอะไรบาง
10. จงอธบายความหมายของคำาวา Entity , Attribute และ ความสมพนธระหวาง Entity
แบบฝกหด ( เกบคะแนนครงท3)