05-database.html

7.05 KB
22/10/2025 02:47
HTML
05-database.html
<div class="breadcrumb">
  <span class="breadcrumb-link" onclick="loadLesson('intro')">หน้าแรก</span> / <span>ฐานข้อมูล</span>
</div>

<h2><span class="emoji">💾</span>ฐานข้อมูล - จัดเก็บข้อมูลอย่างมีประสิทธิภาพ</h2>

<p>ฐานข้อมูล (Database) คือที่เก็บข้อมูลที่จัดระเบียบอย่างเป็นระบบ เมื่อเว็บไซต์ของคุณมีผู้ใช้จำนวนมากหรือข้อมูลจำนวนมาก คุณจะต้องใช้ฐานข้อมูล</p>

<h3>ทำไมต้องใช้ฐานข้อมูล?</h3>

<ul>
  <li><strong>จัดเก็บข้อมูลจำนวนมาก:</strong> ฐานข้อมูลสามารถเก็บข้อมูลได้มากกว่าการใช้ไฟล์ธรรมดา</li>
  <li><strong>ค้นหาข้อมูลได้อย่างรวดเร็ว:</strong> ฐานข้อมูลมีการจัดดัชนี (Indexing) ที่ช่วยให้ค้นหาข้อมูลได้เร็ว</li>
  <li><strong>ความปลอดภัย:</strong> ฐานข้อมูลมีระบบการเข้าถึง (Access Control) ที่ช่วยปกป้องข้อมูล</li>
  <li><strong>ความสมบูรณ์ของข้อมูล:</strong> ฐานข้อมูลมีกลไกการตรวจสอบเพื่อให้ข้อมูลถูกต้อง</li>
</ul>

<h3>ประเภทของฐานข้อมูล</h3>

<table class="comparison-table">
  <tr>
    <th>ประเภท</th>
    <th>ตัวอย่าง</th>
    <th>ความเหมาะสม</th>
  </tr>
  <tr>
    <td><strong>Relational (SQL)</strong></td>
    <td>SQLite, MySQL, PostgreSQL</td>
    <td>ข้อมูลที่มีความสัมพันธ์ชัดเจน เช่น ข้อมูลผู้ใช้, สินค้า</td>
  </tr>
  <tr>
    <td><strong>NoSQL</strong></td>
    <td>MongoDB, Firebase</td>
    <td>ข้อมูลที่ไม่มีโครงสร้างชัดเจน เช่น JSON documents</td>
  </tr>
</table>

<h3>SQLite - ฐานข้อมูลสำหรับผู้เริ่มต้น</h3>

<p>SQLite เป็นระบบจัดการฐานข้อมูลเชิงสัมพันธ์ที่มีขนาดเล็ก ทำงานได้ในไฟล์เดียว และไม่ต้องมีการตั้งค่าเซิร์ฟเวอร์ ทำให้เหมาะอย่างยิ่งสำหรับผู้เริ่มต้น</p>

<h4>ข้อดีของ SQLite</h4>

<ul>
  <li>ง่ายต่อการติดตั้งและใช้งาน</li>
  <li>ไม่ต้องตั้งค่าเซิร์ฟเวอร์ที่ซับซ้อน</li>
  <li>ไฟล์เดียว - ง่ายต่อการจัดการและย้าย</li>
  <li>เหมาะสำหรับการเรียนรู้และโปรเจกต์ขนาดเล็ก</li>
</ul>

<h3>การติดตั้ง SQLite</h3>

<div class="step-card">
  <h4>สำหรับ Windows</h4>
  <ol>
    <li>ไปที่ <a href="https://sqlite.org/download.html" target="_blank">sqlite.org/download.html</a></li>
    <li>ดาวน์โหลด <code>sqlite-tools-win32-x86-*.zip</code> (หรือเวอร์ชัน 64-bit)</li>
    <li>แตกไฟล์และเพิ่มพาธของโฟลเดอร์ลงใน Environment Variables</li>
    <li>ตรวจสอบด้วยการรันคำสั่ง: <code>sqlite3 --version</code></li>
  </ol>
</div>

<div class="step-card">
  <h4>สำหรับ macOS/Linux</h4>
  <p>SQLite มักจะติดตั้งมาแล้วในระบบ หากไม่มี คุณสามารถติดตั้งได้ด้วยคำสั่ง:</p>
  <pre><code class="language-bash">
# macOS (ใช้ Homebrew)
brew install sqlite3

# Linux (Ubuntu/Debian)
sudo apt-get install sqlite3
    </code></pre>
</div>

<h3>การใช้งาน SQLite เบื้องต้น</h3>

<pre><code class="language-sql"># สร้าง/เปิดฐานข้อมูล
sqlite3 mydatabase.db

# สร้างตาราง
CREATE TABLE users (
  id INTEGER PRIMARY KEY,
  name TEXT,
  email TEXT,
  age INTEGER
);

# ใส่ข้อมูล
INSERT INTO users (name, email, age) VALUES ('สมชาย', 'somchai@example.com', 25);

# ดึงข้อมูล
SELECT * FROM users;

# อัปเดตข้อมูล
UPDATE users SET age = 26 WHERE name = 'สมชาย';

# ลบข้อมูล
DELETE FROM users WHERE id = 1;

# ออกจาก SQLite
.quit</code></pre>

<h3>เครื่องมือ GUI สำหรับ SQLite</h3>

<p>การใช้ Command Line อาจจะซับซ้อนสำหรับผู้เริ่มต้น มีเครื่องมือ GUI ที่ช่วยให้จัดการฐานข้อมูล SQLite ได้ง่ายขึ้น</p>

<div class="feature-grid">
  <div class="feature-card">
    <h4>DB Browser for SQLite</h4>
    <p>เครื่องมือ GUI ที่ได้รับความนิยมสูง สำหรับสร้าง, ออกแบบ, และแก้ไขไฟล์ฐานข้อมูล SQLite</p>
  </div>
  <div class="feature-card">
    <h4>SQLiteStudio</h4>
    <p>เครื่องมือ GUI ที่มีคุณสมบัติครบครัน รองรับหลายแพลตฟอร์ม</p>
  </div>
</div>

<h3>การเชื่อมต่อเว็บกับฐานข้อมูล (แนวคิด)</h3>

<p>เพื่อให้เว็บไซต์ของคุณสามารถเก็บและดึงข้อมูลจากฐานข้อมูล คุณจะต้องใช้ Backend Language เช่น Node.js (JavaScript), Python (Flask/Django), หรือ PHP</p>

<div class="info-box">
  <strong>ℹ️ ข้อมูล:</strong> Backend คือส่วนของเว็บไซต์ที่ทำงานบนเซิร์ฟเวอร์ ส่วน Frontend คือส่วนที่ทำงานบนเบราว์เซอร์ของผู้ใช้
</div>

<div class="navigation">
  <button class="btn btn-primary" id="prev-btn" data-current="database">← ก่อนหน้า</button>
  <button class="btn btn-primary" id="next-btn" data-current="database">ถัดไป →</button>
</div>