วันอาทิตย์ที่ 4 กรกฎาคม พ.ศ. 2553

ความรู้พื้นฐานเกี่ยวกับระบบฐานข้อมูล

ระบบฐานข้อมูล (Database System) หมายถึง โครงสร้างข้อมูลที่ประกอบด้วยรายละเอียดของข้อมูลที่เกี่ยวข้องกันที่จะนำมาใช้ในระบบต่าง ๆ ร่วมกัน


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

คำศัพท์พื้นฐาน

  • บิท (Bit) หมายถึงหน่วยของข้อมูลที่มีขนาดเล็กที่สุด
  • ไบท์ (Byte) หมายถึงหน่วยของข้อมูลที่กิดจากการนำบิทมารวมกันเป็นตัวอักขระ มีขนาด 8 บิท
  • เขตข้อมูล (Field) หมายถึงหน่วยของข้อมูลที่เกิดจากตัวอักขระตั้งแต่หนึ่งตัวขึ้นไปมารวมกันแล้วได้ความหมายของสิ่งใดสิ่งหนึ่ง เช่น ชื่อ นามสกุล เพศ วันเกิด ที่อยู่ เบอร์โทรเป็นต้น
  • ระเบียน (Record) หมายถึงหน่วยของข้อมูลที่เกิดจากการนเอาเขตข้อมูลหลาย ๆ เขตข้อมูลมารวมกัน เพื่อเกิดเป็นข้อมูลเรื่องใดเรื่องหนึ่ง เช่น ข้อมูลของนักศึกษา 1 ระเบียน
  • แฟ้มข้อมูล (File) หมายถึงหน่วยของข้อมูลที่เกิดจากการนำข้อมูลหลาย ๆ ระเบียนที่เป็นเรื่องเดียวกันมารวมกัน เช่น แฟ้มข้อมูลนักศึกษา แฟ้มข้อมูลลูกค้า แฟ้มข้อมูลพนักงาน
  • เอนทิตี้ (Entity) หมายถึงชื่อของสิ่งใดสิ่งหนึ่ง ได้แก่ คน สถานที่ สิ่งของ การกระทำ ซึ่งต้องการจัดเก็บข้อมูลไว้ เช่น เอนทิตี้นักศึกษา ภาควิชา อาจารย์ เป็นต้น
  • เอนทิตี้ชนิดอ่อนแอ (Weak Entity) หมายถึงเอนทิตี้ที่ไม่สามารถมีขึ้นได้ ถ้าขาดเอนทิตี้อื่นในฐานข้อมูล
  • แอททริบิวต์ (Attribute) หมายถึงข้อมูลที่แสดงลักษณะและคุณสมบัติของเอนทิตี้หนึ่ง ๆ เช่น
    เอนทิตี้นักศึกษา ประกอบด้วยแอทริบิวต์
    - รหัสนักศึกษา
    - ชื่อ
    - นามสกุล
  • คีย์หลัก (Primary Key) หมายถึงฟิลด์ข้อมูลที่ใช้บ่งบอกถึงความแตกต่างในสิ่งที่เรากำลังพูดถึง เช่น
    - พนักงานในหน่วยงานต่าง ๆ Primary Key หมายถึงรหัสพนักงานแต่ละคนซึ่งจะไม่ซ้ำกันเลย
    - ลูกหนี้แต่ละคน Primary Key หมายถึงรหัสของลูกหนี้แต่ละคนซึ่งจะไม่ซ้ำกันเลย
    - นักศึกษาแต่ละคน Primary Key หมายถึงรหัสนักศึกษาแต่ละคนจะไม่ซ้ำกันเลย
    ประโยชน์ของ Primary Key มีดังนี้- ช่วยป้องกันการป้อนข้อมูลซ้ำ
    - ช่วยในการเรียงข้อมูล ทำให้การเข้าถึงข้อมูลนี้ได้เร็วขึ้น
    - ช่วยป้องกันการละเว้น หรือไม่ป้อนข้อมูล
    - ช่วยในการสร้างความสัมพันธ์ระหว่าง Table ซึ่งเป็นข้อกำหนดของฐานข้อมูลเชิงสัมพันธ์บังคับ ว่า ในการสร้างความสัมพันธ์ระหว่าง 2 Table ต้องมี Table หนึ่งมีฟิลด์ที่กำหนดเป็น Primary Key
    - ช่วยในการสร้างการเชื่อมต่อหรือ Join ตารางในฐานข้อมูล
  • คีย์คู่แข่ง (Candidate Key) หมายถึงฟิลด์ข้อมูลหนึ่งหรือหลายฟิลด์ข้อมูลที่มีคุณสมบัติที่เป็น Primary Key ได้ แต่ไม่ได้เป็นคีย์หลัก เช่น ชื่อและนามสกุล สามารถรวมกันเป็นคีย์คู่แข่งได้
  • คีย์ร่วม (Composite Key) หมายถึงฟิลด์ข้อมูลที่ใช้รวมกับฟิลด์อื่น ๆมาใช้เป็น Primay Key ของตารางเช่น เอนทิตี้ใบแสดงรายการสังซื้อ จะมีฟิลด์ข้อมูล เลขที่ใบสั่งซื้อ กับ รหัสสินค้า ร่วมกันเป็น Primary Key ของตาราง เป็นต้น
  • คีย์นอก (Foreign Key) หมายถึงฟิลด์ข้อมูลที่เชื่อมโยงไปยังตารางอื่น โดยที่ตารางทั้งสองมีความสัมพันธ์แบบ One-to-Many ต่อกัน
  • ความสัมพันธ์ (Relationships) หมายถึงความสัมพันธ์ระหว่างเอนทิตี้ เช่น ความสัมพันธ์ระหว่างเอนทิตี้นักศึกษาและเอนทิตี้คณะวิชา เป็นลักษณะว่า นักศึกษาแต่ละคนเรียนสังกัดคณะวิชาใดคณะวิชาหนึ่ง
    ประเภทความสัมพันธ์สำหรับฐานข้อมูล
    1. ความสัมพันธ์แบบหนึ่งต่อหนึ่ง (One-to-one Relationships) เป็นการแสดงความสัมพันธ์ของข้อมูลในเอนทิตี้หนึ่งที่มีความสัมพันธ์กับข้อมูลในอีกเอนทิตี้หนึ่ง ในลักษณะหนึ่งต่อหนึ่ง (1 : 1)
    2. ความสัมพันธ์แบบหนึ่งต่อกลุ่ม (One-to-many Relationships) เป็นการแสดงความสัมพันธ์ของข้อมูลในเอนทิตี้หนึ่งที่มีความสัมพันธ์กับข้อมูลหลาย ๆ ข้อมูลในอีกเอนทิตี้หนึ่งในลักษณะ (1:m)
    3. ความสัมพันธ์แบบกลุ่มต่อกลุ่ม (Many-to-many Relationships) เป็นการแสดงความสัมพันธ์ของข้อมูลสองเอนทิตี้ในลักษณะกลุ่มต่อกลุ่ม (m:n)



สำหรับรายละเอียดเกี่ยวกับเรื่องความสัมพันธ์แบบต่างๆ ผมจะได้มีโอกาส หาข้อมูลมาเขียนเป็นบทความเชิงลึกขึ้นไปอีกต่อไปนะครับ

ก็หวังว่าบทความนี้จะเป็นประโยชน์บ้างสำหรับผู้เริ่มต้นศึกษาฐานข้อมูล ไม่มากก็น้อย แล้วคอยพบกับบทความที่จะคอยมา Update เรื่อยๆเท่าที่พอจะมีเวลาครับ