ฐานข้อมูล

Download Report

Transcript ฐานข้อมูล

ฐานข้ อมูล (Database )
มีบทบาทสาคัญต่อวงการทัว่ ไปเป็ นอย่างมากดังจะเห็นได้ วา่
แทบทุก ที่ มี ค อมพิ ว เตอร์ ใ ช้ ใ นการประมวลผล ไม่ ว่า จะเป็ นการ
ประยุกต์ใช้ คอมพิวเตอร์ สาหรับงานด้ านธุรกิจ การศึกษา การแพทย์
วิทยาศาสตร์ หรื องานวิศวกรรม ก็เกี่ยวกับข้ องกับฐานข้ อมูลทังสิ
้ ้น
ทาให้ องค์กรต่างจาเป็ นต้ องใช้ คอมพิวเตอร์ เพื่อ การเข้ าถึง
ฐานข้ อมูลที่ตนต้ องการ ซึ่งไม่ใช้ ได้ เฉพาะองค์กรเท่านั น้ แต่ยังได้
พัฒ นาเป็ นฐานข้ อ มูล ทัง้ ภายในและภายนอกมาอยู่ร วมกัน เป็ น
ฐานข้ อมูลขนาดใหญ่ที่เรี ยกว่า คลังข้ อมูล (Data Warehouse)
ฐานข้ อมูลกับการดาเนินชีวติ ประจาวัน
•
•
•
•
•
การซื้ อสิ นค้าในซูเปอร์มาร์เก็ต
การชาระสิ นค้าผ่านบัตรเครดิต
การใช้บริ การห้องสมุดในสถาบันการศึกษา
การใช้งานอินเตอร์เน็ต
ฯลฯ
การจัดการข้ อมูล
• แนวคิดในการจัดการข้อมูล เป็ นไปตามเทคโนโลยีแต่ละยุคสมัย
• การจัดการข้อมูลเริ่ มจากการบันทึกข้อมูล
– เช่น บันทึกข้อมูลลงในสมุด ถ้าต้องการค้นหาที่เคยบันทึกไว้ ก็จะพลิกหน้าหนังสื อ
ไปยังเลขหน้าที่ตอ้ งการเพื่อดูรายละเอียดในแต่ละหัวข้อ โดยไม่มีรูปแบบการจด
บันทึกที่แน่นอน
• เมื่อปริ มาณข้อมูลเพิ่มมากขึ้น
– จึงได้มีการพัฒนารู ปแบบการจัดเก็บข้อมูลให้มีระบบระเบียบ มีมาตรฐานขึ้น ด้วย
การบันทึกลงในเอกสารและจัดเก็บไว้ในแฟ้ มเอกสารอย่างเป็ นหมวดหมู่ มีการจัดทา
สารบัญ การทาดัชนีเพื่อการค้นหา
– นอกจากนี้ยงั มีอุปกรณ์หรื อเครื่ องมือที่ใช้ในการจัดการแฟ้ มเอกสาร เพื่อให้เกิดความ
ปลอดภัยด้วยการมีตเู ้ อกสาร
การจัดการข้ อมูล
• เมื่อการนาเทคโนโลยีคอมพิวเตอร์ มาใช้ เพื่อการจัดเก็บ
– ช่วยลดจานวนเอกสาร
– ข้ อมูลไม่ลบเลือน
– ข้ อมูลที่จดั เก็บจะถูกจัดเก็บในรูปแบบแฟ้มข้ อมูล
โครงสร้ างข้ อมูล (Data Structure)
• บิต (Bit) ประกอบด้ วยเลขของเลขฐานสอง (Binary Digit) ถือ
เป็ นหน่วยที่เล็กที่สดุ ที่คอมพิวเตอร์ โดยบิตจะมีเพียงหนี่งใน 2
สถานะเท่านันคื
้ อ 0, 1 เพื่อแทนสัญญาณไฟฟ้า บิตไม่สามารถ
แทนค่าข้ อมูลในปริ มาณมาก ๆ ได้
โครงสร้ างข้ อมูล (Data Structure)
• ไบต์ (Byte) เมื่อบิตไม่สามารถแทนค่าข้ อมูลในปริ มาณมาก ๆ
ได้ เนื่องมาจากมีเพียง 2 สถานะเท่านัน้ จึงได้ มีการนาจานวน
บิ ต หลาย ๆ บิ ต มารวมกั น เป็ นไบต์ ซึ่ ง โดยปกติ 1 ไบต์
ประกอบด้ วย 8 บิต ดังนัน้ จึงทาให้ หนึ่งไบต์สามารถสร้ างรหัส
แทนข้ อ มูล ขึน้ มาใช้ แ ทนตัว อัก ขระให้ แ ตกต่า งกัน ได้ ถึ ง 256
อักขระฟิ ลด์ (Field) คือ อักขระทีมารวมกันแล้ วก่อให้ เ กิด
ความหมายอย่างใดอย่างหนึ่ง
โครงสร้ างข้ อมูล (Data Structure)
3. ฟิ ลด์ (Field)
คือ ฟิ ลด์คือการนาอักขระหรื อไบต์ตงแต่
ั ้ 1 ไบต์ขึ ้นไปมา
รวมกันเพื่อก่อให้ เกิดความหมายขึ ้นมา เช่น ฟิ ลด์ name
ฟิ ลด์ address ใช้ เก็บที่อยูพ่ นักงาน
โครงสร้ างข้ อมูล (Data Structure)
4. เรคอร์ ด (Record) คือ กลุ่มฟิ ลด์ที่มีความสัม พันธ์ กัน
ใน 1 เรคอร์ ดจะประกอบไปด้ วยฟิ ลด์ต่าง ๆ ที่เกี่ย วข้ องกัน
เป็ นชุด ตัว อย่า งเช่น เรคอร์ ดพนักงาน ประกอบไปด้ วย
ฟิ ลด์ รหัส พนัก งาน ชื่ อ นามสกุล ที่ อ ยู่ เบอร์ โทรศัพ ท์
ตาแหน่ง เพศ วันกิด เงินเดือน ดังนันภายใน
้
1 เรคอร์ ดจึง
จาเป็ นต้ องมีอย่างน้ อย 1 ฟิ ลด์เพื่อให้ สาหรั บอ้ างอิงข้ อมูล
ในเรคอร์ ดนัน้ ๆ
โครงสร้ างข้ อมูล (Data Structure)
5. แฟ้มข้ อมูล (File) ไฟล์ คือกลุ่มของเรคอร์ ดที่สัมพันธ์
กั น ตั ว อย่ า งเช่ น ในแฟ้ มพนั ก งานจะประกอบไป
ด้ วยเรคอร์ ดต่ าง ๆ ของพนั กงานทัง้ หมดที่มีอ ยู่ ใ น
บริษัท ดังนัน้ จึงจาเป็ นที่ต้องมีอย่ างน้ อย 1 เรคอร์ ด
เพื่อใช้ สาหรั บการอ่ านข้ อมูลขึน้ มาใช้ งาน
โครงสร้ างข้ อมูล (Data Structure)
ชนิดของข้ อมูล (Type of Data)
• ข้ อความ (Text) เป็ นข้ อมูลที่ประกอบไปด้ วยอักขระต่างๆ ที่นามา
รวมกันโดยไม่มีรูปที่ชดั เจนแน่นอน ข้ อมูลชนิดนี ้จะมีความหมายโดยไม่
จาเป็ นต้ องนามาตีความหมายอีก เช่น ชื่อและสกุลของพนักงาน ที่อยู่
ของพนักงาน
• ข้ อมูลที่ถูกกาหนดเป็ นรูปแบบ (Formatted Data) โดยจะเป็ นข้ อมูล
ที่ประกอบด้ วยอักขระต่าง ๆ ที่มีรูปแบบแน่นอนตามที่กาหนดไว้ ซึง่ ปกติ
จะถูกกาหนดให้ อยูร่ ูปของรหัส ทาให้ ไม่สิ ้นเปลืองเนื ้อที่ในการเก็บ
รวมถึงสะดวกต่อการนาไปใช้ อ้างอิง
ชนิดของข้ อมูล (Type of Data)
• รูปภาพ (Image) ด้ วยเทคโนโลยีอปุ กรณ์เครื่ องมือต่าง ๆ ทาให้ นา
รูปภาพมาใช้ แทนข้ อมูลด้ วยการนามาใช้ ร่วมกับข้ อความต่างๆ ให้ มี
ความสมบูรณ์ เช่น ข้ อมูลประวัตพิ นักงาน ข้ อมูลสินค้ า
• แม้ วา่ รูปภาพต้ องใช้ เนื ้อที่ในการจัดเก็บมากว่าข้ อมูลชนิดข้ อความ แต่
ด้ วยสื่อในการเก็บในปั จจุบนั ทาให้ รูปภาพไม่เป็ นปั ญหาในการเก็บ ทังนี
้ ้
สามารถเลือกฟอร์ แมตรูปภาพตามความเหมาะสมของงาน
• ข้ อมูลชนิดเสียง (Audio/Sound) เป็ นไฟล์ข้อมูลชนิดหนึง่ ที่ใช้ จดั เก็บ
เสียงแบบดิจิตอล เช่น เสียงพูดของมนุษย์
ชนิดของแฟ้มข้ อมูล
•
•
•
•
•
•
แฟ้มข้ อมูลหลัก (Master File)
แฟ้มรายการ (Transaction File)
แฟ้มเอกสาร (Document File)
แฟ้มประวัติ (Archival File)
แฟ้มตารางอ้ างอิง (Table Look-up File)
แฟ้มเพื่อการตรวจสอบ (Audit File)
ประเภทของแฟ้ มข้ อมูล
• แฟ้มข้ อมูลหลัก (Master File) เป็ นแฟ้มข้ อมูลที่ใช้ สาหรับการ
จัดเก็บข้ อมูลที่ค่อนข้ างคงที่ โดยเมื่อมีการบันทึ กรายการข้ อมูล
เพิ่มเข้ าไปในแฟ้มข้ อมูลหลักแล้ ว รายการดังกล่าวก็ยั งคงอยู่ใน
ระบบตลอดระยะเวลาที่ใช้ งาน ตัวอย่างเช่น แฟ้มข้ อมูลสมาชิก
แฟ้มข้ อมูลนักศึกษา แฟ้มข้ อมูลผลิตภัณฑ์ สาหรับ การปรับปรุ ง
แก้ ไขแฟ้มข้ อมูลหลัก ทาได้ โดย
– การเพิ่ม (Add)
– การลบ (Delete)
– การปรับปรุ ง (Modify)
ประเภทของแฟ้มข้ อมูล
• แฟ้มรายการเปลี่ยนแปลง (Transaction File) เป็ น
แฟ้มข้ อมูลที่ใช้ จดั เก็บรายการข้ อมูลประจาวันที่มีการ
เคลื่อนไหวอยู่เสมอ เช่น แฟ้มการลงทะเบียนเรี ยน
แฟ้มรายการฝากถอนเงิน แฟ้มการซื ้อขายสินค้ า
ประจาวัน
ประเภทของแฟ้มข้ อมูล
• แฟ้มเอกสาร (Document File) จัดเป็ นไฟล์เอกสารหรื อไฟล์
รายงานที่เคยผ่านการประมวลผลมาแล้ ว เช่น การสัง่ ประมวลผล
โปรแกรม และกาหนดให้ พิมพ์รายงานลงในไฟล์ เพื่อจัดเก็บลง
คอมพิวเตอร์ แทนที่จะสัง่ ประมวลผลผ่านเครื่ องพิมพ์โดยตรง เมื่อมี
การเรี ยกไฟล์รายงานดังกล่าวขึ ้นมาใช้ งานหรื อสัง่ พิมพ์รายงาน
สามารถทางานได้ ทนั ทีโดยไม่ต้องประมวลผลอีก เช่น การสัง่ พิมพ์
ใบแจ้ งเกรดนักศึกษา
ประเภทของแฟ้มข้ อมูล
• แฟ้มรายการเปลี่ยนแปลง (Transaction File) เป็ น
แฟ้มข้ อมูลที่ใช้ จดั เก็บรายการข้ อมูลประจาวันที่มีการ
เคลื่อนไหวอยู่เสมอ เช่น แฟ้มการลงทะเบียนเรี ยน
แฟ้มรายการฝากถอนเงิน แฟ้มการซื ้อขายสินค้ า
ประจาวัน
ประเภทของแฟ้มข้ อมูล
• แฟ้มประวัติ (Archival File)
• เป็ นแฟ้มข้ อมูลที่บรรจุไปด้ วยแฟ้มข้ อมูลหลักและแฟ้ม
รายการเปลี่ยนแปลง ที่ถกู เคลื่อนย้ ายจากสื่ออุปกรณ์
ออนไลน์ เพื่อนาไปเก็บไว้ ในสื่อ offline เพื่อใช้ สาหรับการ
อ้ างอิงหรื อตรวจสอบข้ อมูล เราอาจเรี ยกแฟ้มประวัติวา่
Historical File
ประเภทของแฟ้ มข้ อมูล
• แฟ้มตารางอ้ างอิง (Table Look-up File)
• เป็ นไฟล์หรื อตารางที่ใช้ ในการอ้ างอิงข้ อมูล ข้ อมูลที่
จัดเก็บลงในแฟ้มตารางค่อนข้ างคงที่หรื อไม่มีคอ่ ยมีการ
เปลี่ยนแปลงใด เช่น ตารางภาษี ตารางรหัสไปรษณีย์
ประเภทของแฟ้มข้ อมูล
• แฟ้มเพื่อการตรวจสอบ (Audit File)
• จัดเป็ นแฟ้มพิเศษชนิดหนึง่ ที่ใช้ เก็บประวัตกิ ารบันทึกเร
คอร์ ดต่าง ๆ ที่ถกู อับเดตลงไปในไฟล์ โดยเฉพาะอย่างยิ่ง
แฟ้มข้ อมูลหลักกับแฟ้มรายการเปลี่ยนแปลง เพือ่
สามารถนาไปใช้ ก้ คู ืนข้ อมูลในกรณีที่ระบบเกิดความ
เสียหาย เราเรี ยกแฟ้มตรวจสอบนี ้ว่า Log file
การจัดการโครงสร้างแฟ้ มข้อมูล
• การจัดการโครงสร้างของแฟ้ มข้อมูลเป็ นเทคนิคด้านกายภาพ ทีใ่ ช้
สาหรับการจัดการกับเรคอร์ดของไฟล์ลงบนอุปกรณ์สื่อจัดเก็บข้อมูล
• ซึ่งระบบแฟ้ มข้อมูล โปรแกรมเมอร์จาเป็ นต้องจัดโครงสร้างแฟ้ มข้อมูล
ที่ใช้งานว่าต้องการสร้างไฟล์เพื่อจัดเก็บข้อมูลในรู ปแบบใด เมื่อมีการ
จัดการกับข้อมูลในแต่ละไฟล์ เช่น การเรี ยกดูขอ้ มูล การอัปเดตข้อมูล ก็
จะต้องเลือกโครงสร้างให้ตรงกับไฟล์ที่สร้างขึ้นด้วย
• ในระบบฐานข้อมูล ตัวโปรแกรมระบบจัดการฐานข้อมูลยุคใหม่
โปรแกรมเมอร์อาจไม่จาเป็ นต้องเข้าไปจัดการโครงสร้างแฟ้ มข้อมูลแต่
อย่างใด ปล่อยให้ DBMS จัดการแทน
วัตถุประสงค์ของการจัดการโครงสร้างแฟ้ มข้อมูล
•
•
•
•
•
•
เพื่อให้การดึงข้อมูลมีความรวดเร็ วขึ้น
เพื่อให้การประมวลผลข้อมูลมีอตั รา Throughput ที่ดี
เพื่อให้การใช้งานอุปกรณ์จดั เก็บข้อมูลได้อย่างมีประสิ ทธิภาพ
ป้ องกันความเสี ยหายและการสูญเสี ยข้อมูล
เพื่อรองรับอัตราการเติบโตของข้อมูลที่เพิ่มขึ้น
เพื่อความปลอดภัยของผูใ้ ช้ที่ไม่มีสิทธิ์ใช้งาน
รู ปแบบการจัดโครงสร้างแฟ้ มข้อมูล
• โครงสร้ างแฟ้มข้ อมูลแบบเรี ยงลาดับ (Sequential File
Organization)
• โครงสร้ างแฟ้มข้ อมูลแบบเข้ าถึงโดยตรง (Direct File
Organization)
• โครงสร้ างแฟ้มข้ อมูลแบบเรี ยงลาดับดัชนี (Index
Sequential File Organization)
รู ปแบบการจัดโครงสร้างแฟ้ มข้อมูล
1. โครงสร้ างแฟ้ มข้ อมูลแบบเรียงลาดับ ( Sequential File
Organization)
ข้อมูลแต่ละ record จะถูกจัดเก็บเป็ นลาดับตาม field ที่ใช้
จัดเรี ยง ถ้า filed ทีใช้จดั เรี ยงเป็ น คียห์ ลัก (Primary Key)
จะเรี ยกว่า Ordering Key การค้นหาข้อมูลจะเรี ยง
ตามลาดับของ record
รู ปแบบการจัดโครงสร้างแฟ้ มข้อมูล
2. โครงสร้ างแฟ้มข้ อมูลแบบเข้ าถึงโดยตรง (Direct File
Organization)
เป็ นโครงสร้ างแฟ้มข้ อมูลที่สามารถเข้ าถึงข้ อมูลได้ ทนั ที ด้ วย
การกาหนดคีย์ฟิลด์ที่ใช้ ระบุตาแหน่งข้ อมูลมาผ่านฟั งก์ชนั แฮช
ซึง่ ฟั งก์ชนั แฮชก็คือฟั งก์ชนั ที่ใช้ แปลงคีย์ให้ เป็ นตาแหน่ง
แอดเดรส โดยเมื่อได้ ตาแหน่งแอดเดรสแล้ ว ก็จะนาแอดเดรสนี ้
ไปชี ้ตาแหน่งข้ อมูลในหน่วยความจาเพื่อนาข้ อมูลมาใช้ ทนั ที
(a) โครงสร้ างแบบ Sequential
(b) โครงสร้ างแบบ Hash
รู ปแบบการจัดโครงสร้างแฟ้ มข้อมูล
3. โครงสร้ างแฟ้มข้ อมูลแบบเรี ยงลาดับดัชนี
(Index
Sequential File Organization)
• เป็ นการเก็บข้อมูลแต่ละ record แบบเรี ยงตามลาดับหรื อไม่เรี ยงก็
ได้ โดยแฟ้ มแบบดัชนี ประกอบด้วย ค่าของfield ที่ใช้เป็ นดัชนีและ
ตาแหน่งของ record ในแฟ้ มข้อมูล การค้นหาหรื อเรี ยกใช้ขอ้ มูล
จะทาผ่านแฟ้ มดัชนี ทาให้การเรี ยกใช้ขอ้ มูลรวดเร็ ว
โครงสร้ างแบบ Indexed Sequentail
ระบบแฟ้ มข้ อมูล ( File System)
• วิธีการจัดเก็บด้ วยคอมพิวเตอร์ นนจะเป็
ั้
นไฟล์ข้อมูล แต่ละแผนกต่างก็มีโปรแกรมที่จดั ทา
ขึ ้นเพื่อใช้ งานกับแฟ้มข้ อมูลเฉพาะส่วนงานของตน
Personal Department
Employee
Customers
Sales Department
Sales
Salesman
Duplicate data (salesman is an employee)
Accounting Department
Inventory
Accounts
ตัวอย่ างแฟ้ มพนักงานและแฟ้ มพนักงานขาย
ระบบแฟ้มข้ อมูล ( File System)
การจัดเก็บแฟ้มข้ อมูลจะถูกจัดเก็บลงในคอมพิวเตอร์ เป็ นอิสระ โดยจะสร้ างระบบ
แฟ้มข้ อมูลภายในหน่วยงานของตนเอง ทาให้ เกิดข้ อจากัดหรื อปั ญหา ดังนี ้
1. ข้ อมูลมีการเก็บแยกจากกัน (Separation and Isolation of Data) ในแต่ละ
หน่วยงาน ทาให้ เป็ นการยากในการเข้ าถีงข้ อมูลได้ โดยตรง
2. ข้ อมูลมีความซา้ ซ้ อน (Data Redundancy)
ทาให้ เสียค่าใช้ จ่ายในการจัดเก็บข้ อมูลและเสียเนื ้อที่ในการเก็บข้ อมูล
ปั ญหา
ความซ ้าซ้ อนของข้ อมูลชุดเดียวกันที่มีการเก็บอยูห่ ลายแฟ้มทาให้ เกิดความผิดพลาดใน
ข้ อมูล (Data Anomaly) 3 ลักษณะ ดังนี ้
2.1 ข้ อผิดพลาดจากการเพิ่มข้ อมูล (Insert Anomaly) เป็ นการเพิ่มข้ อมูลให้ กบั
แฟ้มข้ อมูลต่างๆที่สมั พันธ์กนั ไม่ครบถ้ วน เช่น เพิ่มข้ อมูลพนักงานขายใหม่ ชื่อ นายองอาจ
เฉพาะแฟ้มข้ อมูลพนักงานขาย โดยไม่ได้ เพิ่มข้ อมูลในแฟ้มพนักงาน
ตัวอย่ างความขัดแย้ งของการเพิ่มข้ อมูล
2.2 ข้ อผิดพลาดจากการลบข้ อมูล (Deletion Anomaly ) เช่น
พนักงานชื่อ นายพิชยั ลาออก ทางแผนกบุคคลได้ ลบชื่อออกจากแฟ้มพนักงาน แต่
ข้ อมูลของนายพิชยั ยังคงอยูใ่ นแฟ้มพนักงานขาย ซึง่ ไม่ถกู ต้ อง
ตัวอย่ างความขัดแย้ งของการลบข้ อมูล
2.3 ข้ อผิดพลาดจากการเปลี่ยนแปลงข้ อมูล (Modification
Anomaly) เช่น กรณี น.ส นงนุช เปลี่ยนชื่อเป็ น น.ส.ณิชกานต์ ได้ มีการเปลี่ยน
ชื่อเฉพาะในแฟ้มข้ อมูลพนักงาน ทาให้ ข้อมูลไม่มีความถูกต้ องตรงกัน
ตัวอย่ างความขัดแย้ งของการเปลี่ยนแปลงข้ อมูล
ระบบแฟ้มข้ อมูล ( File System)
3. ข้ อมูลมีความขึน้ ต่ อกัน (Data Dependence) ระหว่างโปรแกรมกับ
โครงสร้ างแฟ้มข้ อมูล การเปลี่ยนแปลงโครงสร้ างแฟ้มข้ อมูล ทาให้ ต้องแก้ ไขโปรแกรมที่
เกี่ยวข้ องทังหมด
้
เช่น เปลี่ยน ความกว้ างของเงินเดือนจาก 5 หลัก เป็ น 6 หลัก
โดยมีวิธีการดังนี ้
- เปิ ดไฟล์ Employee
- สร้ างไฟล์ชวั่ คราวใหม่ขึ ้นมาคือ New_Emp โดยมีโครงสร้ างเหมือนไฟล์หลักแต่
เปลี่ยนฟิ ดล์เงินเดือน จาก 5 หลักเป็ น 6 หลัก
- อ่านข้ อมูล Employee ทีละเรคอร์ ด โอนย้ ายไฟล์ที่อา่ นมานันไปเก็
้
บบันทึกไว้ ที่
New_Emp จนกระทัง่ จบแฟ้ม
- เมื่อประมวลผลเสร็จลบไฟล์
- เปลี่ยนชื่อไฟล์ Employee มาเป็ น New_Emp ไฟล์ ดังนี ้ก็จะได้ ไฟล์พนักงานที่ได้
ปรับโครงสร้ างใหม่เรี ยบร้ อย
ระบบแฟ้มข้ อมูล ( File System)
4. มีรูปแบบที่ไม่ ตรงกัน (Incompatible File Formats)
เนื่องจาก
แฟ้มข้ อมูลถูกสร้ างด้ วยโปรแกรมที่ใช้ ภาษาที่ตา่ งกัน ทาให้ โครงสร้ างข้ อมูล
ต่างกัน และเป็ นการยากในการนาแฟ้มขัอมูลทังสองมาประมวลผลร่
้
วมกัน
ระบบแฟ้มข้ อมูล ( File System)
5. รายงานต่ างๆถูกกาหนดไว้ อย่ างจากัด
รูปแบบของรายงานต่างๆถูกกาหนดรูปแบบที่แน่นอนลงในโปรแกรม ถ้ า
ต้ องการรายงานใหม่ ต้ องเขียนโปรแกรมเพิ่ม
ระบบฐานข้ อมูล (Database System)
- เป็ นศูนย์รวมของข้ อมูลที่มีความสัมพันธ์กนั
- มีกระบวนการจัดหมวดหมูข่ ้ อมูลที่มีแบบแผน
- เป็ นแหล่งรวมของข้ อมูลจากแผนกต่างๆ ภายใต้ ฐานข้ อมูล
ชุดเดียวกัน
- ผู้ใช้ งานในแต่ละแผนกสามารถใช้ ข้อมูลส่วนกลางร่วมกันได้
ทาให้ ข้อมูลไม่ซ ้าซ้ อน
ระบบฐานข้ อมูล (Database System)
Personal Department
Sales Department
Accounting
Department
DBMS
Database
Employees
Customers
Sales
Inventory
Accounts
ระบบการจัดการฐานข้ อมูล
(Database Management System )
DBMS คือ โปรแกรมที่ใช้ เป็ นเครื่ องมือในการจัดการฐานข้ อมูล ทา
หน้ าที่เป็ นตัวกลางในการติดต่อระหว่างผู้ใช้ กบั ฐานข้ อมูล เพื่อจัดการและ
ควบคุมความถูกต้ อง ความซ ้าซ้ อน และความสัมพันธ์ระหว่างข้ อมูลต่างๆใน
ฐานข้ อมูล DBMS ใช้ ภาษา SQL ในการโต้ ตอบกับผู้ใช้ เพื่อให้ สามารถทาการ
สร้ าง เรี ยกดู บารุงรักษา และจัดการควบคุมการเข้ าถึงฐานข้ อมูล
ภาษา SQL (Structured Query Language)
– เป็ นภาษาที่มีรูปแบบเป็ นภาษาอังกฤษ ง่ายต่อการเรี ยนรู้ และเขียน
โปรแกรม
– มีความสามารถในการนิยามโครงสร้ างตารางภายในฐานข้ อมูล
การจัดการข้ อมูล และควบคุมสิทธิการใช้ งานฐานข้ อมูล
– ประกอบด้ วยภาษา 3 รูปแบบ
1. ภาษาสาหรับนิยามข้ อมูล (Data Definition Language :DDL)
2. ภาษาสาหรับจัดการฐานข้ อมูล (Data Manipulation Language
: DML)
3. ภาษาควบคุม (Control Language : CL)
ภาษา SQL (Structured Query Language)
1. ภาษาสาหรั บนิยามข้ อมูล (Data Definition Language :DDL)
– เป็ นภาษาที่ใช้ ในการนิยามโครงสร้ างของฐานข้ อมูล (Schema)
เพื่อทาการสร้ าง เปลี่ยนแปลง หรื อยกเลิกโครงสร้ างของฐานข้ อมูล
ที่ได้ ออกแบบไว้
– โครงสร้ างของฐานข้ อมูล (Schema) ได้ แก่ การกาหนดชื่อ
ฐานข้ อมูล ตาราง (table) ที่มีในฐานข้ อมูล แต่ละตารางมีเขต
ข้ อมูล (field)ใดบ้ าง และมีประเภทข้ อมูลเป็ นอะไร ขนาดเท่าใด
เขตข้ อมูลใดที่เป็ นคีย์หลัก
– ตัวอย่างภาษา DDL เช่น คาสัง่ CREATE, ALTER, DROP
ภาษา SQL (Structured Query Language)
2. ภาษาสาหรับจัดการฐานข้ อมูล (Data Manipulation Language :
DML)
– เป็ นภาษาที่ใช้ ในการจัดการข้ อมูลภายในตารางของฐานข้ อมูล
– ตัวอย่างภาษา DML เช่น คาสัง่ SELECT, INSERT, UPDATE,
DELETE
3. ภาษาควบคุม (Control Language : CL)
– เป็ นภาษาที่ใช้ ควบคุมระบบรักษาความปลอดภัยของฐานข้ อมูล
– ตัวอย่างเช่น คาสัง่ GRANT, REVOKE
DBMS จะจัดการการโต้ ตอบระหว่ างผู้ใช้ งานกับฐานข้ อมูล
ส่ วนประกอบของระบบฐานข้ อมูล
1. Hardware คือ อุปกรณ์คอมพิวเตอร์ ที่จะนามาใช้ งาน
2. Software หมายถึง ระบบปฏิบตั ิการ, ซอฟต์แวร์ การจัดการฐานข้ อมูล
(DBMS), Application Program และ Utility Program
3. Data คือ ข้ อมูลที่เก็บอยูใ่ นฐานข้ อมูล และคาอธิบายข้ อมูล (Metadata)ซึง่ เป็ นข้ อมูลที่อธิบายคุณลักษณะของข้ อมูล เช่น โครงสร้ างของข้ อมูล
4. Procedure คือ ขันตอนการปฏิ
้
บตั ิงาน ผู้ใช้ จะจัดการกับฐานข้ อมูล
ตามขันตอนการปฏิ
้
บตั ิงานที่กาหนดไว้ ตามคูม่ ือ
5. People คือ บุคลากรที่มีหน้ าที่ในการจัดการฐานข้ อมูล เช่น ผู้บริหาร
ข้ อมูลและฐานข้ อมูล (Data and Database Administrators), นักออกแบบ
ฐานข้ อมูล(Database Designers), นักเขียนโปรแกรม(Application
Programmers) และผู้ใช้ งาน (End Users)
บุคลากร ( People)
บุคลากรที่เกี่ยวข้ องกับฐานข้ อมูล จาแนกได้ เป็ น 3 ประเภทใหญ่ๆ ดังนี ้
1. ผู้บริหารและดูแลฐานข้ อมูล (Database Administrators
หรื อ DBA) มีหน้ าที่
- จัดการฐานข้ อมูล ได้ แก่ ออกแบบและสร้ างฐานข้ อมูล บารุงรักษา
ฐานข้ อมูล ออกแบบโปรแกรมประยุกต์ในการจัดการกับข้ อมูล
ติดตามแก้ ปัญหา DBMS
- ควบคุมระบบรักษาความปลอดภัย เช่น กาหนดสิทธิในการใช้ งาน
- วางแผนป้องกันความเสียหาย ควบคุมการทา backup
บุคลากร ( People)
2. นักออกแบบฐานข้ อมูล (Database Design)
2.1 นักออกแบบข้ อมูลระดับตรรกะ (Logical Database Design)
เป็ นผู้ออกแบบในระดับแนวคิดหรื อระดับตรรกะ โดยมีหน้ าที่กาหนด
ข้ อมูล เช่น Entity Attribute และความสัมพันธ์ระหว่างข้ อมูล การ
กาหนดข้ อบังคับเพื่อให้ ข้อมูลถูกต้ องตามเงื่อนไข
เช่น ห้ างสรรพสินค้ ามีกฎว่าห้ ามพนักงานซื ้อสินค้ ารายการพิเศษ
นอกจากลูกค้ า ถ้ ามีการบันทึกซื ้อสินค้ าของพนักงานในฐานข้ อมูลแสดง
ว่ามีข้อผิดพลาดเกิดขึ ้น
2.2 นักออกแบบข้ อมูลระดับกายภาพ (Physical Database
Design)
เป็ นบุคคลที่มีหน้ าที่นาแบบจาลองข้ อมูลที่สร้ างขึน้ จากระดับ
ตรรกะมาดาเนินการต่ อไปว่ าจะต้ องทาอย่ างไรเพื่อให้ ระบบ
เกิดผลตามรูปแบบกายภาพ ซึ่งประกอบด้ วย
- การแปลงรูปแบบตรรกะให้ เป็ นตารางต่ าง ๆ ในฐานข้ อมูล การ
กาหนดความคงสภาพ
- คัดเลือกอุปกรณ์ จัดเก็บข้ อมูลและคัดเลือกการเข้ าถึงข้ อมูลที่
เหมาะสม
- การออกแบบระบบความปลอดภัยให้ ข้อมูล
บุคลากร ( People)
3.นักเขียนโปรแกรมประยุกต์ (Application Programmers) มีหน้ าที่
เขียนโปรแกรมประยุกต์เพื่อจัดการกับข้ อมูลภายในฐานข้ อมูล ตามที่
DBA ได้ ออกแบบไว้
4. ผู้ใช้ งาน (End-Users) คือ ผู้ใช้ งานโปรแกรมซึง่ ได้ พฒ
ั นาแล้ ว มี 2 แบบ
คือ
4.1 ผู้ใช้ งานทัว่ ไป ที่ไม่มีความรู้เกี่ยวกับ DBMS จะปฏิบตั ิงาน
ผ่านเมนูที่กาหนดในการเรี ยกดูข้อมูลหรื อการพิมพ์รายงานต่างๆ
4.2 ผู้ใช้ งานที่มีความรู้ เป็ นผู้ใช้ งานที่มีความรู้ เกี่ยวกับฐานข้ อมูล
สามารถใช้ ชดุ คาสัง่ SQL ในการปฏิบตั ิงานกับข้ อมูล
ส่ วนประกอบของระบบฐานข้ อมูล
ข้ อดีของฐานข้ อมูล
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)
ข้ อเสียของฐานข้ อมูล
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)
คาศัพท์ ทใี่ ช้ ในฐานข้ อมูล
• Entity เป็ นคานาม หมายถึง สิง่ ต่างๆหรื อ เรื่ องต่างๆที่เกี่ยวข้ อง เมื่อมี
การออกแบบระบบฐานข้ อมูล (อาจเป็ นรูปธรรม หรื อ นามธรรมก็ได้ )
เช่น บุคคล สถานที่ การลงทะเบียน การสัง่ ซื ้อ
เปรี ยบเทียบเท่ากับ แฟ้ม (file) ในระบบแฟ้มข้ อมูล
• Attribute เป็ นข้ อมูลที่แสดงถึงคุณสมบัติของ Entity เช่น Entity
รายวิชา ประกอบด้ วย Attribute รหัสวิชา, ชื่อวิชา, จานวนหน่วยกิต
เปรี ยบเทียบเท่ากับ เขตข้ อมูล (field) ในระบบแฟ้มข้ อมูล
แบบฝึ กหัด
1. จงอธิบายว่าโครงสร้ างแฟ้มข้ อมูลประกอบด้ วยอะไรบ้ าง
2. จงอธิบายว่าชนิดของข้ อมูลมีอะไรบ้ าง
3. จงอธิบายว่าประเภทของแฟ้มข้ อมูลมีกี่ประเภท อะไรบ้ าง
4. เหตุผลสาคัญใดที่จาเป็ นต้ องมีการจัดโครงสร้ างแฟ้มข้ อมูล
5. จงบอกลักษณะการทางานของระบบแฟ้มข้ อมูล พร้ อมข้ อดีและข้ อเสีย
6. จงบอกลักษณะการทางานของระบบฐานข้ อมูล พร้ อมข้ อดีและข้ อเสีย
7.ระบบการจัดการฐานข้ อมูล(DBMS) คือ อะไร มีสว่ นสาคัญต่อฐานข้ อมูลอย่างไร และมีหน้ าที่อะไรบ้ าง
8. ส่วนประกอบของระบบฐานข้ อมูลมีอะไรบ้ าง จงอธิบาย
9. ภาษา SQL คือ อะไร ประกอบด้ วยอะไรบ้ าง
10. จงอธิบายความหมายของคาว่า Entity , Attribute และ ความสัมพันธ์ระหว่าง Entity