Skip to main content

เนื้อหาภาษาไทย / Thai content

System guide Content reviewed

CRUD Operations: เพิ่ม แก้ไข ลบ และอ่านข้อมูล

บทความนี้อธิบายถึง CRUD Operations ซึ่งเป็นพื้นฐานสำคัญในการจัดการข้อมูลในฐานข้อมูล SQLite โดยประกอบด้วยการสร้าง (Create) ด้วย `INSERT INTO`, การอ่าน (Read) ด้ว...

CRUD Operations: เพิ่ม แก้ไข ลบ และอ่านข้อมูล

ในบทที่แล้ว เราได้เรียนรู้วิธีการสร้างฐานข้อมูลและตารางใน SQLite กันไปแล้ว ในบทนี้ เราจะมาเรียนรู้การใช้งานคำสั่ง SQL พื้นฐานที่สำคัญที่สุด นั่นก็คือ CRUD Operations ซึ่งเป็นหัวใจหลักของการจัดการข้อมูลในฐานข้อมูลเลยก็ว่าได้ CRUD ย่อมาจาก Create, Read, Update และ Delete ซึ่งหมายถึงการสร้าง, อ่าน, แก้ไข และลบข้อมูลตามลำดับ

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

1. การเพิ่มข้อมูล (Create) ด้วย INSERT INTO

คำสั่ง INSERT INTO ใช้สำหรับเพิ่มข้อมูลใหม่ลงในตาราง โดยมีรูปแบบการใช้งานดังนี้:

INSERT INTO ชื่อตาราง (คอลัมน์1, คอลัมน์2, ...)
VALUES (ค่า1, ค่า2, ...);

คำอธิบาย:

  • INSERT INTO: เป็นคำสั่งเริ่มต้นที่บอกว่าเราต้องการเพิ่มข้อมูลลงในตาราง
  • ชื่อตาราง: คือชื่อของตารางที่เราต้องการเพิ่มข้อมูล
  • (คอลัมน์1, คอลัมน์2, ...): คือชื่อของคอลัมน์ที่เราต้องการระบุค่าให้กับมัน ถ้าเราต้องการระบุค่าให้กับทุกคอลัมน์ในตาราง เราสามารถละเว้นส่วนนี้ได้
  • VALUES (ค่า1, ค่า2, ...): คือค่าที่เราต้องการใส่ลงในแต่ละคอลัมน์ โดยค่าเหล่านี้จะต้องเรียงตามลำดับของคอลัมน์ที่เราได้ระบุไว้

ตัวอย่าง:

สมมติว่าเรามีตารางชื่อ customers ที่มีคอลัมน์ id (INTEGER), name (TEXT) และ email (TEXT) เราสามารถเพิ่มข้อมูลใหม่ลงในตารางได้ดังนี้:

INSERT INTO customers (name, email)
VALUES ('John Doe', 'john.doe@example.com');

ในตัวอย่างนี้ เราได้ระบุค่าให้กับคอลัมน์ name และ email เท่านั้น เนื่องจากคอลัมน์ id อาจถูกกำหนดให้เป็น AUTOINCREMENT ซึ่ง SQLite จะจัดการสร้างค่าให้เองโดยอัตโนมัติ

กรณีใช้งานจริง:

ลองนึกภาพว่าคุณกำลังสร้างแอปพลิเคชันสำหรับจัดการรายชื่อผู้ติดต่อ คุณสามารถใช้คำสั่ง INSERT INTO เพื่อเพิ่มข้อมูลผู้ติดต่อใหม่ลงในฐานข้อมูลได้

ข้อผิดพลาดที่พบบ่อย:

  • ลำดับของค่าไม่ถูกต้อง: ตรวจสอบให้แน่ใจว่าลำดับของค่าใน VALUES ตรงกับลำดับของคอลัมน์ที่เราได้ระบุไว้
  • ชนิดข้อมูลไม่ตรงกัน: ค่าที่เราใส่ลงในแต่ละคอลัมน์จะต้องมีชนิดข้อมูลที่ตรงกับชนิดข้อมูลของคอลัมน์นั้นๆ
  • ละเว้นคอลัมน์ที่จำเป็น: ถ้าคอลัมน์ใดมีข้อจำกัด NOT NULL เราจะต้องระบุค่าให้กับคอลัมน์นั้นเสมอ

