บทที่ 1
ระบบฐานข้อมูล
ระบบฐานข้อมูล
(Database System) หมายถึง โครงสร้างสนเทศ
ที่ประกอบด้วยรายละเอียดของข้อมูลที่เกี่ยวข้องกันที่จะนำมาใช้ในระบบงานต่าง ๆ
ร่วมกัน
ระบบฐานข้อมูล
จึงนับเป็นการจัดเก็บข้อมูลอย่างเป็นระบบ ซึ่งผู้ใช้จะสามารถจัดการกับข้อมูลได้ในลักษณะต่าง
ๆ ทั้งการเพิ่มข้อมูล การแก้ไข การลบ ตลอดจนการเรียกดูข้อมูล
ซึ่งส่วยใหญ่จะเป็นการประยุกต์นำเอาระบบคอมพิวเตอร์เข้ามาช่วยในการจัดการฐานข้อมูล
นิยามและคำศัพท์พื้นฐานเกี่ยวกับระบบฐานข้อมูล
Bit หมายถึง หน่วยของข้อมูลที่มีขนาดเล็กที่สุด
Byte หมายถึง
หน่วยของข้อมูลที่เกิดจากการนำบิตมารวมกันเป็นตัวอักขระ
Field หมายถึง
หน่วยของข้อมูลที่ประกอบขึ้นจากตัวอักขระตั้งแต่หนึ่งตัวขึ้นไปมารวมกันแล้วได้ความหมายของสิ่งใดสิ่งหนึ่ง
เช่น ชื่อ,ที่อยู่ เป็นต้น
Record หมายถึง หน่วยของข้อมูลที่เกิดจากการนำเอาเขตข้อมูลหลาย ๆ
เขตข้อมูลมารวมกันเพื่อเกิดเป็นข้อมูลเรื่องใดเรื่องหนึ่ง เช่น
ข้อมูลของนักศึกษา 1 ระเบียน (1คน)
จะประกอบด้วย รหัสประจำตัวนักศึกษา ชื่อนักศึกษา ที่อยู่ เป็นต้น
File หมายถึง
หน่วยของข้อมูลที่เกิดจากการนำข้อมูลหลาย ๆ
ระเบียนที่เป็นเรื่องเดียวกันมารวมกัน เช่น แฟ้มข้อมูลนักศึกษา
แฟ้มข้อมูลลูกค้า แฟ้มข้อมูลพนักงาน เป็นต้น
Entity หมายถึง ชื่อของสิ่งใดสิ่งหนึ่ง เปรียบเสมือนคำนาม อาจได้แก่ คน
สถานที่ สิ่งของ การกระทำ ซึ่งต้องการจัดเก็บข้อมูลไว้ เช่น เอนทิตีลูกค้า
เอนทิตีพนักงาน เป็นต้น
บางเอนทิตี
อาจจะไม่มีความหมายเลย หากขาดเอนทิตีอื่นในฐานข้อมูล เช่น
เอนทิตีประวัตินักศึกษาจะไม่มีความหมายเลย หากขาดเอนทิตีนักศึกษา
เพราะจะไม่ทราบว่าเป็นประวัติของนักศึกษาคนใด ลักษณะเช่นนี้จัดได้ว่าเอนทิตีปรวัตินักศึกษาเป็นเอนทิตีชนิดอ่อนแอ
(Weak Entity)
Attribute หมายถึง รายละเอียดข้อมูลที่แสดงลักษณะและคุณสมบัติของเอนทิตีหนึ่ง ๆ
เช่น เอนทิตีนักศึกษา ประกอบด้วย แอททริบิวต์รหัสนักศึกษา ชื่อนักศึกษา
ที่อยู่นักศึกษา เป็นต้น
ความสัมพันธ์
(Relationships) หมายถึง ความสัมพันธ์ระหว่างเอนทิตี
เช่น ความสัมพันธ์ระหว่างเอนทิตีนักศึกษา และเอนทิตีคณะวิชา เป็นลักษณะว่า
นักศึกษาแต่ละคนเรียนอยู่คณะวิชาใดคณะวิชาหนึ่ง เป็นต้น
ความสัมพันธ์ระหว่างเอนทิตี
แบ่งออกได้เป็น 3 ประเภท คือ
1. ความสัมพันธ์แบบหนึ่งต่อหนึ่ง (One-to-one
Relationships)
เป็นการแสดงความสัมพันธ์ของข้อมูลในเอนทิตีหนึ่งที่มีความสัมพันธ์กับข้อมูลในอีกเอนทิตีหนึ่ง
ในลักษณะหนึ่งต่อหนึ่ง ตัวอย่างเช่น
อาจารย์แต่ละคนสังกัดอยู่ได้เพียงคณะวิชาเดียวเท่านั้น
ความสัมพันธ์ของข้อมูลในเอนทิตีอาจารย์ไปสู่เอนทิตีคณะวิชา
จึงเป็นแบบหนึ่งต่อหนึ่ง ขณะเดียวกันแต่ละคณะวิชาก็จะมีผู้บริหารคณะ (คณะบดี)
ได้เพียงหนึ่งคน
2. ความสัมพันธ์แบบหนึ่งต่อกลุ่ม
(One-to-many Relationships)
เป็นการแสดงความสัมพันธ์ของข้อมูลในเอนทิตีหนึ่ง
ที่มีความสัมพันธ์กับข้อมูลหลาย ๆ ข้อมูลในอีกเอนทิตีหนึ่ง ตัวอย่างเช่น
ความสัมพันธ์ของข้อมูลในเอนทิตีพนักงานขาย
ไปยังข้อมูลในเอนทิตีลูกค้าเป็นแบบหนึ่งต่อกลุ่ม หมายความว่า
พนักงานขายแต่ละคนจะสามารถมีลูกค้าในความดูแลได้หลายคน ในทางตรงข้าม
ความสัมพันธ์ของข้อมูลในเอนทิตีลูกค้าไปยังเอนทิตีพนักงานขายจะเป็นแบบหนึ่งต่อหนึ่ง
หมายความว่า
ลูกค้าแต่ละคนจะติดต่อกับพนักงานขายที่ดูแลงานได้เพียงหนึ่งคนเท่านั้น
3. ความสัมพันธ์แบบกลุ่มต่อกลุ่ม
(Many-to-many Relationships)
เป็นการแสดงความสัมพันธ์ของข้อมูลสองเอนทิตีในลักษณะกลุ่มต่อกลุ่ม
ตัวอย่างเช่น
เอนทิตีใบสั่งซื้อแต่ละใบจะสามารถสั่งสินค้าได้มากกว่าหนึ่งชนิดความสัมพันธ์ของข้อมูลจากเอนทิตีใบสั่งซื้อไปยังเอนทิตีสินค้า
จึงเป็นแบบหนึ่งต่อกลุ่ม ในขณะที่สินค้าแต่ละชนิด อาจจะปรากฏว่าถูกสั่งอยู่ในใบสั่งซื้อหลายใบ
ความสัมพันธ์ของข้อมูลจากเอนทิตีสินค้าไปยังเอนทิตีใบสั่งซื้อ
จึงเป็นแบบหนึ่งต่อกลุ่ม เช่นกัน
ดังนั้นความสัมพันธ์ของเอนทิตีทั้งสองจึงเป็นแบบกลุ่มต่อกลุ่ม
ความสำคัญของการประมวลผลแบบระบบฐานข้อมูล
การจัดเก็บข้อมูลรวมเป็นฐานข้อมูลจะก่อให้เกิดประโยชน์ด้วยกันหลายประการ
พอสรุปได้ดังนี้
1. สามารถลดความซ้ำซ้อนของข้อมูลได้
2. หลักเลี่ยงความขัดแย้งของข้อมูลได้
3. สามารถใช้ข้อมูลร่วมกันได้
4. สามารถรักษาความถูกต้องเชื่อถือได้ของข้อมูล
5. สามารถกำหนดความเป็นมาตรฐานเดียวกันของข้อมูลได้
6. สามารถกำหนดระบบความปลอดภัยของข้อมูลได้
7. เกิดความเป็นอิสระของข้อมูล
รูปแบบของระบบฐานข้อมูล มีอยู่ด้วยกัน 3 ประเภท คือ
1. ฐานข้อมูลเชิงสัมพันธ์
(Relational Database) เป็นการเก็บข้อมูลในรูปแบบที่เป็นตาราง
(Table) หรือเรียกว่า (Relation) มีลักษณะเป็น
2 มิติ คือ เป็นแถว (Row) และเป็นคอลัมน์(Column)
การเชื่อมโยงข้อมูลระหว่างตารางจะเชื่อมโยงโดยใช้ Attribute
หรือคอลัมน์ที่เหมือนกันทั้งสองตารางเป็นตัวเชื่อมโยงข้อมูล
2. ฐานข้อมูลแบบเครือข่าย
(Network Database) จะเป็นการรวมระเบียนต่าง ๆ
และความสัมพันธ์ระหว่างระเบียนแต่จะต่างกับฐานข้อมูลเชิงสัมพันธ์ คือ
ในฐานข้อมูลเชิงสัมพันธ์จะแฝงความสัมพันธ์เอาไว้
โดยระเบียนที่มีความสัมพันธ์กัน
จะต้องมีค่าของข้อมูลในแอททริบิวต์ใดแอททริบิวต์หนึ่งเหมือนกันแต่ในฐานข้อมูลแบบเครือข่าย
จะแสดงความสัมพันธ์อย่างชัดเจน
3. ฐานข้อมูลแบบลำดับชั้น
(Hierarchical Database) เป็นโครงสร้างที่จัดเก็บข้อมูลในลักษณะความสัมพันธ์แบบพ่อ-
ลูก (Parent-Child Relationship Type : PCR Type) หรือเป็นโครงสร้างรูปแบบต้นไม้
(Tree) ข้อมูลที่จัดเก็บในที่นี้ คือ Record ซึ่งประกอบด้วยค่าของเขตข้อมูล (Field) ของเอนทิตีหนึ่ง
ๆ นั่นเอง ซึ่งสามารถสรุปคุณสมบัติของฐานข้อมูลแบบลำดับชั้น ได้ดังนี้
- หากระเบียนใดเป็นประเภทพ่อ-
แม่ แล้วจะมีคุณสมบัติเป็นประเภทลูก ไม่ได้
- ทุกระเบียนยกเว้นระเบียนที่เป็นพ่อ-
แม่ สามารถมีความสัมพันธ์กับระเบียนที่เป็นประเภทพ่อ-แม่ได้ หนึ่งความสัมพันธ์
- ทุกระเบียนสามารถมีคุณสมบัติเป็นระเบียนประเภทพ่อ-
แม่ได้
- ถ้าระเบียนหนึ่งมีระเบียนลูกมากกว่าหนึ่งระเบียนแล้ว
การลำดับความสัมพันธ์ของระเบียนที่เป็นลูก จะลำดับจากซ้ายไปขวา
โปรแกรมฐานข้อมูลที่นิยมใช้
โปรแกรมฐานข้อมูลเป็นโปรแกรมหรือซอฟต์แวร์ที่ช่วยจัดการข้อมูลหรือรายการต่าง ๆ
ที่อยู่ในฐานข้อมูลไม่ว่าจะเป็นการจัดเก็บ การเรียกใช้ การปรับปรุงข้อมูล
โปรแกรมฐานข้อมูลจะช่วยให้ผู้ใช้สามารถค้นหาข้อมูลได้อย่างรวดเร็ว
ซึ่งโปรแกรมฐานข้อมูลที่นิยมใช้มีอยู่ด้วยกันหลายตัว เช่น Access,
Oracle, DB2, SQL เป็นต้น โดยแต่ละโปรแกรมจะมีความสามารถต่างกัน
บางโปรแกรมใช้ง่ายแต่จะจำกัดขอบเขตการใช้งาน บางโปรแกรมใช้งานยากกว่า
แต่จะมีความสามารถในการทำงานมากกว่า
|