Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ซอฟต์แวร์ >> ซอฟต์แวร์

ฐานข้อมูล (Database) คืออะไร? คู่มือเข้าใจง่ายสำหรับมือใหม่

หากคุณเคยใช้ spreadsheet เช่น Microsoft Excel คุณเข้าใจแล้วว่าข้อมูลจัดเก็บในตารางได้อย่างไร ฐานข้อมูล (Database) ก็ใช้ตารางเช่นกัน เพื่อจัดเก็บ จัดการ และดึงข้อมูล

คุณใช้ฐานข้อมูลอยู่แล้ว (แต่อาจไม่รู้)

คุณพบพลังของฐานข้อมูลในชีวิตประจำวันตลอดเวลา เช่น เมื่อ login เข้าธนาคารออนไลน์ ธนาคารตรวจสอบ username/password แล้วแสดงยอดเงินและธุรกรรม ฐานข้อมูลทำงานเบื้องหลัง: ตรวจสอบข้อมูล login ให้สิทธิ์เข้าถึง แล้วกรองธุรกรรมแสดงตามวันที่หรือประเภทที่คุณต้องการ

ฐานข้อมูลต่างจาก Spreadsheet อย่างไร?

ฐานข้อมูลเก่งกว่าที่ จัดเก็บข้อมูลปริมาณมาก และ จัดการ/จัดการข้อมูล หลายรูปแบบ ที่ spreadsheet ทำได้ยากหรือเป็นไปไม่ได้:

  • ดึงข้อมูล (retrieve) ทุกรายการที่ตรงเงื่อนไข
  • อัปเดตรายการจำนวนมากพร้อมกัน (bulk update)
  • อ้างอิงข้ามตาราง (cross-reference records in different tables)
  • คำนวณรวมซับซ้อน (complex aggregate calculations)

องค์ประกอบของฐานข้อมูล

ฐานข้อมูลประกอบด้วยหลาย ตาราง (tables) เหมือน Excel: มี คอลัมน์ (columns) และ แถว (rows)

  • แต่ละคอลัมน์ = attribute (ลักษณะ/คุณสมบัติ)
  • แต่ละแถว = record (เรคคอร์ด/ระเบียน) เดียว

ตัวอย่าง: ตารางเก็บชื่อ-เบอร์โทรพนักงาน 50 คน บริษัท X

  • คอลัมน์: “FirstName”, “LastName”, “TelephoneNumber”
  • แต่ละแถว = ข้อมูลของ 1 คน
  • รวม 50 แถวข้อมูล + 1 แถวหัวข้อ (header row)

แต่ละตารางต้องมี ชื่อที่ไม่ซ้ำกัน และต้องมี Primary Key column เพื่อระบุ identity เฉพาะของแต่ละแถว (record)

ข้อมูลในฐานข้อมูลได้รับการคุ้มครองโดย Constraints (ข้อจำกัด) เพื่อบังคับกฎให้ข้อมูลสมบูรณ์:

  • Unique constraint: Primary key ห้ามซ้ำ
  • Check constraint: ควบคุมประเภทข้อมูล เช่น ชื่อรับข้อความธรรมดา แต่หมายเลขประจำตัวประชาชนต้องเป็นตัวเลขชุดเฉพาะ

คุณสมบัติทรงพลังที่สุด: สร้าง ความสัมพันธ์ (relationships) ระหว่างตารางด้วย Foreign Keys

ตัวอย่าง: ตาราง Customers และ Orders ลูกค้าแต่ละคน link ไป order ใน Orders table ซึ่งอาจ link ไป Products table อีก ทำให้ออกแบบง่าย จัดกลุ่มข้อมูลตาม category แทนที่จะ塞ทั้งหมดในตารางเดียว

Database Management System (DBMS)

ฐานข้อมูลเพียงเก็บข้อมูล เพื่อใช้งานจริง ต้องมี DBMS = ฐานข้อมูล + ซอฟต์แวร์ + ฟังก์ชันสำหรับดึง/ใส่ข้อมูล DBMS สร้างรายงาน บังคับกฎ constraints และดูแล schema โดยไม่มี DBMS ฐานข้อมูลก็แค่ bits และ bytes ไม่มีความหมาย

💡 อยากลองสร้างฐานข้อมูล? เริ่มต้นที่ Microsoft Access ได้เลย

คำถามที่พบบ่อย (FAQ)

Database Schema คืออะไร?
โครงสร้างของฐานข้อมูล ระบุว่าข้อมูล/อ็อบเจ็กต์ไหนเข้าสู่ระบบได้ และกำหนดความสัมพันธ์ระหว่างพวกมัน ใช้ SQL กำหนด schema ทั่วไป
Relational Database คืออะไร?
จัดเก็บข้อมูลที่เกี่ยวข้องกัน จัดระเบียบเป็นตาราง 1 หรือหลายตาราง แต่ละตารางมี unique key ระบุตัวตน
Database Query คืออะไร?
คำขอข้อมูลจากฐานข้อมูล ข้อมูลมาจาก 1 หลายตาราง หรือจาก query อื่นๆ เช่น พิมพ์ค้นหา Google = ส่ง query
Database Record คืออะไร?
ชุดข้อมูลที่จัดเก็บในตาราง เรียกอีกอย่างว่า Tuple
Foreign Key ในฐานข้อมูลคืออะไร?
องค์ประกอบร่วม link ข้อมูล 2 ตาราง Foreign key อ้างอิง primary key ของอีกตาราง (parent table) ตารางที่มี foreign key เรียก child table
Entity ในฐานข้อมูลคืออะไร?
วัตถุที่มีอยู่ในฐานข้อมูล อาจเป็น คน สถานที่ หน่วย หรือแนวคิดนามธรรม ที่ต้องการจัดเก็บข้อมูล เช่น ฐานข้อมูลโรงเรียนมี entities: นักเรียน ครู วิชา