หน่วยการเีรียนรู้ที่ 2 เรื่อง ฐานข้อมูล (Database)
จุดประสงค์
1. นักเรียนเข้าใจความหมายของฐานข้อมูล
2. นักเรียนเข้าใจโครงสร้างของฐานข้อมูล
3. นักเรียนมองเห็นประโยชน์ของฐานข้อมูล
 

ฐานข้อมูล (Database)

แฟ้มข้อมูล (Data File) เป็นเครื่องมือที่ใช้รวบรวมข้อมูลชนิดเดียวกันไว้เป็นหมวดหมู่ เช่นแฟ้มหนังสือคำสั่ง แฟ้มข้อมูลลูกค้า ทะเบียนนักศึกษา เป็นต้น แฟ้มข้อมูลเหล่านี้อาจจัดเก็บในรูปแบบของเอกสารทั่วไป หรือเก็บบันทึกเป็นแฟ้มไว้ในคอมพิวเตอร์ เรียกว่า ระบบแฟ้มข้อมูลคอมพิวเตอร์ (Computer Filing system) ระบบนี้จะช่วยให้สามารถค้นหาข้อมูลได้อย่างรวดเร็ว ตลอดจนสามารถแก้ไขปรับปรุงข้อมูลได้ตลอดเวลา แต่ระบบนี้มีข้อบกพร่องที่เป็นเฉพาะของแต่ละงาน มีการเก็บข้อมูลที่ซ้ำซ้อน เช่น งานปกครองเก็บชื่อนักเรียน งานห้องสมุดก็เก็บชื่อนักเรียน เมื่อแจ้งแก้ไขชื่อที่งานปกครองแต่ชื่อที่งานห้องสมุดจะไม่ถูกแก้ไข

ฐานข้อมูล คือที่เก็บข้อมูลและความสัมพันธ์ระหว่างข้อมูล
ซึ่งข้อมูลและความสัมพันธ์ระหว่างข้อมูลนั้นจะนำเสนอให้ผู้ใช้เห็นโดยใช้สิ่งที่เรียกว่า ฐานข้อมูล (data model)

ฐานข้อมูลเป็นที่รวมของแฟ้มข้อมูลที่ใช้งานในหน่วยงาน เช่น ฐานข้อมูลของนักเรียนในโรงเรียนประกอบด้วย แฟ้มข้อมูลประวัตินักเรียน แฟ้มข้อมูลรายวิชาและผลการเรียน แฟ้มข้อมูลการชำระเงิน แฟ้มข้อมูลประวัติสุขภาพ แฟ้มบันทึกความประพฤติของนักเรียน เป็นต้น แฟ้มข้อมูลแต่ละแฟ้มจะจัดเก็บข้อมูลอย่างมีรูปแบบมีโครงสร้าง ซึ่งรูปแบบของฐานข้อมูลที่นิยมใช้มากที่สุดในปัจจุบัน คือ ฐานข้อมูลเชิงสัมพันธ์ (Relational Database) สามารถใช้กับเครื่องคอมพิวเตอร์ทุกระดับโดย ระเบียน (Record) ข้อมูลจะถูกเก็บเป็นตาราง (Table) ในตารางแต่ละแถวแบ่งออกเป็นคอลัมน์ (Column) หรือสดมภ์ แต่ละสดมภ์เป็นหนึ่งเขตข้อมูล (Field) หนึ่งแถวของตารางเป็นระเบียนข้อมูลหนึ่งระเบียน (Record) ตารางข้อมูลแต่ละตารางเป็นแฟ้มข้อมูลหนึ่งแฟ้ม

 
 
คุณสมบัติหลักของฐานข้อมูล

1 โครงสร้างข้อมูล (data structures) คือโครงสร้างข้อมูลระดับตรรกะที่โปรแกรมประยุกต์เห็น เป็นการบอกว่าฐานข้อมูลนั้นๆ มีโครงสร้างข้อมูลเป็นอย่างไร

2 กฎควบคุมความถูกต้อง (integrity constraint) เป็นการบอกว่าโครงสร้างข้อมูลนั้นมีกฎบังคับความถูกต้องอย่างไร

3 ภาษาจัดการข้อมูล (data manipulation language) เป็นการบอกว่ามีภาษาจัดการข้อมูลบนโครงสร้างข้อมูลเป็นอย่างไร