2. การอ่านข้อมูล (Read) ด้วย SELECT

คำสั่ง SELECT ใช้สำหรับดึงข้อมูลจากตาราง โดยมีรูปแบบการใช้งานดังนี้:

SELECT คอลัมน์1, คอลัมน์2, ...
FROM ชื่อตาราง;

คำอธิบาย:

  • SELECT: เป็นคำสั่งเริ่มต้นที่บอกว่าเราต้องการดึงข้อมูล
  • คอลัมน์1, คอลัมน์2, ...: คือชื่อของคอลัมน์ที่เราต้องการดึงข้อมูล ถ้าเราต้องการดึงข้อมูลทุกคอลัมน์ เราสามารถใช้เครื่องหมาย * ได้
  • FROM: เป็นคำสั่งที่บอกว่าเราต้องการดึงข้อมูลจากตารางใด
  • ชื่อตาราง: คือชื่อของตารางที่เราต้องการดึงข้อมูล

ตัวอย่าง:

ถ้าเราต้องการดึงข้อมูล name และ email จากตาราง customers เราสามารถใช้คำสั่งดังนี้:

SELECT name, email
FROM customers;

ถ้าเราต้องการดึงข้อมูลทุกคอลัมน์จากตาราง customers เราสามารถใช้คำสั่งดังนี้:

SELECT *
FROM customers;

กรณีใช้งานจริง:

ในแอปพลิเคชันจัดการรายชื่อผู้ติดต่อ เราสามารถใช้คำสั่ง SELECT เพื่อดึงรายชื่อผู้ติดต่อทั้งหมดมาแสดงผลบนหน้าจอได้

ข้อผิดพลาดที่พบบ่อย:

  • พิมพ์ชื่อคอลัมน์ผิด: ตรวจสอบให้แน่ใจว่าเราพิมพ์ชื่อคอลัมน์ถูกต้อง
  • พิมพ์ชื่อตารางผิด: ตรวจสอบให้แน่ใจว่าเราพิมพ์ชื่อตารางถูกต้อง

3. การแก้ไขข้อมูล (Update) ด้วย UPDATE

คำสั่ง UPDATE ใช้สำหรับแก้ไขข้อมูลในตาราง โดยมีรูปแบบการใช้งานดังนี้:

UPDATE ชื่อตาราง
SET คอลัมน์1 = ค่า1, คอลัมน์2 = ค่า2, ...
WHERE เงื่อนไข;

คำอธิบาย:

  • UPDATE: เป็นคำสั่งเริ่มต้นที่บอกว่าเราต้องการแก้ไขข้อมูล
  • ชื่อตาราง: คือชื่อของตารางที่เราต้องการแก้ไขข้อมูล
  • SET: เป็นคำสั่งที่บอกว่าเราต้องการกำหนดค่าใหม่ให้กับคอลัมน์ใดบ้าง
  • คอลัมน์1 = ค่า1, คอลัมน์2 = ค่า2, ...: คือชื่อของคอลัมน์ที่เราต้องการแก้ไขและค่าใหม่ที่เราต้องการกำหนดให้กับคอลัมน์นั้นๆ
  • WHERE: เป็นส่วนที่ระบุเงื่อนไขว่าเราต้องการแก้ไขข้อมูลในแถวใดบ้าง หากไม่ระบุ WHERE จะทำการแก้ไขข้อมูลทุกแถวในตาราง
  • เงื่อนไข: คือเงื่อนไขที่เราใช้ในการระบุแถวที่เราต้องการแก้ไข

ตัวอย่าง:

ถ้าเราต้องการเปลี่ยน email ของลูกค้าที่มี id เท่ากับ 1 เป็น 'new.email@example.com' เราสามารถใช้คำสั่งดังนี้:

UPDATE customers
SET email = 'new.email@example.com'
WHERE id = 1;

กรณีใช้งานจริง:

ในแอปพลิเคชันจัดการรายชื่อผู้ติดต่อ หากผู้ใช้เปลี่ยน email address เราสามารถใช้คำสั่ง UPDATE เพื่ออัพเดทข้อมูลในฐานข้อมูลได้

