ระบบฐานข้อมูล (Database System) หมายถึง การรวมตัวกันของฐานข้อมูลตั้งแต่ 2ฐานข้อมูลเป็นต้นไปที่มีความสัมพันธ์กัน โดยมีวัตถุประสงค์เพื่อเป็นการลดความซ้ำซ้อนของข้อมูล และทำให้การบำรุงรักษาตัวโปรแกรมง่ายมากขึ้น โดยผ่านระบบการจัดการฐานข้อมูล หรือ เรียกย่อ ๆ ว่า DBMS
องค์ประกอบของระบบฐานข้อมูล ระบบฐานข้อมูลเป็นเพียงวิธีคิดในการประมวลผลรูปแบบหนึ่งเท่านั้น แต่การใช้ฐานข้อมูลจะต้องประกอบไปด้วยองค์ประกอบหลักดังต่อไปนี้
- แอพลิเคชันฐานข้อมูล (Database Application)
- ระบบจัดการฐานข้อมูล (Database Management System หรือ DBMS)
- ดาต้าเบสเซิร์ฟเวอร์ (Database Server)
- ข้อมูล (Data)
- ผู้บริหารฐานข้อมูล ((Database Administrator หรือ DBA)
แอพพลิเคชันฐานข้อมูล เป็นแอพพลิเคชันที่สร้างไว้ให้ผู้ใช้งานสามารถติดต่อกับฐานข้อมูลได้อย่างสะดวก ซึ่งมีรูปแบบการติดต่อกับฐานข้อมูลแบบเมนูหรือกราฟฟิก โยผู้ใช้ไม่จำเป็นต้องมีความรู้เกี่ยวกับฐานข้อมูลเลยก็สามารถเรียกใช้งานฐานข้อมูลได้เช่น บริการเงินสด ATM
ระบบจัดการฐานข้อมูล
ระบบจัดการฐานข้อมูล หมายถึง กลุ่มโปรแกรมหรือซอฟต์แวร์ชนิดหนึ่ง ที่สร้างขึ้นมาเพื่อทำหน้าที่บริหารฐานข้อมูลโดยตรง ให้มีประสิทธิภาพมากที่สุด เป็นเครื่องมือที่ช่วยอำนวยความสะดวกให้ผู้ใช้สามารถเข้าถึงข้อมูลได้ โดยที่ผู้ใช้ไม่จำเป็นต้องรับรู้เกี่ยวกับรายละเอียดภายในโครงสร้างฐานข้อมูล พูดง่าย ๆ ก็คือ DBMS นี้เป็นตัวกลางในการเชื่อมโยงระหว่างผู้ใช้ และโปรแกรมต่างๆ ที่เกี่ยวข้องกับระบบฐานข้อมูล ตัวอย่างของ DBMS ที่นิยมใช้ในปัจจุบัน ได้แก่
Microsoft Access, FoxPro, SQL Server, Oracle, Informix, DB2 เป็นต้น
หน้าที่ของระบบจัดการฐานข้อมูล มีดังนี้
- กำหนดมาตรฐานข้อมูล
- ควบคุมการเข้าถึงข้อมูลแบบต่าง ๆ
- ดูแล-จัดเก็บข้อมูลให้มีความถูกต้องแม่นยำ
- จัดเรื่องการสำรอง และฟื้นสภาพแฟ้มข้อมูล
- จัดระเบียบแฟ้มทางกายภาพ (Physical Organization)
- รักษาความปลอดภัยของข้อมูลภายในฐานข้อมูล และป้องกันไม่ใช้ข้อมูลสูญหาย
- บำรุงรักษาฐานข้อมูลให้เป็นอิสระจากโปรแกรมแอพพลิเคชันอื่น ๆ
- เชื่อมโยงข้อมูลที่มีความสัมพันธ์เข้าด้วยกัน เพื่อรองรับความต้องการใช้ข้อมูลในระดับ
ต่าง ๆ
ดาต้าเบสเซิร์ฟเวอร์
เป็นคอมพิวเตอร์ที่คอยให้บริการการจัดการฐานข้อมูล ซึ่งก็คือเครื่องคอมพิวเตอร์ที่ระบบจัดการฐานข้อมูลทำงานอยู่นั่นเอง เพราะฉะนั้นควรเป็นคอมพิวเตอร์ที่มีความรวดเร็วในการทำงานสูงกว่าคอมพิวเตอร์ที่ใช้งานโดยทั่วไป
ข้อมูล
ข้อมูล คือ เนื้อหาของข้อมูลที่เราใช้งาน ซึ่งจะถูกเก็บในหน่วยความจำของดาต้าเบสเซิร์ฟเวอร์ โยจะถูกเรียกมาใช้งานจากระบบจัดการฐานข้อมูล
ผู้บริหารฐานข้อมูล
ผู้บริหารฐานข้อมูล คือ กลุ่มบุคคลที่ทำหน้าที่ดูแลข้อมูลผ่านระบบจัดการฐานข้อมูล ซึ่งจะควบคุมให้การทำงานเป็นไปอย่างราบรื่น นอกจากนี้ยังทำหน้าที่กำหนดสิทธิการใช้งานข้อมูล กำหนดในเรื่องความปลอดภัยของการใช้งาน พร้อมทั้งดูแลดาต้าเบสเซิร์ฟเวอร์ให้ทำงานอย่างปกติด้วย
รูปแบบฐานข้อมูล
ขอยกรูปแบบที่นิยมเท่านั้น ถ้าต้องการทราบสามารถดูได้จากหนังสือฐานข้อมูลทั่วไป
ฐานข้อมูลเชิงสัมพันธ์ (Relational Database) ฐานข้อมูลเชิงสัมพันธ์เป็นฐานข้อมูลที่นิยมนำมาใช้งานในปัจจุบันมากที่สุดฐานข้อมูลหนึ่ง โดยผู้ริเริ่มพัฒนาก็คือ อีเอฟ คอดด์ (E.F.Codd) และระบบจัดการฐานข้อมูลที่ใช้ฐานข้อมูลแบบนี้ ได้แก่ Microsoft Access, DB2 และ Oracle เป็นต้น ลักษณะโครงสร้างข้อมูลของฐานข้อมูลชนิดนี้ ข้อมูลถูกจัดเก็บในรูปแบบของคาราง (Table) ซึ่งภายในตารางก็จะแบ่งออกเป็นแถว (Row) และคอลัมน์ (Column) แต่ละตารางจะมีจำนวนแถวได้หลายแถว และจำนวนคอลัมน์ได้หลายคอลัมน์ แถวแต่ละแถวสามารถเรียกชื่อได้อีกอย่างว่า ระเบียนหรือเรคคอร์ด (Record) และคอลัมน์แต่ละคอลัมน์เรียกได้อีกชื่อหนึ่งว่า เขตข้อมูลหรือ ฟิลด์ (Field)
ฐานข้อมูลแบบเครือข่ายจะเป็นการรวมระเบียนต่าง ๆ และความสัมพันธ์ระหว่างระเบียนแต่จะต่างกับฐานข้อมูลเชิงสัมพันธ์ คือ ในฐานข้อมูลเชิงสัมพันธ์จะแฝงความสัมพันธ์เอาไว้ โดยระเบียนที่มีความสัมพันธ์กันจะต้องมีค่าของข้อมูลในแอททริบิวต์ใดแอททริบิวต์หนึ่งเหมือนกัน แต่ฐานข้อมูลแบบเครือข่ายจะแสดงความสัมพันธ์อย่างชัดเจน
ลักษณะโครงสร้างระบบฐานข้อมูลแบบเครือข่ายจะมีโครงสร้างของข้อมูลแต่ละแฟ้มข้อมูลมีความสัมพันธ์คล้ายร่างแห
ข้อดี
- ช่วยลดความซ้ำซ้อนของข้อมูลได้ทั้งหมด
- สามารถเชื่อมโยงข้อมูลแบบไป-กลับ ได้
- สะดวกในการค้นหามากกว่าลักษณะฐานข้อมูลแบบลำดับชั้น เพราะไม่ต้องไปเริ่มค้นหาตั้งแต่ข้อมูลต้นกำเนิดโดยทางเดียว และการค้นหาข้อมูลมีเงื่อนไขได้มากและกว้างกว่าโครงสร้างแบบลำดับชั้น
- ฐานข้อมูลแบบลำดับชั้น (Hierarchical Database)
ฐานข้อมูลแบบลำดับชั้น เป็นโครงสร้างที่จัดเก็บข้อมูลในลักษณะความสัมพันธ์แบบพ่อ-ลูก (Parent-Child Relationship Type : PCR Type) หรือเป็นโครงสร้างรูปแบบต้นไม้ (Tree) ข้อมูลที่จัดเก็บในที่นี้ คือ ระเบียน (Record) ซึ่งประกอบด้วยค่าของเขตข้อมูล (Field) ของเอนทิตี้หนึ่ง ๆ
คุณสมบัติของฐานข้อมูลแบบลำดับขั้น
- Record ที่อยู่ด้านบนของโครงสร้างหรือพ่อ(Parent Record) นั้นสามารถมีลูกได้มากกว่าหนึ่งคน แต่ลูก (Child Record) จะไม่สามารถมีพ่อได้มากกว่า 1 คนได้
- ทุก Record สามารถมีคุณสมบัติเป็น Parent Record (พ่อ) ได้
- ถ้า Record หนึ่งมีลูกมากกว่าหนึ่ง Record แล้ว การลำดับความสัมพันธ์ของ Child Record จะลำดับจากซ้ายไปขวา
ลักษณะเด่น
- เป็นระบบฐานข้อมูลที่มีระบบโครงสร้างซับซ้อนน้อยที่สุด
- มีค่าใช้จ่ายในการจัดสร้างฐานข้อมูลน้อย
- ลักษณะโครงสร้างเข้าใจง่าย
- เหมาะสำหรับงานที่ต้องการค้นหาข้อมูลแบบมีเงื่อนไขเป็นระดับและออกงานแบบเรียงลำดับต่อเนื่อง
- ป้องกันระบบความลับของข้อมูลได้ดี เนื่องจากต้องอ่านแฟ้มข้อมูลที่เป็นต้นกำเนิดก่อน
ข้อเสีย
- Record ลูก ไม่สามารถมี record พ่อหลายคนได้ เช่น นักศึกษาสามารถลงทะเบียนได้มากกว่า 1 วิชา
- มีความยืดหยุ่นน้อย เพราะการปรับโครงสร้างของ Tree ค่อนข้างยุ่งยาก
- มีโอกาสเกิดความซ้ำซ้อนมากที่สุดเมื่อเทียบกับระบบฐานข้อมูลแบบโครงสร้างอื่น
- หากข้อมูลมีจำนวนมาก การเข้าถึงข้อมูลจะใช้เวลานานในการค้นหา เนื่องจากจะต้องเข้าถึงที่ต้นกำเนิดของข้อมูล
ฐานข้อมูลแบบลำดับชั้นนี้คล้ายคลึงกับฐานข้อมูลแบบเครือข่าย แต่ต่างกันที่ฐานข้อมูลแบบลำดับชั้น มีกฎเพิ่มขึ้นมาอีกหนึ่งประการ คือ ในแต่ละกรอบจะมีลูกศรวิ่งเข้าหาได้ไม่เกิน 1 หัวลูกศร
- ฐานข้อมูลเชิงสัมพันธ์ (Relational Database)
เป็นการเก็บข้อมูลในรูปแบบที่เป็นตาราง (Table) หรือเรียกว่า รีเลชั่น (Relation) มีลักษณะเป็น 2 มิติ คือเป็นแถว (row) และเป็นคอลัมน์ (column) การเชื่อมโยงข้อมูลระหว่างตาราง จะเชื่อมโยงโดยใช้แอททริบิวต์ (attribute) หรือคอลัมน์ที่เหมือนกันทั้งสองตารางเป็นตัวเชื่อมโยงข้อมูล ฐานข้อมูลเชิงสัมพันธ์นี้จะเป็นรูปแบบของฐานข้อมูลที่นิยมใช้ในปัจจุบัน ดังตัวอย่างที่ 1
พนักงาน
รหัสพนักงานชื่อพนักงานที่อยู่เงินเดือนรหัสแผนก1250153512534568
12503452
12356892
15689730
นายสมพงศ์นายมนตรี
นายเอก
นายบรรทัด
นายราชัน
กรุงเทพนครปฐม
กรุงเทพ
นนทบุรี
สมุทรปราการ
1200012500
13500
11500
12000
VOVN
VO
VD
VA
ตารางที่ 1 แสดงตารางพนักงาน
ข้อดี
- เหมาะกับงานที่เลือกดูข้อมูลแบบมีเงื่อนไขหลายคีย์ฟิลด์ข้อมูล
- ป้องกันข้อมูลถูกทำลายหรือแก้ไขได้ดี เนื่องจากโครงสร้างแบบสัมพันธ์นี้ผู้ใช้จะไม่ทราบว่าการเก็บข้อมูลในฐานข้อมูลอย่างแท้จริงเป็นอย่างไร จึงสามารถป้องกันข้อมูลถูกทำลายหรือถูกแก้ไขได้ดี
- การเลือกดูข้อมูลทำได้ง่าย มีความซับซ้อนของข้อมูลระหว่างแฟ้มต่าง ๆ น้อยมาก อาจมีการฝึกฝนเพียงเล็กน้อยก็สามารถใช้ทำงานได้
ข้อเสีย
- มีการแก้ไขปรับปรุงแฟ้มข้อมูลได้ยากเพราะผู้ใช้จะไม่ทราบการเก็บข้อมูลในฐานข้อมูลอย่างแท้จริงเป็นอย่างไร
- มีค่าใช้จ่ายของระบบสูงมากเพราะเมื่อมีการประมวลผลคือ การอ่าน เพิ่มเติม ปรับปรุงหรือยกเลิกระบบจะต้องทำการสร้างตารางขึ้นมาใหม่ ทั้งที่ในแฟ้มข้อมูลที่แท้จริงอาจจะมีการเปลี่ยนแปลงเพียงเล็กน้อย
ฐานข้อมูลแบบสัมพันธ์จะนำเสนอข้อมูลและความสัมพันธ์ระหว่างข้อมูลในรูป รีเลชัน (Relation) หรือเรียกอีกอย่างหนึ่งว่าตาราง (Table) ตัวอย่างของ Relation แสดงในตารางที่ 2
LastNameFirstNameAddressCityชิโนดมเสรี745 สามมุขธานี เมืองชลบุรีเอี่ยมไพโรจน์ธวัชชัย134 ลงหาดบางแสน เมืองชลบุรีเด่นวัฒนานวลศรี339 พหลโยธิน 1กทม.ตารางที่ 2 : Persons
โครงสร้างของ Relation ประกอบด้วย
- แถว (Row) ของข้อมูล โดยที่ ข้อมูล 1 แถว หมายถึงข้อมูล 1 รายการ ซึ่งแต่ละแถวของ Relation เรียกว่า “Tuple” โดยแต่ละแถวของข้อมูลจะประกอบไปด้วยหลาย Attributes หรือคอลัมน์ของข้อมูล
- แต่ละคอลัมน์ (Column) ของ Relation ได้แก่คุณลักษณะของข้อมูลในแต่ละแถวซึ่งเราเรียกว่า “Attribute” เช่น ตาราง Persons ในตารางที่ 1 มี 5 tuples แต่ละ tuple ประกอบด้วย 4 attributes คือ นามสกุล (LastName) ชื่อ (Name) ที่อยู่ (Address) และเมือง (City)
คีย์หลัก (Primary key) เป็น attribute หรือกลุ่มของ attributes ที่บ่งบอกว่าข้อมูลจะต้องไม่ซ้ำกันในแต่ละแถวข้อมูลของตาราง ดังนั้นค่าของคีย์หลักจะต้องไม่ซ้ำกันในแต่ละ tuple เช่นจาก ตาราง Persons สามารถใช้ LastName เป็นคีย์หลัก
สิ่งที่ผู้เรียนควรทราบเกี่ยวกับข้อมูลในตาราง ของฐานข้อมูลแบบสัมพันธ์
- ทุกตารางต้องมีคีย์หลัก
- Tuple หรือข้อมูลในแต่ละแถวของตาราง มีข้อมูลไม่ซ้ำกัน เช่นเราคงไม่เก็บข้อมูลลูกค้าคนเดียวกันใน 2 tuples
- Tupleไม่มีลำดับจากบนลงล่าง
- Attribute ไม่มีลำดับจากซ้ายไปขวาทุก attributes ในแต่ละตำแหน่งของ tuple ในตาราง จะมีค่าเพียงค่าเดียว จะไม่มีรายการของข้อมูล (เรียกว่า repeating group หรือ list of value) ในตาราง relation
- ฐานข้อมูลเชิงวัตถุ (Object Oriented Model)
- ใช้ในการประมวลผลข้อมูลทางด้านมัลติมีเดีย คือ มีข้อมูลภาพ และเสียง หรือข้อมูลแบบมีการเชื่อมโยงแบบเว็บเพจ ซึ่งไม่เหมาะสำหรับ Relation Model
- มองสิ่งต่างๆ เป็น วัตถุ (Object)
วัตถุประสงค์ของแบบจำลองข้อมูล
- เพื่อนำแนวคิดต่างๆ มาเสนอให้เกิดเป็นแบบจำลอง
- เพื่อนำเสนอข้อมูลและความสัมพันธ์ระหว่างข้อมูลในรูปแบบที่เข้าใจง่าย เช่นเดียวกันการดูแปลนบ้านที่จะทำให้เราเข้าใจโครงสร้างบ้านได้เร็ว
- เพื่อใช้ในการสื่อสารระหว่างผู้ออกแบบฐานข้อมูลกับผู้ใช้ให้ตรงกันประเภทของแบบจำลองข้อมูล
- ประเภทของแบบจำลองข้อมูล แบ่งออกเป็น 2 ประเภท คือ
- Conceptual Models คือ แบบจำลองแนวคิดที่ใช้พรรณนาลักษณะโดยรวมของข้อมูลทั้งหมดในระบบ โดยนำเสนอในลักษณะของแผนภาพ ซึ่งประกอบด้วยเอนทีตีต่างๆ และความสัมพันธ์ โดยแบบจำลองเชิงแนวคิดนี้ต้องการนำเสนอให้เกิดความเข้าใจระหว่างผู้ออกแบบและผู้ใช้งาน คือเมื่อเห็นภาพแบบจำลองดังกล่าวก็จะทำให้เข้าถึงข้อมูลชนิดต่างๆ
- Implementation Models เป็นแบบจำลองที่อธิบายถึงโครงสร้างของฐานข้อมูล
คุณสมบัติของแบบจำลองข้อมูลที่ดี
- ง่ายต่อความเข้าใจ
- มีสาระสำคัญและไม่ซ้ำซ้อน หมายถึง แอตทริบิวต์ในแต่ละเอนทีตี้ไม่ควรมีข้อมูลซ้ำซ้อน
- มีความยืดหยุ่นและง่ายต่อการปรับปรุงในอนาคต กล่าวคือแบบจำลองข้อมูลที่ดีไม่ควรขึ้นอยู่กับแอปพลิเคชันโปรแกรม และสนับสนุนการเปลี่ยนแปลงในโครงสร้าง ซึ่งจะไม่ส่งผลกระทบต่อโปรแกรมที่ใช้งานอยู่ นั่นคือความเป็นอิสระในข้อมูล
ฐานข้อมูลที่นิยมใช้กันแพร่หลายมากที่สุดในปัจจุบัน คือ ฐานข้อมูลแบบสัมพันธ์ ฐานข้อมูลแบบลำดับชั้น เป็นฐานข้อมูลแรกที่นำมาใช้ในวงการธุรกิจ ถัดมาคือฐานข้อมูลแบบเครือข่าย และปัจจุบันนี้มีฐานข้อมูลสมัยใหม่เกิดขึ้นคือฐานข้อมูลแบบจำลองเชิงวัตถุ นั่นคือฐานข้อมูลนั้นมีการนำเสนอข้อมูลและความสัมพันธ์ระหว่างข้อมูลที่แตกต่างกันไป
2. ประเภทของระบบฐานข้อมูล
การแบ่งประเภทของระบบฐานข้อมูลมีการแบ่งออกหลายประเภท ขึ้นอยู่กับชนิดและประเภทที่นำมาจำแนกในบทเรียนนี้จะแบ่งประเภทของระบบฐานข้อมูลออกเป็น 4 ประเภทใหญ่ ตามชนิดต่าง ๆ ดังนี้
- แบ่งตามจำนวนของผู้ใช้
การแบ่งโดยใช้จำนวนผู้ใช้เป็นหลัก สามารถแบ่งออกเป็น 2 ประเภทได้แก่
1.1 ผู้ใช้คนเดียวเป็นระบบฐานข้อมูลที่ใช้ภายในองค์กรขนาดเล็ก เช่น ระบบ Point of sale ของร้านสะดวกซื้อ หรือระบบบัญชีของร้านเล็ก ๆ ทั่วไป เป็นต้น มีเครื่องคอมพิวเตอร์เพียงเครื่องเดียวและผู้ใช้เพียงคนเดียว ไม่มีการแบ่งฐานข้อมูลร่วมกันใช้กับผู้อื่น ถ้าผู้ใช้คนอื่นต้องการใช้ระบบนี้จะต้องรอให้ผู้ใช้คนแรกเลิกใช้ก่อนจึงจะใช้ได้
1.2 ผู้ใช้หลายคน แบ่งออกเป็น 2 ประเภทย่อย ๆ ได้แก่ ผู้ใช้เป็นกลุ่ม หรือ Workgroup database และประเภทฐานข้อมูลขององค์กรขนาดใหญ่หรือ Enterprise database
ผู้ใช้เป็นกลุ่ม เป็นฐานข้อมูลที่มีผู้ใช้หลายกลุ่มหรือหลายแผนก และแต่ละกลุ่มอาจมีผู้ใช้หลายคน มีการแลกเปลี่ยนข้อมูลซึ่งกันหรืออาจจะใช้ฐานข้อมูลเดียวกันก็ได้ แต่จะอยู่ในองค์กรเดียวกันเท่านั้น
องค์การขนาดใหญ่ เป็นระบบฐานข้อมูลที่ใช้กับองค์กรขนาดใหญ่ที่มีสาขาหลายสาขา ทั้งในประเทศหรือมีสาขาในต่างประเทศ จะใช้ฐานข้อมูลขนาดใหญ่ มีระบบสำรอง การรักษาความปลอดภัยเป็นอย่างดี
- แบ่งโดยใช้ขอบเขตของงาน
การแบ่งโดยใช้ขอบเขตของงาน แบ่งออกเป็น 3 ประเภทใหญ่ ๆ ได้แก่ ประเภทผู้ใช้คนเดียว ประเภทผู้ใช้เป็นกลุ่มและประเภทองค์การขนาดใหญ่ ดังได้กล่าวรายละเอียดในตอนต้นแล้ว
- แบ่งตามสถานที่ตั้ง
การแบ่งตามสถานที่ตั้ง แบ่งออกเป็น 2 ประเภทใหญ่ ๆ ได้แก่ ประเภท ศูนย์กลาง และประเภทกระจาย ทั้งสองประเภทมีรายละเอียดดังนี้
3.1 ประเภทศูนย์กลาง เป็นระบบฐานข้อมูลที่นำเอามาเก็บไว้ในตำแหน่งศูนย์กลาง ผู้ใช้ทุกแผนก ทุกคนจะต้องมาใช้ข้อมูลร่วมกัน ตามสิทธิ์ของผู้ใช้แต่ละกลุ่มหรือแต่ละคน
3.2 ประเภทกระจาย เป็นระบบฐานข้อมูลที่เก็บฐานข้อมูลไว้ ณ ตำแหน่งใด ๆ ของแผนก และแต่ละแผนกใช้ฐานข้อมูลร่วมกันโดยผู้มีสิทธิ์ใช้ตามสิทธิ์ที่ได้กำหนดจากผู้มีอำนาจ การเข้าถึงข้อมูล เช่น ฐานข้อมูลของฝ่ายบุคคลเก็บไว้ที่แผนกทรัพยากรบุคคล ยอมให้ฝ่ายบัญชีนำรายชื่อของพนักงานไปใช้ร่วมกับฐานข้อมูลการจ่ายโบนัส และในขณะเดียวกันฝ่ายบัญชีมีฐานข้อมูลเก็บเงินเดือน สวัสดิการและรายจ่ายต่าง ๆ ของพนักงานเพื่อให้แผนกอื่นๆ เข้ามาใช้ได้เช่นกัน
- แบ่งตามการใช้งาน
การแบ่งตามการใช้งานแบ่งออกเป็น 3 ประเภทใหญ่ ๆ ได้แก่ ฐานข้อมูลสำหรับงานประจำวัน ฐานข้อมูลเพื่อใช้ในการตัดสินใจ และเพื่อเป็นคลังข้อมูล
4.1 ฐานข้อมูลสำหรับงานประจำวัน เป็นระบบฐานข้อมูลที่ใช้ในงานประจำวันของพนักงานระดับปฏิบัติการป้อนข้อมูลเข้าสู่ระบบ เช่น งานสินค้าคงคลัง งานระบบซื้อมาขายไป สำหรับร้านสะดวกซื้อ หรือระบบงานขายของร้านค้าทั่วไป เป็นต้น ฐานข้อมูลประเภทนี้มีการนำข้อมูลเข้า เปลี่ยนแปลงและลบออกตลอดทั้งวัน จึงทำให้ข้อมูลเปลี่ยนแปลงตลอดเวลา
4.2 ฐานข้อมูลเพื่อการตัดสินใจ ระบบฐานข้อมูลประเภทนี้มีไว้เพื่อใช้ในการสนับสนุนการตัดสินใจของผู้ใช้ระดับผู้บริหารระดับกลางขึ้นไป ข้อมูลที่นำเข้ามาในระบบได้จากการป้อนข้อมูลงานประจำวันของฐานข้อมูลสำหรับงานประจำวัน ส่วนใหญ่ฐานข้อมูลประเภทนี้นำไปใช้ในงานวางแผนกลยุทธ์ในองค์กร
4.3 ฐานข้อมูลเพื่อเป็นคลังข้อมูล ฐานข้อมูลประเภทนี้เกิดจากการนำข้อมูลเข้ามาในระบบทุก ๆ วันจึงทำให้เกิดมีข้อมูลขนาดใหญ่ จึงนำเอาข้อมูลที่มีประโยชน์มาสร้างฟังก์ชันหรือสมการต่างเพื่อประมวลผลหาผลลัพธ์ต่าง ๆ ให้เป็นประโยชน์กับองค์กร
3. หน้าที่ของระบบการจัดการฐานข้อมูล
ซอฟต์แวร์ระบบฐานการจัดการฐานข้อมูลที่ดีจะต้องทำหน้าที่แก้ปัญหาความไม่สมบูรณ์ ไม่คงเส้นคงวาของข้อมูลและทำให้ข้อมูลมีความถูกต้องไม่ขัดแย้งกันได้ จึงต้องมีหน้าที่ให้ครอบคลุมหลาย ๆ ด้าน ดังนี้
- หน้าที่จัดการพจนานุกรมข้อมูล
ในการออกแบบฐานข้อมูลโดยปกติ ผู้ออกแบบได้เขียนพจนานุกรมข้อมูลในรูปของเอกสารให้กับโปรแกรมเมอร์ โปรแกรมเมอร์จะใช้ซอฟต์แวร์ระบบการจัดการฐานข้อมูลสร้างพจนานุกรมข้อมูลต่อไป และสามารถกำหนดความสัมพันธ์ระหว่างตาราง เมื่อมีการเปลี่ยนแปลงโครงสร้างข้อมูล จำเป็นต้องเปลี่ยนที่พจนานุกรมข้อมูลด้วย โปรแกรมเมอร์สามารถเปลี่ยนแปลงโครงสร้างข้อมูลได้ทันที ต่อจากนั้นจึงให้พจนานุกรมข้อมูลพิมพ์รายงาน พจนานุกรมข้อมูลที่เปลี่ยนแปลงไปแล้วเป็นเอกสารได้เลยทันที่ โดยไม่ต้องแก้ไขที่เอกสาร
- หน้าที่จัดการแหล่งจัดเก็บข้อมูล
ระบบการจัดการฐานข้อมูลที่ทันสมัยจะไม่ทำหน้าที่เพียงจัดการแหล่งจัดเก็บข้อมูลเท่านั้น แต่ยังเพิ่มหน้าที่ที่เกี่ยวกับการสร้างฟอร์มป้อนข้อมูลเข้าหรือกำหนดแบบจอภาพ แบบรายงาน หรือแม้แต่การตรวจสอบข้อมูลนำเข้าว่าถูกต้องหรือไม่ และจัดการเรื่องอื่น ๆ อีกหลายอย่าง
- การเปลี่ยนรูปแบบและการแสดงผลข้อมูล
การเปลี่ยนรูปแบบและการแสดงผลข้อมูล เป็นหน้าที่สำหรับเปลี่ยนข้อมูลที่ถูกป้อนเข้าไปเป็นโครงสร้างข้อมูลจะจัดเก็บ ซึ่งอยู่ในมุมมองทางกายภาพ หรืออาจจะกล่าวได้ว่า ระบบจัดการฐานข้อมูลทำข้อมูลให้เป็นอิสระจากโปรแกรมประยุกต์ได้
- จัดการด้านความปลอดภัยของข้อมูล
ระบบจัดการฐานข้อมูลทำหน้าที่รักษาความมั่นคง ความปลอดภัยของข้อมูล การไม่ยินยอมเข้าถึงข้อมูลจากผู้ใช้ที่ไม่มีสิทธิ์เข้าไปใช้ฐานข้อมูล โดยเฉพาะอย่างยิ่งฐานข้อมูลประเภทผู้ใช้หลายคน นอกจากนี้ยังสามารถกำหนดสิทธิ์ให้ผู้ใช้แต่ละคนใช้คำสั่ง เพิ่ม หรือลบ ปรับปรุงข้อมูลได้เป็นรายคนหรือรายกลุ่ม
- ควบคุมการเข้าถึงข้อมูลของผู้ใช้
การควบคุมการเข้าถึงข้อมูล เป็นการทำหน้าที่ให้ผู้ใช้เข้าใช้ได้หลาย ๆ คนในเวลาเดียวกันโดยไม่ทำให้เกิดขัดข้องของข้อมูล ซึ่งจะเน้นกฎความสมบูรณ์ของข้อมูลและการใช้ข้อมูลพร้อมกัน
- สำรองข้อมูลและการกู้คืนข้อมูล
การสำรองข้อมูลและการกู้คืนข้อมูล เป็นหน้าที่ที่จำเป็นอย่างยิ่งเพื่อให้ผู้ใช้ระบบฐานข้อมูลมั่นใจว่าข้อมูลที่จัดเก็บอยู่ในเครื่องคอมพิวเตอร์ไม่ได้เสียหาย ยังมีความสมบูรณ์อยู่ตลอดเวลา ผู้ใช้ที่เป็นผู้บริหารฐานข้อมูลสามารถใช้คำสั่งสำรองข้อมูลและคำสั่งกู้คืนข้อมูลได้
- จัดการด้านบูรณภาพของข้อมูล
เป็นข้อกำหนดให้มีกฎความสมบูรณ์เป็นบูรณภาพ โดยจะให้มีข้อมูลที่ซ้ำซ้อนกันให้น้อยที่สุด แต่ให้มีความถูกต้องตรงกันให้มากที่สุด เพราะในระบบฐานข้อมูลเชิงสัมพันธ์จะมีหลาย ๆ ตารางที่สัมพันธ์กันตารางที่เกี่ยวข้องกันจะขัดแย้งกันไม่ได้
- เป็นภาษาสำหรับจัดการข้อมูลและจัดสร้างส่วนประสานกับผู้ใช้
ระบบจัดการฐานข้อมูลจัดให้มีภาษาสำหรับสอบถาม เป็นภาษาที่เขียนเข้าใจง่ายไม่เหมือนภาษาชั้นสูงประเภท Procedural ทั่วไป ทำให้ผู้เขียนโปรแกรมภาษาระดับสูงเขียนคำสั่งเข้าไปสอบถามข้อมูลหรือประมวลผลสารสนเทศได้ตามต้องการ
- เป็นส่วนประสานกับผู้ใช้ในด้านการสื่อสารฐานข้อมูล
ระบบการจัดการฐานข้อมูลสมัยใหม่จะสนับสนุนการทำงานแบบเครือข่ายอินเทอร์เน็ต เพื่อให้ผู้ใช้สามารถเขียนคำสั่งด้วยโปรแกรมที่ทำงานบน www เช่น browser ของ Internet Explorer หรือ Netscape เป็นต้น
4. การบริหารฐานข้อมูล
ในระบบฐานข้อมูลนอกจากจะมีระบบการจัดการฐานข้อมูล ซึ่งเป็นซอฟต์แวร์ที่สร้างขึ้นเพื่อจัดการกับข้อมูลให้เป็นระบบ จะได้นำไปเก็บรักษา เรียกใช้ หรือนำมาปรับปรุงให้ทันสมัยได้ง่ายแล้ว ในระบบฐานข้อมูลยังต้องประกอบด้วยบุคคลที่มีหน้าที่ควบคุมดูแลระบบฐานข้อมูล คือ ผู้บริหารฐานข้อมูล
เหตุผลสำหรับประการหนึ่งของการจัดทำระบบจัดการฐานข้อมูล คือ การมีศูนย์กลางควบคุมทั้งข้อมูลและโปรแกรมที่เข้าถึงข้อมูลเหล่านั้น บุคคลที่มีอำนาจหน้าที่ดูแลการควบคุมนี้ เรียกว่า ผู้บริหารฐานข้อมูล หรือ DBA (data base administor) คือ ผู้มีหน้าที่ควบคุมการบริหารงานของฐานข้อมูลทั้งหมด
- หน้าที่ของผู้บริหารฐานข้อมูล
1.1 กำหนดโครงสร้างหรือรูปแบบของฐานข้อมูล โดยทำการวิเคราะห์และตัดสินใจว่าจะรวมข้อมูลใดเข้าไว้ในระบบใดบ้าง ควรจะจัดเก็บข้อมูลด้วยวิธีใด และใช้เทคนิคใดในการเรียกใช้ข้อมูลอย่างไร
1.2 กำหนดโครงสร้างของอุปกรณ์เก็บข้อมูลและวิธีการเข้าถึงข้อมูล โดยกำหนดโครงสร้างของอุปกรณ์เก็บข้อมูลและวิธีการเข้าถึงข้อมูล พร้อมทั้งกำหนดแผนการในการสร้างระบบข้อมูลสำรองและการฟื้นสภาพ โดยการจัดเก็บข้อมูลสำรองไว้ทุกระยะ และจะต้องเตรียมการไว้ว่าถ้าเกิดความผิดพลาดขึ้นแล้วจะทำการฟื้นสภาพได้อย่างไร
1.3 มอบหมายขอบเขตอำนาจหน้าที่ของการเข้าถึงข้อมูลของผู้ใช้ โดยการประสานงานกับผู้ใช้ ให้คำปรึกษา ให้ความช่วยเหลือแก่ผู้ใช้ และตรวจตราความต้องการของผู้ใช้5.ระบบการจัดการฐานข้อมูล (data base management system, DBMS)
- หน้าที่ของระบบการจัดการฐานข้อมูล
2.1 ระบบจัดการฐานข้อมูลเป็นซอฟต์แวร์ที่ทำหน้าที่ดังต่อไปนี้ ดูแลการใช้งานให้กับผู้ใช้ ในการติดต่อกับตัวจัดการระบบแฟ้มข้อมูลได้ ในระบบฐานข้อมูลนี้ข้อมูลจะมีขนาดใหญ่ ซึ่งจะถูกจัดเก็บไว้ในหน่วยความจำสำรองเมื่อผู้ใช้ต้องการจะใช้ฐานข้อมูล ระบบการจัดการฐานข้อมูลจะทำหน้าที่ติดต่อกับระบบแฟ้มข้อมูลซึ่งเสมือนเป็นผู้จัดการแฟ้มข้อมูล (file manager) นำข้อมูลจากหน่วยความจำสำรองเข้าสู่หน่วยความจำหลักเฉพาะส่วนที่ต้องการใช้งาน และทำหน้าที่ประสานกับตัวจัดการระบบแฟ้มข้อมูลในการจัดเก็บ เรียกใช้ และแก้ไขข้อมูล
2.2 ควบคุมระบบความปลอดภัยของข้อมูลโดยป้องกันไม่ให้ผู้ที่ไม่ได้รับอนุญาตเข้ามาเรียกใช้หรือแก้ไขข้อมูลในส่วนป้องกันเอาไว้ พร้อมทั้งสร้างฟังก์ชันในการจัดทำข้อมูลสำรอง โดยเมื่อเกิดมีความขัดข้องของระบบแฟ้มข้อมูลหรือของเครื่องคอมพิวเตอร์เกิดการเสียหายนั้น ฟังก์ชันนี้จะสามารถทำการฟื้นสภาพของระบบข้อมูลกลับเข้าสู่สภาพที่ถูกต้องสมบูรณ์ได้
2.3 ควบคุมการใช้ข้อมูลในสภาพที่มีผู้ใช้พร้อม ๆ กันหลายคน โดยจัดการเมื่อมีข้อผิดพลาดของข้อมูลเกิดขึ้น
5. ภาษาที่ใช้ในระบบฐานข้อมูล
ภาษาที่ใช้ในระบบฐานข้อมูลที่มีใช้กันในปัจจุบันจำแนกได้เป็น 3 ประเภท
- ภาษานิยามข้อมูล (Data Definition Language: DDL) เป็นภาษาที่ใช้ในการกำหนดโครงสร้างการจัดเก็บข้อมูลและรายละเอียดฐานข้อมูลที่สร้างขึ้น
- ภาษาควบคุม (data control language: DCL) เป็นภาษาที่ใช้ในการควบคุมความถูกต้องของข้อมูล และควบคุมความปลอดภัยของข้อมูล ภาษาในส่วนนี้จะทำการป้องกันการเกิดเหตุการณ์ที่ผู้ใช้หลายคนเรียกใช้ข้อมูลพร้อมกัน โดยจะทำหน้าที่ควบคุมความถูกต้องของการใช้ข้อมูลและทำการลำดับการใช้ข้อมูลของผู้ใช้แต่ละคนและตรวจสอบสิทธิ์ในการใช้ข้อมูลนั้นๆ
- ภาษาจัดการข้อมูล (Data Manipulation Language: DML) เป็นภาษาใช้สำหรับจัดการข้อมูลภายในฐานข้อมูล ได้แก่การเรียกค้น เพิ่ม ลบ และปรับปรุงฐานข้อมูล การเรียกดูข้อมูลจากฐานข้อมูลจะต้องผ่านคำสั่งหรือข้อความของภาษาจัดการข้อมูลหาข้อความ ซึ่งกลุ่มของข้อความเหล่านั้นมีลักษณะเป็นการถามระบบข้อมูลเพื่อให้ระบบจัดการฐานข้อมูลหาคำตอบจากข้อมูลที่เก็บไว้และตอบกลับมา กลุ่มของข้อความเหล่านั้นเรียกว่า ภาษาคำถาม (query language) แต่โดยทั่วไปแล้วคำว่า DML และ ภาษาคำถาม จะใช้แทนกันเสมอ เช่น
SELECT employee-name
FROM employee-file
WHERE sex = “female” AND salary GREATER THAN 5000
เป็นการไปเรียกดูข้อมูลชื่อของลูกจ้างที่เป็นผู้หญิงและมีเงินเดือนมากกว่า 5,000 จากฐานข้อมูลชื่อ employee-file
6. นิยามและคำศัพท์พื้นฐานเกี่ยวกับระบบฐานข้อมูล
- บิท (Bit)
หมายถึง หน่วยเก็บข้อมูลที่เล็กที่สุดในเครื่องคอมพิวเตอร์ ที่เป็นสัญญาณดิจิตัล ซึ่งประกอบด้วยสัญญาณไฟฟ้า 2 สถานะ ได้แก่ 0 กับ 1 หรือ เปิดกับปิด หรือ จริงกับเท็จ การแทนค่าบิตที่มีสัญญาณไฟฟ้า ให้มีค่าเป็น 1 และสัญญาณที่ไม่มีไฟฟ้า มีค่าเป็น 0 จำนวนค่าเพียง 1 ค่านี้ เรียกว่า 1 บิต
- ไบท์ (Byte)
หมายถึง หน่วยของข้อมูลที่เกิดจากการนำบิทมารวมกันเป็นตัวอักขระ (Character) การนำค่าบิตจำนวน 8 บิต มาเรียงต่อกันตามมาตรฐานรหัส ASCII จะแทนค่าตัวอักขระได้ 1 ตัวอักษร เช่น 01000001แทนตัวอักษร “A” เป็นต้น แต่ตามมาตรฐาน Unicode จะใช้จำนวน 16 บิต
- เขตข้อมูล (Field)
หมายถึง หน่วยของข้อมูลที่ประกอบขึ้นจากตัวอักขระตั้งแต่หนึ่งตัวขึ้นไปมารวมกันแล้วได้ความหมายของสิ่งใดสิ่งหนึ่ง เช่น ชื่อ ที่อยู่ เป็นต้น
จากตารางที่ 3 ข้อมูลในแถวที่ 1 มีค่า A – ประกอบด้วยตัวอักขระ 2 ตัวคือ A และ – มีความหมายว่า หมู่โลหิต A ชนิด Rh Negative เป็นต้น เขตข้อมูลบางครั้งเรียกอีกอย่างหนึ่งว่า แอตทริบิวต์
ตารางที่ 3 แสดงแฟ้มข้อมูลรายชื่อผู้บริจาคโลหิต
**เป็นข้อมูลสมมุติ**
เขตข้อมูล (Field) สามารถแยกประเภทของฟิลด์ได้เป็น 3 ประเภทคือ
– ฟิลด์ตัวเลข (numeric field) ประกอบด้วย อักขระที่เป็นตัวเลข ซึ่งอาจเป็นเลขจำนวนเต็มหรือทศนิยมและอาจมีเครื่องหมายลบหรือบวก เช่น ยอดคงเหลือในบัญชีเป็นกลุ่มของตัวเลข
– ฟิลด์ตัวอักษร (alphabetic field) ประกอบด้วย อักขระที่เป็นตัวอักษรหรือช่องว่าง (blank) เช่น ชื่อลูกค้าเป็นกลุ่มของตัวอักษร
– ฟิลด์อักขระ (character field หรือ alphanumeric field) ประกอบด้วย อักขระซึ่งอาจจะเป็นตัวเลขหรือตัวอักษรก็ได้ เช่น ที่อยู่ของลูกค้า
- ระเบียน (Record)
หมายถึง หน่วยของข้อมูลที่เกิดจากการนำเอาเขตข้อมูลหลาย ๆ เขตข้อมูลมารวมกัน เพื่อเกิดเป็นข้อมูลเรื่องใดเรื่องหนึ่ง เช่น ข้อมูลของนักศึกษา 1 ระเบียน (1 คน) จะประกอบด้วย
รหัสประจำตัวนักศึกษา 1 เขตข้อมูล
ชื่อนักศึกษา 1 เขตข้อมูล
ที่อยู่ 1 เขตข้อมูล
ระเบียนแต่ละระเบียนจะมีฟิลด์ที่ใช้อ้างอิงถึงข้อมูลในระเบียนนั้น ๆ อย่างน้อย 1 ฟิลด์เสมอ ฟิลด์ที่ใช้อ้างอิงนี้เรียกว่าคีย์ฟิลด์ (key field) ในทุกระเบียนจะมีฟิลด์หนึ่งที่ถูกใช้เป็นคีย์ฟิลด์ ฟิลด์ที่ถูกใช้เป็นคีย์จะเป็นฟิลด์ที่มีค่าไม่ซ้ำกันในแต่ละระเบียน (unique) เพื่อสะดวกในการจัดเรียงระเบียนในแฟ้มข้อมูลและการจัดโครงสร้างของแฟ้มข้อมูล เช่น ระเบียนของเช็คธนาคาร จะใช้เลขที่บัญชีเป็นคีย์ฟิลด์ ระเบียนแฟ้มข้อมูลพนักงานใช้เลขประจำตัวพนักงานเป็นคีย์ฟิลด์
- แฟ้มข้อมูล (File)
หมายถึง หน่วยของข้อมูลที่เกิดจากการนำข้อมูลหลาย ๆ ระเบียนที่เป็นเรื่องเดียวกันมารวมกัน เช่น แฟ้มข้อมูลนักศึกษา แฟ้มข้อมูลลูกค้า แฟ้มข้อมูลพนักงาน
การจัดการแฟ้มข้อมูลอย่างถูกต้องมีความสำคัญอย่างยิ่งต่อความมั่นคงปลอดภัย (security) ของข้อมูลที่อยู่ในแฟ้มข้อมูลและในแฟ้มข้อมูลเอง แนวคิดในการจัดการแฟ้มข้อมูลเริ่มจากการออกแบบแฟ้มข้อมูลให้เหมาะสมกับการเรียกค้นเรคอร์ดข้อมูลมาใช้ ไปจนถึงการสำรองแฟ้มข้อมูลและการกู้แฟ้มข้อมูล
แฟ้มข้อมูลอาจจะมีได้สองลักษณะ คือ
- ระเบียนขนาดคงที่ (fixed length record) โดยปกติแล้วภายในแฟ้มข้อมูลจะจัดเก็บระเบียนอยู่ในรูปแบบใดแบบหนึ่งโดยเฉพาะ ทุกระเบียนจะประกอบด้วยหน่วยข้อมูลย่อยที่เหมือน ๆ กัน นั่นคือ โครงสร้างของทุกระเบียนในแฟ้มข้อมูลจะเป็นแบบเดียวกันหมด ถ้าขนาดของระเบียนมี จำนวนตัวอักขระเท่ากันหมดในทุก ๆ ระเบียนของแฟ้มข้อมูล ระเบียนนั้นจะถูกเรียกว่าระเบียนขนาดคงที่ (fixed length record)
- ระเบียนที่มีความยาวแปรได้ (variable length record) คือทุกเรคอร์ดอาจจะมีจำนวนฟิลด์ต่างกัน และแต่ละฟิลด์ก็อาจจะมีความยาวต่างกันได้ แฟ้มข้อมูลประเภทนี้มีลักษณะโครงสร้างแบบพิเศษที่ช่วยให้คอมพิวเตอร์สามารถบอกได้ว่าแต่ละเรคอร์ดมีความยาวเท่าใด และแต่ละฟิลด์เริ่มต้นตรงไหนและจบตรงไหน ตัวอย่างของแฟ้มประเภทนี้ได้แก่ แฟ้มบันทึกรายการใบสั่งซื้อสินค้า แต่ละเรคอร์ดจะแทนใบสั่งสินค้าหนึ่งใบ และใบสั่งสินค้าแต่ละใบอาจจะมีรายการสินค้าที่สั่งซื้อไม่เท่ากัน
ประเภทของแฟ้มข้อมูล
ประเภทของแฟ้มข้อมูลจำแนกตามลักษณะของการใช้งานได้ดังนี้
- แฟ้มข้อมูลหลัก (master file) แฟ้มข้อมูลหลักเป็นแฟ้มข้อมูลที่บรรจุข้อมูลพื้นฐานที่จำเป็นสำหรับระบบงาน และเป็นข้อมูลหลักที่เก็บไว้ใช้ประโยชน์ข้อมูลเฉพาะเรื่องไม่มีรายการเปลี่ยนแปลงในช่วงปัจจุบัน มีสภาพค่อนข้างคงที่ไม่เปลี่ยนแปลงหรือเคลื่อนไหวบ่อยแต่จะถูกเปลี่ยนแปลงเมื่อมีการสิ้นสุดของข้อมูล เป็นข้อมูลที่สำคัญที่เก็บไว้ใช้ประโยชน์ ตัวอย่าง เช่น แฟ้มข้อมูลหลักของนักศึกษาจะแสดงรายละเอียดของนักศึกษา ซึ่งมี ชื่อนามสกุล ที่อยู่ ผลการศึกษา แฟ้มข้อมูลหลักของลูกค้าในแต่ละระเบียนของแฟ้มข้อมูลนี้จะแสดงรายละเอียดของลูกค้า เช่น ชื่อสกุล ที่อยู่ หรือ ประเภทของลูกค้า
- แฟ้มข้อมูลรายการเปลี่ยนแปลง (transaction file) แฟ้มข้อมูลรายการเปลี่ยนแปลงเป็นแฟ้มข้อมูลที่ประกอบด้วยระเบียนข้อมูลที่มีการเคลื่อนไหว ซึ่งจะถูกรวบรวมเป็นแฟ้มข้อมูลรายการเปลี่ยนแปลงที่เกิดขึ้นในแต่ละงวดในส่วนที่เกี่ยวข้องกับข้อมูลนั้น แฟ้มข้อมูลรายการเปลี่ยนแปลงนี้จะนำไปปรับรายการในแฟ้มข้อมูลหลัก ให้ได้ยอดปัจจุบัน ตัวอย่างเช่น แฟ้มข้อมูลลงทะเบียนเรียนของนักศึกษา
- แฟ้มข้อมูลตาราง (table file) แฟ้มข้อมูลตารางเป็นแฟ้มข้อมูลที่มีค่าคงที่ ซึ่งประกอบด้วยตารางที่เป็นข้อมูลหรือชุดของข้อมูลที่มีความเกี่ยวข้องกันและถูกจัดให้อยู่รวมกันอย่างมีระเบียบ โดยแฟ้มข้อมูลตารางนี้จะถูกใช้ในการประมวลผลกับแฟ้มข้อมูลอื่นเป็นประจำอยู่เสมอ เช่น ตารางอัตราภาษี ตารางราคาสินค้า
ตัวอย่างเช่น ตารางราคาสินค้าของบริษัทขายอะไหล่เครื่องคอมพิวเตอร์ดังนี้
รหัสสินค้า รายชื่อสินค้า ราคา
51 จอภาพ 4,500
52 แป้นพิมพ์ 1,200
53 แรม 4 M 4,500
54 แรม 8 M 7,000
55 กระดาษต่อเนื่อง 500
56 แฟ้มคอมพิวเตอร์ 200
ในแฟ้มข้อมูลนี้จะประกอบด้วยระเบียนแฟ้มข้อมูลตารางของสินค้าที่มีฟิลด์ต่าง ๆ ได้แก่ รหัสสินค้า รายชื่อ สินค้า และราคาสินค้าต่อหน่วย แฟ้มข้อมูลตารางรายการสินค้า จะใช้ร่วมกับแฟ้มข้อมูลหลายแฟ้มข้อมูลในระบบสินค้า ได้แก่ แฟ้มข้อมูลคลังสินค้า (inventory master file) แฟ้มข้อมูลใบสั่งซื้อของลูกค้า (customer order master file) และแฟ้มข้อมูลรายการสิตค้าของฝ่ายผลิต (production master file) มีข้อควรสังเกตว่าแฟ้มข้อมูลตาราง แฟ้มข้อมูลรายการเปลี่ยนแปลง และแฟ้มข้อมูลหลัก ทั้ง 3 แฟ้ม จะมีฟิลด์ที่เกี่ยวกับตัวสินค้าร่วมกัน คือ ฟิลด์รหัสสินค้า (product code) ฟิลด์ร่วมกันนี้จะเป็นตัวเชื่องโยงระหว่างแฟ้มข้อมูลตารางกับแฟ้มข้อมูลอื่น ๆ ทั้งหมดที่ต้องการจะใช้ค่าของฟิลด์รายชื่อสินค้า (product description) และราคาสินค้า (product price) จากแฟ้มข้อมูลตาราง การจัดแฟ้มข้อมูลแบบนี้จะทำให้ประหยัดเนื้อที่ในอุปกรณ์เก็บข้อมูลของแฟ้มข้อมูลหลัก กล่าวคือในแฟ้มข้อมูลหลักไม่ต้องมี 2 ฟิลด์ คือ ฟิลด์รายการสินค้าและฟิลด์ราคาสินค้า มีแต่เพียงฟิลด์รหัสสินค้าก็เพียงพอแล้ว เมื่อใดที่ต้องการใช้ฟิลด์รายการสินค้าในการแสดงผลก็อ่านค่าออกมาจากแฟ้มข้อมูลตารางได้ นอกจากนั้นยังเป็นการลดความซ้ำซ้อนของข้อมูลและเมื่อผู้ใช้ระบบต้องการเปลี่ยนแปลงรายการสินค้าหรือราคาสินค้าก็จะเปลี่ยนในแฟ้มข้อมูลตารางทีเดียว โดยไม่ต้องไปเปลี่ยนแปลงในแฟ้มข้อมูลอื่น
- แฟ้มข้อมูลเรียงลำดับ (sort file) แฟ้มข้อมูลเรียงลำดับเป็นการจัดเรียงระเบียนที่จะบรรจุในแฟ้มข้อมูลนั้นใหม่ โดยเรียงตามลำดับค่าของฟิลด์ข้อมูลหรือค่าของข้อมูลค่าใดค่าหนึ่งในระเบียนนั้นก็ได้ เช่น จัดเรียงลำดับตาม วันเดือนปี ตามลำดับตัวอักขระเรียงลำดับจากมากไปหาน้อยหรือจากน้อยไปหามาก เป็นต้น
- แฟ้มข้อมูลรายงาน (report file) เป็นแฟ้มข้อมูลที่ถูกจัดเรียงระเบียบตามรูปแบบของรายงานที่ต้องการแล้วจัดเก็บไว้ในรูปของแฟ้มข้อมูล ตัวอย่าง เช่น แฟ้มข้อมูลรายงานควบคุมการปรับเปลี่ยนข้อมูลที่เกิดขึ้นในขณะปฏิบัติงานแต่ละวัน
การจัดโครงสร้างแฟ้มข้อมูล (file organization)
เป็นการกำหนดวิธีการที่ระเบียนถูกจัดเก็บอยู่ในแฟ้มข้อมูลบนอุปกรณ์ที่ใช้เก็บข้อมูล ซึ่งลักษณะโครงสร้างของระเบียนจะถูกจัดเก็บไว้เป็นระบบ โดยมีวัตถุประสงค์เพื่อให้การจัดเก็บข้อมูลและการเข้าถึงข้อมูลมีความสะดวกรวดเร็ว การจัดโครงสร้างของแฟ้มข้อมูลอาจแบ่งได้เป็น 3 ลักษณะคือ
- โครงสร้างของแฟ้มข้อมูลแบบลำดับ (sequential file) เป็นการจัดแฟ้มข้อมูลซึ่งระเบียนภายในแฟ้มข้อมูลจะถูกบันทึกโดยเรียงตามลำดับคีย์ฟิลด์ หรืออาจจะไม่เรียงลำดับตามคีย์ฟิลด์ก็ได้ ข้อมูลจะถูกบันทึกลงในสื่อบันทึกข้อมูลโดยจะถูกบันทึกไว้ในตำแหน่งที่อยู่ติด ๆ กัน การนำข้อมูลมาใช้ของโครงสร้างแฟ้มข้อมูลแบบลำดับจะต้องอ่านข้อมูลไปตามลำดับจะเข้าถึงข้อมูลโดยตรงไม่ได้ ส่วนการจัดโครงสร้างแฟ้มข้อมูลแบบลำดับตามดัชนี เป็นการจัดข้อมูลแบ่งตามหมวดหมู่ สรุปเป็นตารางซึ่งมีลักษณะคล้ายสารบาญของหนังสือ การจัดข้อมูลแบบนี้ทำให้สามารถเข้าถึงข้อมูลได้ง่าย โดยตรงไปที่ตารางซึ่งเป็นดัชนี จะทำให้ทราบตำแหน่งของข้อมูลนั้น โดยไม่ต้องอานข้อมูลทีละระเบียน การจัดโครงสร้างของแฟ้มข้อมูลแบบสัมพัทธ์ แฟ้มข้อมูลแบบสัมพัทธ์นี้ข้อมูลจะถูกบันทึกโดยอาศัยกลไกการกำหนดตำแหน่งของข้อมูล ซึ่งจะช่วยให้สามารถตรงไปถึงหรือบันทึกข้อมูลที่ต้องการได้โดยไม่ต้องอ่านหรือผ่านข้อมูลที่อยู่ในลำดับก่อนหน้าระเบียนที่ต้องการ การดึงหรือการบันทึกข้อมูลจะสามารถทำได้อย่างรวดเร็ว
ในโครงสร้างแฟ้มข้อมูลแบบลำดับประกอบด้วยระเบียนที่จัดเรียงไปตามลำดับอย่างต่อเนื่องเมื่อจัดสร้างแฟ้มข้อมูลโดยจะบันทึกระเบียนเรียงตามลำดับการบันทึกระเบียนจะถูกเขียนต่อเนื่องไปตามลำดับจากระเบียนที่ 1 ถึงระเบียน n และการอ่านระเบียนภายในแฟ้มข้อมูลก็ต้องใช้วิธีการอ่านแบบต่อเนื่องตามลำดับ คือ อ่านตั้งแต่ต้นแฟ้มข้อมูลไปยังท้ายแฟ้มข้อมูล โดยอ่านระเบียนที่ 1,2,3 และ 4 มาก่อน ตัวอย่างเช่น ถ้าต้องการอ่านระเบียนที่ 8 ก็ต้องอ่านระเบียนลำดับที่ 1,2,3,4,5,6,7 ก่อน
- โครงสร้างของแฟ้มข้อมูลแบบลำดับตามดัชนี (index sequential file) เป็นวิธีการเก็บข้อมูลโดยแต่ละระเบียนในแฟ้มข้อมูลจะมีค่าของคีย์ฟิลด์ที่ใช้เป็นตัวระบุระเบียนนั้น ค่าคีย์ฟิลด์ของแต่ละระเบียนจะต้องไม่ซ้ำกับค่าคีย์ฟิลด์ในระบบอื่น ๆ ในแฟ้มข้อมูลเดียวกัน เพราะการจัดโครงสร้างแฟ้มข้อมูลแบบนี้จะใช้คีย์ฟิลด์เป็นตัวเข้าถึงข้อมูล การเข้าถึงข้อมูลหรือการอ่านระเบียนใด ๆ จะเข้าถึงได้อย่างสุ่ม การจัดโครงสร้างแฟ้มข้อมูลต้องบันทึกลงสื่อข้อมูลที่เข้าถึงข้อมูลได้โดยตรง เช่น จานแม่เหล็ก การสร้างแฟ้มข้อมูลประเภทนี้ไม่ว่าจะสร้างครั้งแรกหรือสร้างใหม่ ข้อมูลแต่ละระเบียนต้องมีฟิลด์หนึ่งใช้เป็นคีย์ฟิลด์ของข้อมูล ระบบปฏิบัติการจะนำคีย์ฟิลด์ของข้อมูลไปสร้างเป็นตารางดัชนีทำให้สามารถเข้าถึงระเบียนได้เร็ว นอกจากจะเข้าถึงระเบียนใด ๆ ได้เร็วขึ้นแล้วยังมีประโยชน์สามารถเพิ่มระเบียนเข้าในส่วนใด ๆ ของแฟ้มข้อมูลได้ ในแต่ละแฟ้มข้อมูลที่ถูกบันทึกลงสื่อข้อมูลจะมีตารางดัชนีทำให้เข้าถึงระเบียนใด ๆ ได้รวดเร็วขึ้น โครงสร้างแฟ้มข้อมูลแบบลำดับตามดัชนีประกอบด้วย
1 ) ดัชนี (index) ของแฟ้มข้อมูลจะเก็บค่าคีย์ฟิลด์ของข้อมูล และที่อยู่ในหน่วยความจำ (address) ที่ระเบียนนั้นถูกนำไปบันทึกไว้ ซึ่งดัชนีนี้จะต้องเรียงลำดับจากน้อยไปมาก หรือจากมากไปน้อยโดยที่ส่วนของดัชนีจะมีตัวบ่งชี้ไปยังที่อยู่ในหน่วยความจำ เพื่อจะได้นำไปถึงระเบียนข้อมูลในข้อมูลหลัก
2) ข้อมูลหลัก (data area) จะเก็บระเบียนข้อมูล ซึ่งระเบียนนั้นอาจจะเรียงตามลำดับจากน้อยไปมากหรือจากมากไปน้อย ในการจัดลำดับของข้อมูลหลักอาจจะจัดข้อมูลออกไปกลุ่ม ๆ โดยจะเว้นที่ไว้เพื่อให้มีการปรับปรุงแฟ้มข้อมูลได้
- โครงสร้างของแฟ้มข้อมูลแบบสัมพัทธ์ (relative file) เป็นโครงสร้างที่สามารถเข้าถึงข้อมูลหรืออ่านระเบียนใด ๆ ได้โดยตรง วิธีนี้เป็นการจัดเรียงข้อมูลเข้าไปในแฟ้มข้อมูลโดยอาศัยฟิลด์ข้อมูลเป็นตัวกำหนดตำแหน่งของระเบียนนั้น ๆ โดยค่าของคีย์ฟิลด์ข้อมูลในแต่ละระเบียนของแฟ้มข้อมูลจะมีความสัมพัทธ์กับตำแหน่งที่ระเบียนนั้นถูกจัดเก็บไว้ในหน่วยความจำ ค่าความสัมพัทธ์นี้ เป็นการกำหนดตำแหน่ง (mapping function) ซึ่งเป็นฟังก์ชั่นที่ใช้ในการเปลี่ยนแปลงคีย์ฟิลด์ของระเบียนให้เป็นตำแหน่งในหน่วยความจำ โดยที่การจัดเรียงลำดับที่ของระเบียนไม่จำเป็นต้องมีความสัมพันธ์กับการจัดลำดับที่ของระเบียนที่ถูกจัดเก็บไว้ในหน่วยความจำ
การจัดเก็บข้อมูลลงแฟ้มข้อมูลแบบสัมพัทธ์ (relative file) จะถูกจัดเก็บอยู่บนสื่อที่สามารถเข้าถึงได้โดยตรง เช่น แผ่นจานแม่เหล็ก ลักษณะโครงสร้างแฟ้มข้อมูลแบบสัมพัทธ์จะประกอบด้วยตำแหน่งในหน่วยความจำ ซึ่งเกิดจากนำคีย์ฟิลด์ของระเบียนมาทำการกำหนดตำแหน่ง ซึ่งการกำหนดตำแหน่งนี้จะทำการปรับเปลี่ยนค่าคีย์ฟิลด์ของระเบียนให้เป็นตำแหน่งในหน่วยความจำที่คำนวณได้ แฟ้มข้อมูลหลัก แฟ้มข้อมูลนี้ประกอบด้วยระเบียนที่จัดเรียงตามตำแหน่งในหน่วยความจำโดยจะเรียงจากระเบียนที่ 1 จนถึง N แต่จะไม่เรียงลำดับตามค่าของคีย์ฟิลด์
รูปที่ 1 แสดงโครงสร้างของข้อมูล
บรรณานุกรม
- ความรู้ทั่วไปเกี่ยวกับระบบฐานข้อมูล. (ออนไลน์). แหล่งที่มา : //www.chandra.ac.th/office/ict/document/it/it04/page01.html. 17 สิงหาคม 2558
- ระบบฐานข้อมูล(DATABASE SYSTEMS). (ออนไลน์). แหล่งที่มา : //www.sirikitdam.egat.com/WEB_MIS/103_116/01.html. 17 สิงหาคม 2558
อ.ทวีรัตน์ นวลช่วย. 2558. ระบบฐานข้อมูล (Database System). (ออนไลน์). แหล่งที่มา : //sites.google.com/site/thaidatabase2/. 17 สิงหาคม 2558
- ฐานข้อมูล. (ออนไลน์). แหล่งที่มา : //th.wikipedia.org/wiki/%E0%B8%90%E0%B8%B2%E0%B8%99%E0%B8%82%E0%B9%89%E0%B8%AD%E0%B8%A1%E0%B8%B9%E0%B8%A5. 17 สิงหาคม 2558
นายจำรูญ กาพย์ไกรแก้ว. 2558. การเรียนการสอนผ่านเว็บ วิชา ระบบฐานข้อมูล . (ออนไลน์). แหล่งที่มา : //203.172.182.81/wbidatabase/unit1/unit1.php. 17 สิงหาคม 2558