ความรู้เบื่องต้นเกียวกับฐานข้อมูล[...
DESCRIPTION
ง30243 การจัดการฐานข้อมูล : ความรู้เบื่องต้นเกียวกับฐานข้อมูล [ อ.สมชาติ แผ่อำนาจ ]TRANSCRIPT
ความรูเบื้องตนเกี่ยวกับฐานขอมูลIntroduction to Database
สอนโดย อ.สมชาติ แผอํานาจ1
ลําดับช้ันของการจัดเก็บขอมูล
• บิต (bit) ยอมาจาก Binary Digit ขอมูลในคอมพิวเตอร 1 บิต จะแสดงได 2 สถานะคือ0 หรือ 1
2ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ลําดับช้ันของการจัดเก็บขอมูล• ไบต(byte) คือ นํา บิต หลายๆ บิต มาเรียงตอกัน
จํานวน 8 บิต มาเรียงเปน 1 ชุด เรียกวา 1 ไบต • เชน 10100001 หมายถึง ก
10100010 หมายถึง ข
3ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ลําดับช้ันของการจัดเก็บขอมูล
เขตขอมูล(Field) คือ การนํา ไบต (byte) หลายๆ ไบต มาเรียงตอกัน • เชน เขตขอมูล Name ใชเก็บชื่อ • เชน เขตขอมูล LastName ใชเก็บนามสกุล • เปนตน
4ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ลําดับช้ันของการจัดเก็บขอมูล
ระเบียน(Record) คือ การนําเขตขอมูล หลายๆ เขตขอมูล มาเรียงตอกัน เรียกวา ระเบียน (record) • เชน ระเบียน ที่ 1 เก็บ ชื่อ นามสกุล วันเดือนป
เกิด ของ นักเรียนคนที่ 1 เปนตน
5ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ลําดับช้ันของการจัดเก็บขอมูล
แฟมขอมูล(File) คือ การเก็บระเบียนหลายๆระเบียน รวมกัน • เชน แฟมขอมูล นักเรียน จะเก็บ ชื่อ นามสกุล
วันเดือนปเกิด ของนักเรียน จํานวน 500 คน เปนตน
6ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ลําดับช้ันของการจัดเก็บขอมูล
ฐานขอมูล(Database) คือ การจัดเก็บ แฟมขอมูล หลายๆ แฟมขอมูล ไวภายใตระบบเดียวกัน • เชน เก็บ แฟมขอมูล นักเรียน อาจารย วิชาที่เปด
สอน เปนตน
7ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ลําดับช้ันของการจัดเก็บขอมูล
Database
Files
Records
Fields
(Byte)Characters
(Byte)
Bit
Recordประกอบด้วย รหัส ,
นามสกุลและชือ,วันทีจ้างงาน
Personnel fileDepartment filePayroll file
(Project database)
098-40-1370 Fiske, Steven 01-05-1985549-77-1001 Buckley, Bill 02-17-1979005-10-6321 Johns, Francine 10-07-1997
(Personnel file)
098-40-1370 Fiske, Steven 01-05-1985
Fiske Field นามสกุล
1000100 ตัวอักษร F ใน ASCII
0,18
ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
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 GradeCourse File
Course File
Financial File
Personal History File
Student Databaseโครงสรางลําดับชั้นขอมูล
9ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
รหัสผู้ใช้ ชือ - นามสกุล เพศ ทีอยู่ เบอร์ติดต่อ ว ันเกิด
B00514 สุวารี ใจสบาย ญ 34 คลองสาน 025478556 12/01/1977
A00128 กนก ยินดี ช 126 บางพลัด 026441255 09/07/1986
A01245 เพ็ญศรี สุขสม ญ 49/2 จตุจักร 014544255 05/11/1971
C13244 บุญมี ยินดี ช 66 ลาดพร้าว 066458554 26/04/1980. . . . . .. . . . . .. . . . .
ฟิลด์เรคอร์ด
ไฟล์
ไบต์
โครงสรางแฟมขอมูล
10ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
เบอร์โทร เบอร์ปลายทาง เริมต้น สินสุด ว ันที
FIELD
เก็บไฟลอยางไร
RECORD
0861106494 0817159090 1415 1416 02032546
0898821136 025832478 0536 0542 020325460815946255 0815122362 0821 0840 030325460866231221 025148787 1121 1132 040325460814556845 0898559512 1311 1323 04032546
. . . . .. . . . .
FILE
11ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
รูปแบบการจัดเก็บขอมูล
ระบบแฟมขอมูล
12ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ระบบแฟมขอมูล (File-based System)
• ระบบแฟมขอมูล(File-based system) คือ ชุดของโปรแกรมประยุกตที่ใหผูใชใชเพื่อประมวลผลงานที่ตองการ โดยแตละโปรแกรมก็จะกําหนดและจัดการแฟมขอมูลของตนเอง
• แฟมขอมูลที่ใชในระบบไฟลจะแยกจากกันเปนเอกเทศ และอาจไมมีความสัมพันธกัน
• โดยสวนใหญขอมูลและโปรแกรมมักรวมอยูดวยกันเปนแฟมขอมูล
13ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ระบบแฟมขอมูล (File-based System)
ฝ่ายบัญชี
โปรแกรมบัญชี การขาย ลูกค้า
ฝ่ายขาย
โปรแกรมการขาย การขาย ลูกค้า สินค้า
ฝ่ายบุคคล
โปรแกรมฝ่ายบุคคล พนักงาน
14ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ขอจํากัดของการประมวลผลแบบแฟมขอมูล
• ขอมูลถูกแบงและเก็บแยกจากกัน• ขอมูลมีความซ้ําซอนกัน• มีความขึ้นตอกันของขอมูล• รูปแบบขอมูลไมตรงกัน• โปรแกรมที่ใชงานมีความคงที่ไมยืดหยุน
15ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ขอจํากัดของการประมวลผลแบบแฟมขอมูล
ขอมูลถูกเก็บและเก็บแยกจากกันเมื่อขอมูลตาง ๆ ถูกเก็บกันไวคนละไฟล หาก
ตองการนําขอมูลตาง ๆ มาสรางเปนรายงาน โปรแกรมเมอรตองสรางไฟลชั่วคราว(Temporary file)ขึ้นมา เพื่อดึงขอมูลตาง ๆ จากไฟลตาง ๆ มารวมกันกอน แลวคอยสรางเปนรายงาน
16ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ขอจํากัดของการประมวลผลแบบแฟมขอมูล
ขอมูลมีความซ้ําซอนสืบเน่ืองจากขอมูลถูกเก็บแยกจากกัน ทําใหไมสามารถ
ควบคุมความซ้ําซอนขอมูลได ทําใหสูญเสียพื้นที่ในการจัดเก็บขอมูลมากขึ้น และกอใหเกิดความผิดพลาดในการดําเนินการกับขอมูล 3 ลักษณะ ไดแก
ความผิดพลาดจากการเพิ่มขอมูล(Insertion anomalies)ความผิดพลาดจากการปรับปรุงขอมูล(Modification anomalies)ความผิดพลาดจากการลบขอมูล(Deletion anomalies)
17ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ขอจํากัดของการประมวลผลแบบแฟมขอมูล
มีความขึ้นตอกันของขอมูลเนื่องจากโครงสรางทางกายภาพและการจัดเก็บขอมูลถูก
สรางโดยการเขียนโปรแกรมประยุกต(Application program) ดังนั้นหากตองการเปลี่ยนแปลงโครงสรางขอมูล เชน ช่ือของพนักงาน จากเดิม 20 ตัวอักษร เปน 30 ตัวอักษร มีขั้นตอนการทํางานดังนี้
18ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
1. เปดไฟลหลักพนักงานเพื่ออานขอมูล2. เปดไฟลช่ัวคราวท่ีมีโครงสรางคลายไฟลหลัก แตปรับ
โครงสรางของช่ือพนักงาน จาก 20 ตัวอักษร เปน 30 ตัวอักษร3. อานขอมูลจากไฟลหลัก และยายไปเก็บไวในไฟล
ช่ัวคราว จนกระท่ังครบทุกรายการ4. ลบไฟลหลักท้ิง5. เปลี่ยนช่ือไฟลช่ัวครามใหช่ือเดียวกับไฟลหลัก
19ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ขอจํากัดของการประมวลผลแบบแฟมขอมูล
รูปแบบขอมูลไมตรงกันโครงสรางขอมูลจะขึ้นอยูกับ
ภาษาคอมพิวเตอรที่ใชในการเขียนโปรแกรมประยุกต ถาแตละฝายใชภาษาในการเขียนตาง ๆ กัน ก็อาจทําใหโครงสรางขอมูลของแฟมไมตรงกัน ทําใหไมสามารถนําไฟลขอมูลมาใชรวมกันได
20ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ขอจํากัดของการประมวลผลแบบแฟมขอมูล
โปรแกรมที่ใชงานคงที่ไมยืดหยุนระบบแฟมขอมูล มีความขึ้นกับโปรแกรม
ประยุกต ขอมูลหรือรายงานตาง ๆ จะถูกกําหนดรูปแบบตายตัวในโปรแกรมแลว ดังน้ันหากตองการรายงานใหม จะตองใหโปรแกรมเมอรเขียนโปรแกรมขึ้นมาใหม ทําใหเสียคาใชจาย
21ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
“ระบบฐานขอมูล”
22ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ความหมายของฐานขอมูล
ฐานขอมูล (Database) หมายถึง โครงสรางของการจัดเก็บขอมูลที่มีความสัมพันธเก่ียวของกันไวในที่เดียวกัน เพื่อใหสามารถนําขอมูลมาประมวลเพื่อชวยในการตัดสินใจ และสามารถใชขอมูลรวมกันได
ในการจัดการขอมูลในฐานขอมูลจะใชซอฟตแวรประเภท ระบบจัดการฐานขอมูล(Database Management System : DBMS)
23ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ฐานขอมูล(Database)
• ฐานขอมูลมีสวนที่ทําหนาที่ในการอธิบายความหมายของรายการขอมูลที่เก็บอยูในฐานขอมูลดวย เรียกสวนน้ีวา – บัญชีระบบ(System catalog) หรือ –พจนานุกรมของขอมูล(Data Dictionary) หรือ– เมตาดาตา(Meta - data)
24ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ฐานขอมูล(Database)
• โครงสรางของขอมูลจะถูกแยกออกจากโปรแกรมประยุกตและเก็บเอาไวในสวนที่เรียกวา “ฐานขอมูล”
• ถามีการเพิ่มหรือปรับปรุงโครงสรางของขอมูลก็จะไมมีผลกระทบกับโปรแกรมประยุกต
25ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ระบบฐานขอมูล (Database System)
ฝ่ายบัญชี
โปรแกรมบัญชี
ลูกค้า
พนักงาน
การขาย
สินค้าฝ่ายขาย
โปรแกรมการขาย
ฝ่ายบุคคล
โปรแกรมฝ่ายบุคคล
Database
26ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ระบบจัดการฐานขอมูล(Database Management System : DBMS)
หมายถึง ซอฟตแวรที่ใชในการจัดการขอมูลในฐานขอมูล DBMS จะทําหนาที่เปนตัวกลางระหวางฐานขอมูลกับโปรแกรมที่มาใชงานฐานขอมูลและผูใชงานฐานขอมูล ที่ติดตอไปยังฐานขอมูลเพื่อทํางานที่ผูใชตองการใหสําเร็จเชน การจัดเก็บขอมูลลงในฐานขอมูล , การคนหาขอมูลที่ตองการออกมาแสดง หรือ การลบขอมูล เปนตน
27ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ระบบการจัดการฐานข้อมูลDatabase management systems : DBMS
ซอฟทแวรระบบชนิดหน่ึง ที่ถูกสรางขึ้นมาเพื่อจัดการ ขอมูลในฐานขอมูล เปนตัวกลางระหวางผูใชกับฐานขอมูล• สวนประกอบของ DBMS
– SQL (Structure Query Language)– โปรแกรมอํานวยความสะดวก (General Utilities)– โปรแกรมชวยสรางโปรแกรมประยุกตและรายงาน – (Applicaton and Report Generators)– พจนานุกรมขอมูล (Data Dictionary) 28
ความสามารถเบืองต้น
• สรางตารางขอมูล • เพิ่ม ปรับปรุง เรียกคนขอมูล• เก็บรายละเอียดเกี่ยวกับขอมูลไวใน data dictionary• มีระบบเสริมการทํางาน • มีระบบสํารองขอมูล• สนับสนุนเครื่องมือการทํารายงาน
ระบบการจัดการฐานข้อมูลDatabase management systems : DBMS
29ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
หนาท่ีของ DBMS• จัดการพจนานุกรมของขอมูล(Data dictionary
management) • จัดการการจัดเก็บขอมูล(Data storage management) • การแปลงขอมูลและการนําเสนอขอมูล(Data
transformation and presentation) • การจัดการดานความปลอดภัย(Security management)• ควบคุมการเขาใชงานของผูใชพรอมกัน(Multiuser
accesss control) 30
ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
หนาท่ีของ DBMS• การจัดการเรื่องการสํารองและกูคืนขอมูล(Backup
and recovery management) • การจัดการความคงสภาพของขอมูล(Data
integrity management) • ภาษาในการเขาถึงขอมูลและสวนประสานผูใชใน
โปรแกรมประยุกต(Database access languages and application programming interfaces)
31ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
การประยุกตใชระบบงานฐานขอมูล• การซื้อของจากซูเปอรมาเก็ต• การซื้อของโดยใชบัตรเครดิต• การจองตั๋วเครื่องบินผานตัวแทนจําหนาย• การใชบริการหองสมุด• การใชงานอินเทอรเน็ต• การเรียนในมหาวิทยาลัย• การบริหารในองคกร• ฯลฯ อีกมากมาย
32
องคประกอบของระบบฐานขอมูล
ฮารดแวรHardware
ซอฟตแวรSoftware
ขอมูลData กระบวนการ
ProcedureบุคลากรPeople
เคร่ือง มนุษย
สะพาน
33ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ชือซอฟท์แวร์ บริษัทผู้ผลิต หมายเหตุ
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. ซอฟท์แวร์ลิขสิทธิ
ซอฟทแวรระบบจัดการฐานขอมูล
34
ฮารดแวร(Hardware)
• หมายถึง คอมพิวเตอรและอุปกรณรอบขางซึ่งเก่ียวของกับการใชงานฐานขอมูล
35ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ซอฟตแวร(Software)
• หมายถึง ระบบปฏิบัติการ , ระบบจัดการฐานขอมูล , โปรแกรมประยุกต และโปรแกรมยูทิลิตี้ตาง ๆ ที่เก่ียวของกับการใชงานในระบบงานฐานขอมูล
36ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ขอมูล(Data)
หมายถึง ขอมูลที่จัดเก็บอยูในฐานขอมูล เพื่อนําไปใชในการประมวลตอไป
ใน DBMS จะสวนที่ใชอธิบายขอมูล ซึ่งจะเปนขอมูลที่บรรยายคุณลักษณะของขอมูล(meta data)
37ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
โพรซีเยอร(Procedure)
• หมายถึง คําสั่งและกฎตาง ๆ ในขั้นตอนการปฏิบัติงานที่เก่ียวของกับชุดคําสั่ง กฏเกณฑในการออกแบบและการใชงานฐานขอมูล
38ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
บุคลากร(People)
• หมายถึง บุคคลที่เก่ียวของกับระบบงานฐานขอมูล ทั้งสวนที่เปนการออกแบบและการใชงาน
• เชน ผูใชทั่วไป , นักออกแบบฐานขอมูล , นักออกแบบระบบ
39ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ผูท่ีมีสวนเกี่ยวของกับการใชงานฐานขอมูล
• ผูบริหารฐานขอมูล(Database Administrator :DBA)
• นักออกแบบฐานขอมูล(Database Designer)• นักพัฒนาโปรแกรม(Application Developers)• ผูใช(End User)
40ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ขอดีของการใชงานฐานขอมูล
• มีความเปนอิสระตอกันระหวางโปรแกรมและขอมูล• ลดความซ้ําซอนของขอมูล• เพิ่มความตรงกันของขอมูล• สามารถใชขอมูลรวมกันได• บังคับใหเปนมาตรฐานเดียวกันได• ปองกันและควบคุมการเขาถึงขอมูลไดงายขึ้น• ลดปญหาในการบํารุงรักษาโปรแกรม 41
ขอจํากัดของระบบการจัดการฐานขอมูล
• ซับซอน(Complexity) • ขนาดใหญ(Size) • ราคาของDBMSแพง(Cost of DBMS) • ราคาของฮารดแวรแพงตามไปดวย(Additional
hardware cost) • คาใชจายในการแปลงระบบ(Cost of conversion) • ผลกระทบจากความเสียหายสูง(Higher impact of a
failure) 42
ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ฐานขอมูลเชิงสัมพันธ(Relational database)
• ป ค.ศ.1970 โดย ดร.เอดการ คอดด (Edgar F. Codd) • เปนรูปแบบที่ทําความเขาใจไดงาย • สามารถจัดการกับขอมูลไดโดยใชคําส่ังงาย ๆ • สวนของการติดตอกับผูใช กับสวนของการเก็บขอมูล
จริงน้ันมีความเปนอิสระตอกัน น่ันคือในมุมมองของผูใชจะไมรูสึกถึงรายละเอียดที่ซับซอนของการเก็บจริง
43ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ศัพทที่เก่ียวของ• รีเลชั่น (Relation)• แอทตรบิิวต (Attribute)• โดเมน (Domain)• ทัพเพิล (Tuple)• ดีกรี (Degree)• คารดินัลลิตี ้(Cardinality)
ฐานขอมูลเชิงสัมพันธ
44ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
• รีเลชั่น หมายถึง การกําหนดตารางที่ประกอบดวยคอลัมนและแถว หรือตาราง 2 มิติ
• ตาราง (table)
ฐานขอมูลเชิงสัมพันธ
45ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ลักษณะของรีเลชั่น • เปนตาราง 2 มิติ• แตละชองของตารางตองบรรจุขอมูลเพียงคาเดียว• ไมจําเปนตองเรียงลําดับคอลัมน หรือแถวใด ๆ • ขอมูลในแตละแถวตองไมซ้ํากัน • ขอมูลในแตละคอลัมนจะตองเปนขอมูลประเภท
เดียวกัน
ฐานขอมูลเชิงสัมพันธ
46ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
แอทตริบิวต คือ คุณสมบัติของรีเลชั่น หรือคอลัมนของตารางน่ันเอง หรืออาจเทียบไดกับฟลดในแฟมขอมูล• นักศึกษา (รหัสนักศึกษา, ชื่อ-นามสกุล, เพศ, เบอร
ติดตอ)
ฐานขอมูลเชิงสัมพันธ
47ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
โดเมน (Domain) – คือการระบุขอบเขตขอมูลท่ีเปนไปไดใหแกแอทตริบิวต หนึ่ง ๆ
เพื่อเปนการรับประกันความถูกตองขอมูลในระดับหนึ่ง – โดเมนของแอทตริบิวตเพศ คือ ชาย หรือ หญิง อยางใดอยาง
หนึ่งเทานั้น – โดเมนของเงินเดือนอาจารยจะตองมีคาไมเปนศูนย และ
ไมติดลบ – โดเมนของช่ือสมาชิกจะตองเปนตัวอักษรเทานั้น
ฐานขอมูลเชิงสัมพันธ
48ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
คียหลัก (Primary key) แอทตริบิวตท่ีใชเพื่อการเจาะจงขอมูลแถวใดแถวหนึ่งใน
ตาราง โดยท่ีคียหลัก อาจประกอบดวยแอทตริบิวต 1 ตัวหรือมากกวา 1 ตัว ท่ีสามารถใชเปนตัวเจาะจงบอกวากําลังอางอิงถึงทัพเพิลไหนหรือแถวไหน อาศัยคียหลักเพื่อช้ีเฉพาะเจาะจงวาตองการระบุถึงขอมูล
แถวใดแถวหนึ่งในรีเลช่ัน
ฐานขอมูลเชิงสัมพันธ
49ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
คุณสมบัติของแอทตริบิวตที่เปนคียหลัก(1) คาของขอมูลทุกแถวในแอทตริบิวตที่ทําหนาที่เปน
คียหลักตองไมซ้ํากัน(2) แอทตริบิวตที่เปนคียหลักอาจประกอบขึ้นจาก
แอทตริบิวตมากกวา 1 แอทตริบิวต เพื่อใหไดเปนคาที่ไมซ้ํากันในแตละแถว เรียกวา Composite key
(3) แอทตริบิวตที่เปนคียหลักจะตองไมเปนคาวาง (null values)
ฐานขอมูลเชิงสัมพันธ
50ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ลูกค้า (รหัสลูกค้า, ชือ-นามสกุล, ทีอยู,่ โปรโมชัน, เบอร์ติดต่อ, หมายเลขประจําตัวประชาชน)
ลูกค้า
ฐานขอมูลเชิงสัมพันธ
51ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
การลงทะเบียน (รหัสนักศึกษา, รหัสวิชาทีลงทะเบียน, รหัสผู ้สอน, สถานที, วันทีเรียน
การลงทะเบียน
ฐานขอมูลเชิงสัมพันธ
52ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
คียนอก หรือคียตางดาว (Foreign key) – ความสัมพันธท่ีเกิดขึ้นระหวางรีเลชันจะอาศัยแอทตริบิวตตัว
หนึ่งซึ่งไปสัมพันธกับคียหลักในรีเลชันอื่น เกิดเปนการเช่ือมโยงระหวางรีเลชัน แอทตริบิวตนี้เรียกวา คียนอก หรือคียตางดาว
– คือ แอทตริบิวตท่ีใชแสดงความสัมพันธระหวางรีเลชัน – คือ กลุมของแอทตริบิวตในรีเลชันหนึ่งท่ีมีคุณสมบัติเปนคีย
หลัก และไปปรากฏในอีกรีเลช่ันหนึ่ง – คือ แอทตริบิวตท่ีขอมูลมีความสอดคลองกับคียหลักในอีกรี
เลชันหนึ่ง
ฐานขอมูลเชิงสัมพันธ
53
คุณสมบัติของคียนอก(1) คาที่ปรากฏในแอทตริบิวตที่เปนคียนอกในรี
เลชันหน่ึงจะตองมีคาเทากับคาในแอทตริบิวตที่เปนคียหลักในแถวใดแถวหน่ึงในอีกรีเลชันหน่ึง
(2) คาที่ปรากฏในแอทตริบิวตที่เปนคียนอกอาจเปนคาวางได
(3) ทั้งคียนอกและคียหลักในอีกรีเลชันที่สัมพันธกันไมจําเปนตองมีชื่อแอทตริบิวตเดียวกันก็ได แตจําเปนตองมีโดเมนเดียวกัน
ฐานขอมูลเชิงสัมพันธ
54
ฐานขอมูลเชิงสัมพันธ
55
Database designการออกแบบฐานขอมูล
56ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
Entity-Relational Model• ผังเอ็นติตี้-รีเลชันชิพ (ERD: Entity-
Relational Diagram)• Peter Chen (1976) มาตรฐาน ANSI ป
1988• ERD แสดงเอ็นติตี้ และความสัมพันธ
ระหวางกันของเอ็นติตี้ที่ประกอบกันเปนฐานขอมูล
• ใชเปนเครื่องมือส่ือสารระหวางผูออกแบบฐานขอมูลและผูใชฐานขอมูล 57
องคประกอบของ ERD• เอ็นติตี้ (Entity)• แอทตริบิวท (Attribute)• ความสัมพันธ (Relationship)
58ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
เอ็นติตี ้(Entity)• ส่ิงตาง ๆ ที่มีเอกลักษณสามารถชี้เฉพาะเจาะจงได
เปนส่ิงที่สามารถนําไปเก็บในฐานขอมูลได อาจเปนส่ิงที่เปนรูปธรรม หรือนามธรรมก็ได เชน บุคคล สัตว ส่ิงของ สถานที่ ความคิด เหตุการณ เปนตน
• บุคคล พนักงาน นักศึกษา นักฟุตบอล แพทย• ส่ิงของ สินคา รถยนต หนังสือ• สถานที่ สนามบิน รานอาหาร โกดังสินคา• ความคิด หลักสูตร แผนประกันชีวิต• เหตุการณ การแขงขันฟุตบอล ขาว การรักษาโรค 59
• เอนทิต(ีEntity) คือสิ่งใดๆที่เราสนใจในการสรางฐานขอมูลอาจจะเปนคน สถานที่ สิ่งของ ซึ่งตองการเก็บขอมูลไว เชน เอนทิตีลูกคา สินคา พนักงานฯลฯ
2.1 การออกแบบฐานขอมูล
60ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
• แอทรบิิวต ( Attribute ) หมายถึง รายละเอียดของขอมูลในเอนทิตีห้น่ึง ๆ เชน เอนทิตี้พนักงาน ประกอบดวย แอทรบิิวตรหัสพนักงาน ชื่อ ที่อยู หรือแอทรบิิวตแผนก ประกอบดวย แอทรบิิวตรหัสแผนก ชื่อ เปนตน
61ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
แอทตริบิวท (Attribute)• คุณสมบัติ ลักษณะหรือรายละเอียดของเอ็นติตี
พนักงานชือ - นามสกุล
ส่วนสูง
นําหนัก
วันเดือนปีเกิด
ประวัติการศึกษา
กรุ๊ปเลือดหมายเลขบัตรประจําตัวประชาชน
ทีอยู่
62ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ร้านอาหาร
สาขา
ทีตั ง
ผู้จ ัดการร้านเบอร์โทรศัพท์
จํานวนโต๊ะ
จํานวนบริกร
63ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ความสัมพันธ (Relationship)• ความสัมพันธ์ระหว่างเอ็นติตีในฐานข้อมูล
ลูกค้า กับ สินค้า
ความสัมพันธ์ คือ สั งซือ
นักศึกษา กับ แผนการเรียน
ความสัมพันธ์ คือ ลงทะเบียน
อาจารย์ กับ คณะ
ความสัมพันธ์ คือ สังกัด
64ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ความสัมพันธ (Relationship)• ความสัมพันธแบบหน่ึงตอหน่ึง (One to One)
– สามี – ภรรยา– ผูนําประเทศ – ประเทศ
• ความสัมพันธแบบหน่ึงตอกลุม (One to Many)– แม – ลูก– อาจารยที่ปรึกษา - นักศึกษา
• ความสัมพันธแบบกลุมตอกลุม (Many to Many)– ลูกคา – สินคา– รายวิชา - นักศึกษา
65
การแปลงความสัมพันธ แยกได 3 ลักษณะ ตามความสัมพันธ
– แบบหนึ่งตอหนึ่ง• คียหลักของตารางหนึ่งจะกลายเปนคียนอกของอีกตารางหนึ่ง
– แบบหนึ่งตอกลุม• คียหลักของเอ็นติตี้ดาน One เปนคียนอกของเอ็นติตี้ดาน Many
– แบบกลุมตอกลุม• สรางตารางใหมขึ้นมา โดยมีคียหลักจากเอ็นติตี้ท้ังสองมาทําหนาท่ีรวมกันในตารางใหม ตารางใหมนี้จะถูกเรียกวา Junction Table (ตารางเช่ือมตอ) ทําการเช่ือมเอ็นติตี้ท่ีมีความสัมพันธแบบกลุมตอกลุม
66
ความสัมพันธของเอนทีตี
• 1.ความสัมพันธแบบหน่ึงตอหน่ึง
ครูประจําชั น ชั นเรียนประจํา
1 1
67ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ความสัมพันธของเอนทีตี
• 2.ความสัมพันธแบบหน่ึงตอหลายหรือหลายตอหน่ึง
ครู นักเรียนสอน
1 M
68ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ความสัมพันธของเอนทีตี
• 3.ความสัมพันธแบบหลายตอหลาย
สมาชิก หนังสือยืม
M N
69ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
สวนประกอบของ ER Diagram1. Entity ใชสัญลักษณ
พนักงานขายพนักงานขาย สินค้าสินค้าขายสินค้าขายสินค้าM Nรหัสพนักงานรหัสพนักงาน
ชือพนักงานชือพนักงาน
ทีอยู่ทีอยู่
รหัสสินค้ารหัสสินค้า
ชือสินค้าชือสินค้า
จํานวนคงเหลือจํานวนคงเหลือ
ราคาราคาโกดังทีเก็บโกดังทีเก็บเบอร์โทรเบอร์โทร
2. Attribute ใชสัญลักษณ3. Relationship ใชสัญลักษณ
70
ข้ันตอนการแทนความสัมพันธของขอมูลดวย ER Diagram
• กําหนด Entity ที่จําเปน• กําหนดความสัมพันธระหวาง Entity• กําหนด Attribute ของ Entity• พิจารณา Attribute ที่ขึ้นกับ Relationship• เลือก Primary key (Identifier)• ... เปล่ียน ER Diagram เปน Table
71ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
• การแปลงความสัมพันธ E-R ใหอยูในรูปตารางในฐานขอมูลเชิงสัมพันธแตละเอ็นติตี้จะถูกแปลงเปนตาราง ชื่อเอ็นติตี้จะ
เปน ชื่อตารางแตละแอทตริบิวตจะกลายเปนคอลัมนของตารางมีแอทตริบิวตหน่ึงทําหนาที่เปนคียหลักของตาราง
72ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ตัวอยางพิจารณาสวนหน่ึงของระบบลงทะเบียนนักศึกษา กําหนดความสัมพันธของแตละ Entity ไดดังน้ี
1. นักศึกษาลงทะเบียนไดหลายรายวิชา2. รายวิชาหน่ึงๆ นักศึกษาสามารถ
ลงทะเบียนไดหลายคน3. นักศึกษาคนหน่ึงสังกัดได 1 สาขาวิชา4. สาขาวิชาแตละสาขาวิชามีนักศึกษาสังกัดได
หลายคน 73
ตัวอยางภาพ Attributes ชนิดตาง ๆ
StudentID Age
Name_Surname BirthdaySex
Name
Surname
Tel
Composite
key
Derived
Multi - Valued
74ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
STUDENT
NAME
FACULTY
DIPLOMA
Code
FNAME
MNAME
LNAME
NAME เป็น Composite attribute , DIPLOMA เป็น Multivalued attribute
75ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
SALESMAN
ADDRESS
EMP_ID
SALARY
NAME
TOTAL_INCOME
STREETNUMBER
CITY
COMISSION
TOTAL_INCOME เป็น Derived Attr.
76ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ER-Diagram ระหวาง อาจารย ที่ปรึกษากับนักศึกษา
77ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ER- Diagram ของ TIME_IN_OUT of EMPLOYEE
OFEMPLOYEE TIME_IN_OUT
T_IN
NAME
POSITIONSALARY
DATEEMP_ID
T_OUT
78ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ER- Diagram แสดงขอมูลของพนักงาน (EMPLOYEE) และ หนวยงานหรือแผนก ( Department) ในองคกรแหงหน่ึง
Work-forEMPLOYEE Department
DNAME
NAME
POSITIONSALARY
DepIDEMP_ID
LOCATION
79ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
DBMS Exampleแบบฝกหัด
80ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
1. ระบบฐานขอมูล หมายถงึอะไร
2. จงบอกขอดขีองการใชระบบฐานขอมูล
3. จงอธบิายความหมายของคําศัพทตอไปนี้
พรอมยกตัวอยาง
3.1 เอนทติี้
3.2 แอตทบิวิต
3.3 ความสัมพันธ
3.4 ฟลด
3.5 เรคอรด
3.6 ตาราง 81
4. จงอธิบายความหมายของ Primary Key
5. จงอธิบายความหมายของ Foreign Key
6. การกําหนด Field ใด Field หนึ่งใหเปน คยี
หลัก ตองมคีุณสมบัตอิะไรบาง
7. Field ที่มคีุณสมบัตเิปน Primary Key ได แต
ไมไดเปน Primary Key เราจะเรยีก Field น้ัน
เปนคยีอะไร
82ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
8. จงอธิบายความหมายของความสัมพันธ
แบบ One – to – Many มาใหเขาใจ
9. เหตุใดจงึตองมกีารออกแบบฐานขอมูล จง
อธิบาย
10. ข้ันตอนการออกแบบฐานขอมูล มอีะไรบาง
83ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]
ER-Diagramภาระงานสอนของอาจารย
จงเขียน ER-diagram น้ีในรูปของตารางฐานขอมูล
84
แหลงอางอิงขอมูล• นราวิชญ์ ความหมัน. มหาวิทยาลัยเทคโนโลยีราชมงคลล้านนา ลําปาง
วิชาระบบจัดการฐานข้อมูล และฐานข้อมูลเบืองต้น
http://bu.lpc.rmutl.ac.th/naravit/05-510-327/content/index.html
85ง30243 การจัดการฐานขอมูล : ความรูเบื่องตนเกียวกับฐานขอมูล [ อ.สมชาติ แผอํานาจ ]