ข้อผิดพลาดที่พบบ่อย:

  • ลืมระบุ WHERE clause: หากลืมระบุ WHERE clause ข้อมูลทุกแถวในตารางจะถูกแก้ไข ซึ่งอาจทำให้ข้อมูลเสียหายได้
  • เงื่อนไขไม่ถูกต้อง: ตรวจสอบให้แน่ใจว่าเงื่อนไขใน WHERE clause ถูกต้องและสามารถระบุแถวที่เราต้องการแก้ไขได้อย่างแม่นยำ
  • ชนิดข้อมูลไม่ตรงกัน: ค่าที่เราใส่ลงในแต่ละคอลัมน์จะต้องมีชนิดข้อมูลที่ตรงกับชนิดข้อมูลของคอลัมน์นั้นๆ

4. การลบข้อมูล (Delete) ด้วย DELETE

คำสั่ง DELETE ใช้สำหรับลบข้อมูลออกจากตาราง โดยมีรูปแบบการใช้งานดังนี้:

DELETE FROM ชื่อตาราง
WHERE เงื่อนไข;

คำอธิบาย:

  • DELETE FROM: เป็นคำสั่งเริ่มต้นที่บอกว่าเราต้องการลบข้อมูล
  • ชื่อตาราง: คือชื่อของตารางที่เราต้องการลบข้อมูล
  • WHERE: เป็นส่วนที่ระบุเงื่อนไขว่าเราต้องการลบข้อมูลในแถวใดบ้าง หากไม่ระบุ WHERE จะทำการลบข้อมูลทุกแถวในตาราง
  • เงื่อนไข: คือเงื่อนไขที่เราใช้ในการระบุแถวที่เราต้องการลบ

ตัวอย่าง:

ถ้าเราต้องการลบข้อมูลลูกค้าที่มี id เท่ากับ 1 ออกจากตาราง เราสามารถใช้คำสั่งดังนี้:

DELETE FROM customers
WHERE id = 1;

กรณีใช้งานจริง:

ในแอปพลิเคชันจัดการรายชื่อผู้ติดต่อ หากผู้ใช้ต้องการลบผู้ติดต่อออกจากระบบ เราสามารถใช้คำสั่ง DELETE เพื่อลบข้อมูลออกจากฐานข้อมูลได้

ข้อผิดพลาดที่พบบ่อย:

  • ลืมระบุ WHERE clause: หากลืมระบุ WHERE clause ข้อมูลทุกแถวในตารางจะถูกลบ ซึ่งอาจทำให้ข้อมูลเสียหายได้
  • เงื่อนไขไม่ถูกต้อง: ตรวจสอบให้แน่ใจว่าเงื่อนไขใน WHERE clause ถูกต้องและสามารถระบุแถวที่เราต้องการลบได้อย่างแม่นยำ

ข้อควรระวัง: การลบข้อมูลเป็นสิ่งที่ต้องระมัดระวังเป็นพิเศษ เนื่องจากข้อมูลที่ถูกลบไปแล้วจะไม่สามารถกู้คืนได้ง่ายๆ ดังนั้นควรตรวจสอบให้แน่ใจก่อนที่จะทำการลบข้อมูลเสมอ

ในบทนี้ เราได้เรียนรู้คำสั่ง SQL พื้นฐานที่สำคัญที่สุดในการจัดการข้อมูลใน SQLite นั่นก็คือ CRUD Operations ซึ่งประกอบด้วยคำสั่ง INSERT INTO, SELECT, UPDATE และ DELETE การเข้าใจและใช้งานคำสั่งเหล่านี้ได้อย่างคล่องแคล่ว จะเป็นพื้นฐานที่สำคัญในการพัฒนาแอปพลิเคชันใดๆ ก็ตามที่ต้องมีการจัดเก็บและจัดการข้อมูล ในบทถัดไป เราจะมาเรียนรู้การใช้ WHERE clause เพื่อกรองข้อมูลที่เราต้องการดึงออกมาจากฐานข้อมูลกัน

Office.in.th Custom Service

Want to build or adapt a system from this structure?

Office.in.th designs and develops enterprise web applications, API integrations, and public- and private-sector management systems, with long-term support.

See our software development service