ระบบฐานข้อมูล (DBMS:Database Management System)
ระบบฐานข้อมูล เป็นระบบที่ใช้เก็บรวบรวมข้อมูลที่มีความสัมพันธ์กันไว้เป็นกลุ่มเดียวกัน ทำหน้าที่เป็นสื่อกลางระหว่างผู้ใช้และข้อมูล ผู้ใช้สามารถเข้าถึงระบบฐานข้อมูลได้หลายวิธี ทั้งจากการใช้คำสั่งโดยตรง การใช้โปรแกรมประยุกต์อื่น ๆ เชื่อมโยงกับฐานข้อมูล ระบบฐานข้อมูลที่สามารถเชื่อมโยงกับฐานข้อมูลอื่น ๆ ได้เรียกว่า RDBMS (Relation Data Base Management System)

ข้อดีของระบบฐานข้อมูล
1. ผู้ใช้หลายฝ่ายสามาถใช้ข้อมูลร่วมกันได้ เนื่องจากระบบฐานข้อมูลจะเก็บข้อมูลทั้งหมดไว้ในที่เดียวกัน
2. ลดความซ้ำซ้อนของข้อมูล เมื่อมีการแก้ไขข้อมูล จะแก้ไขข้อมูลในฐานข้อมูลหลักเพียงแห่งเดียว
3. ความสมบูรณ์ของข้อมูล เนื่องจากไม่มีความซ้ำซ้อนกันทำให้ฐานข้อมูลคงภาพของความถูกต้องและเชื่อถือได้อยู่เสมอ สามารถกำหนดชนิดของข้อมูลที่กรอกได้ว่าให้เป็นตัวเลขหรือตัวหนังสือข้อมูลก็จะมีความถูกต้องมากขึ้น
4. ความมั่นคงของฐานข้อมูล เนื่องจากระบบฐานข้อมูลแยกเป็นอิสระจากโปรแกรมประยุกต์ ทำให้สามารถใช้งานได้จากโปรแกรมหลายโปรแกรม
5. บำรุงรักษาง่าย เนื่องจากข้อมูลทั้งหมดถูกเก็บไว้ที่เดียวกัน

ข้อเสียของระบบฐานข้อมูล

1. ค่าใช้จ่ายสูง โปรแกรมฐานข้อมูลส่วนใหญ่จะมีราคาแพงเพราะเป็นโปรแกรมเฉพาะด้าน ต้องใช้เครื่องมือที่มีสมรรถนะสูง และต้องมีผู้ดูแลระบบที่มีความรู้ความสามารถสูงด้วย
2. ต้องมีระบบสำรองข้อมูลที่ดี เนื่องจากข้อมูลถูกเก็บไว้ในที่เดียว ดังนั้นถ้าเกิดความเสียหายกับอุปกรณ์จะทำให้ข้อมูลสูญหาย ต้องมีอุปกรณ์สำรองข้อมูลแยกส่วนไว้ต่างหาก

ในการศึกษาเกี่ยวกับการจัดการฐานข้อมูล มีศัพท์ต่าง ๆ ที่เกี่ยวข้องและจะต้องรู้ เพื่อให้สามารถเรียนรู้และเข้าใจในการจัดการฐานข้อมูล ดังนี้
1. Data (เดต้า) ข้อมูลที่เราสนใจ
2. Field (ฟิลด์) เขตข้อมูลซึ่งใช้เรียกแทนข้อมูล
3. Record (เรคคอร์ด) รายการละเีอียดของข้อมูลแต่ละแถว
4. Database (เดตาเบส) ฐานข้อมูลที่ประกอบด้วยข้อมูลหลายระเบียนในตารางหรือหลายตาราง
5. Attribute (แอททริบิวต์) เขตข้อมูล เช่นเดียวกับ Field
6. Table (เทเบิล) เป็นกลุ่มของข้อมูลซึ่งจัดเก็บไว้อย่างมีโครงสร้าง
7. Relation (รีเลชั่น) ความสัมพันธ์ที่เกิดขึ้นระหว่างข้อมูล หรือระหว่างตาราง
8. Entity (เอ็นทิติ) เช่นเดียวกับ Table

 
กิจกรรม ถาม-ตอบ โดยการสุ่มถาม
1.ให้นักเรียนบอกโครงสร้างของฐานข้อมูล
2.ให้นักเรียนศึกษาระบบฐานข้อมูลตัวอย่าง
3.ให้นักเรียนคิดระบบฐานข้อมูลที่เกี่ยวข้องกับชีวิตประจำวัน