คู่มือ

CRUD คืออะไร? Create, Read, Update, Delete อธิบายแบบเข้าใจง่าย

CRUD ย่อมาจาก create, read, update และ delete ซึ่งคือสี่สิ่งพื้นฐานที่แอปทำกับข้อมูลที่เก็บไว้ การเพิ่มลูกค้าใหม่คือ create การดูรายชื่อลูกค้าคือ read การเปลี่ยนเบอร์โทรของลูกค้าคือ update และการลบลูกค้าคือ delete แอปธุรกิจส่วนใหญ่ เช่น CRM ระบบจอง ตัวติดตามคลังสินค้า และแผงผู้ดูแลระบบ เป็น CRUD เป็นหลัก โดยมีกฎและเลย์เอาต์ที่ดีอยู่ด้านบน

ทำไมเรื่องนี้สำคัญเมื่อสร้างแอปด้วย AI

CRUD คือคำศัพท์ที่เปลี่ยนไอเดียแอปที่คลุมเครือให้เป็นคำขอที่แม่นยำ "แอปสำหรับจัดการซัพพลายเออร์ของเรา" ทำให้ AI ต้องเดาเอง แต่ "สร้าง อ่านรายการ แก้ไข และลบซัพพลายเออร์ โดยมีฟิลด์เหล่านี้" บอกได้ชัดเจนว่าต้องสร้างหน้าจอ การดำเนินการฐานข้อมูล และเส้นทางเซิร์ฟเวอร์อะไรบ้าง

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

ตัวอย่างเปรียบเทียบในชีวิตประจำวัน: กล่องการ์ดสูตรอาหาร

ลองนึกภาพกล่องการ์ดสูตรอาหารบนชั้นในครัว

  • Create: เขียนการ์ดใบใหม่แล้วเก็บเข้ากล่อง
  • Read: พลิกดูในกล่อง หรือดึงใบที่เป็นของลาซานญา
  • Update: ขีดฆ่า "ชีส 200 กรัม" แล้วเขียน "250 กรัม"
  • Delete: หยิบการ์ดออกและทิ้ง

ตอนนี้เพิ่มกฎ: มีเพียงหัวหน้าพ่อครัวเท่านั้นที่ทิ้งการ์ดได้ ทุกการ์ดต้องมีชื่อ และห้ามเก็บการ์ดสองใบที่มีชื่อเดียวกัน นั่นคือแอป CRUD ที่มีการตรวจข้อมูลและสิทธิ์ ซึ่งคือสิ่งที่แอปจริงส่วนใหญ่เป็น

CRUD ปรากฏในแต่ละชั้นอย่างไร

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

การดำเนินการบนหน้าจอคำขอ API (REST)SQL ในฐานข้อมูล
Createปุ่ม "New" และฟอร์มPOST /api/suppliersINSERT
Readรายการพร้อมการค้นหาและตัวกรอง หน้ารายละเอียดGET /api/suppliers และ GET /api/suppliers/42SELECT
Updateฟอร์ม "Edit" หรือการแก้ไขในบรรทัดPUT หรือ PATCH /api/suppliers/42UPDATE
Deleteปุ่ม "Delete" พร้อมการยืนยันDELETE /api/suppliers/42DELETE (หรือทำเครื่องหมายแถวว่าถูกลบ)

หน้าจอคือฟรอนต์เอนด์ คำขอ API คือวิธีที่ฟรอนต์เอนด์คุยกับแบ็กเอนด์ และ SQL คือวิธีที่แบ็กเอนด์คุยกับฐานข้อมูล หากคำเหล่านี้ยังใหม่สำหรับคุณ ดูAPI คืออะไร และฐานข้อมูลคืออะไร

ตัวอย่างการทำงาน: ตัวติดตามอุปกรณ์ยืม

แผนกสื่อของโรงเรียนให้นักเรียนยืมกล้องและไมโครโฟน และมักทำอุปกรณ์หายไปจากการติดตาม พวกเขาต้องการแอปที่เรียบง่าย

เรกคอร์ด มีสองประเภท: อุปกรณ์ (ชื่อ ประเภท หมายเลขซีเรียล สภาพ) และ การยืม (อุปกรณ์ชิ้นไหน นักเรียนคนไหน วันที่ยืม วันครบกำหนด วันที่คืน)

CRUD สำหรับอุปกรณ์:

  • Create: เจ้าหน้าที่เพิ่มกล้องใหม่พร้อมหมายเลขซีเรียล กฎ: หมายเลขซีเรียลต้องไม่ซ้ำ
  • Read: รายการอุปกรณ์ทั้งหมด กรองตามประเภทและ "ว่างตอนนี้" และหน้ารายละเอียดที่แสดงประวัติการยืมของอุปกรณ์หนึ่งชิ้น
  • Update: เปลี่ยนสภาพเป็น "ต้องซ่อม"
  • Delete: โดยปกติ ไม่ ลบจริง หากลบกล้องที่เคยถูกยืม 30 ครั้ง ประวัติการยืมจะขาดการเชื่อมโยง แต่ให้ทำเครื่องหมายว่า "เลิกใช้" เพื่อให้ไม่ปรากฏในรายการที่ว่าง แต่ประวัติยังอยู่ นี่เรียกว่า soft delete

CRUD สำหรับการยืม:

  • Create: ให้นักเรียนยืมอุปกรณ์ กฎ: ไม่สามารถยืมอุปกรณ์ที่กำลังถูกยืมอยู่
  • Read: "การยืมที่เกินกำหนด" คือรายการที่เลยวันครบกำหนดแล้วและยังไม่มีวันคืน
  • Update: บันทึกวันที่คืนเมื่ออุปกรณ์กลับมา
  • Delete: เฉพาะเจ้าหน้าที่ สำหรับการยืมที่ป้อนผิดพลาด

สิทธิ์ นักเรียนอ่านสิ่งที่ว่างได้ แต่มีเพียงเจ้าหน้าที่เท่านั้นที่สร้าง แก้ไข หรือลบได้ การตรวจเหล่านี้ทำงานบนเซิร์ฟเวอร์ ไม่ใช่แค่การซ่อนปุ่ม

นั่นคือแอปทั้งหมด ส่วนที่น่าสนใจ ได้แก่ การไม่ยืมซ้ำซ้อน รายการที่เกินกำหนด และประวัติต่อชิ้น คือกฎและคิวรีที่อยู่บน CRUD ธรรมดา

คำศัพท์สำคัญ

  • เรกคอร์ด (แถว): รายการหนึ่งรายการ เช่น ซัพพลายเออร์หนึ่งรายหรือการยืมหนึ่งครั้ง
  • Entity / resource: ประเภทของเรกคอร์ด เช่น "ซัพพลายเออร์" แต่ละประเภทมักมีตารางของตัวเองและชุดหน้าจอ CRUD ของตัวเอง
  • Validation: การตรวจสอบข้อมูลที่ป้อน เช่น ฟิลด์ที่จำเป็น อีเมลที่ถูกต้อง จำนวนที่เป็นบวก ทำทั้งในฟอร์มเพื่อความสะดวก และ บนเซิร์ฟเวอร์เพื่อความปลอดภัย
  • Soft delete: การทำเครื่องหมายเรกคอร์ดว่าถูกลบหรือเก็บถาวร แทนการลบจริง เพื่อให้ประวัติและการเชื่อมโยงยังอยู่
  • Pagination: การแสดงรายการยาวทีละหน้า เพื่อให้แอปยังเร็ว
  • Audit log: บันทึกว่าใครสร้าง แก้ไข หรือลบอะไร และเมื่อไร
  • Admin panel: ชุดหน้าจอ CRUD สำหรับเจ้าหน้าที่ใช้จัดการข้อมูลของแอป

ความผิดพลาดและความเข้าใจผิดที่พบบ่อย

  • ลืมการดำเนินการหนึ่งในสี่ แอปมักส่งมอบพร้อม create และ read แต่ไม่มี edit ทำให้ทุกการพิมพ์ผิดต้องลบแล้วป้อนใหม่ ตรวจทั้งสี่อย่างสำหรับทุก entity
  • การลบที่ทำให้สิ่งอื่นพัง การลบลูกค้าที่มีใบแจ้งหนี้อาจทิ้งใบแจ้งหนี้ที่ไม่มีเจ้าของหรือลบประวัติ ตัดสินใจเป็นรายประเภท: บล็อกการลบ ใช้ soft delete หรือลบเรกคอร์ดที่เกี่ยวข้องด้วย
  • สิทธิ์อยู่แค่ในหน้าจอ การซ่อนปุ่ม Delete ไม่ได้หยุดใครที่ส่งคำขอ DELETE เซิร์ฟเวอร์ต้องตรวจว่าใครเป็นผู้ขอ
  • อัปเดตด้วย ID โดยไม่ตรวจความเป็นเจ้าของ หากผู้ใช้ A แก้ไข /api/notes/42 ได้โดยเปลี่ยนตัวเลขใน URL เขาอาจแก้โน้ตของผู้ใช้ B ได้ ทุกการอัปเดตและการลบต้องยืนยันว่าเรกคอร์ดเป็นของผู้ที่ขอ
  • ไม่มีการยืนยันตอนลบ การแตะพลาดเพียงครั้งเดียวไม่ควรทำลายข้อมูล ควรมีขั้นตอนยืนยันหรือการเลิกทำ
  • "CRUD หมายความว่าพื้นฐาน ไม่คุ้มที่จะสร้าง" ผลิตภัณฑ์ที่มีคุณค่าหลายอย่างคือแอป CRUD ที่เหมาะกับขั้นตอนการทำงานมากกว่าเครื่องมือทั่วไป

สิ่งที่ควรขอจากตัวสร้างแอปด้วย AI ของคุณ

ใช้รูปแบบนี้สำหรับแต่ละ entity ทีละอย่าง:

สร้างฟีเจอร์ suppliers ที่มีรายการ สร้าง แก้ไข และลบ ฟิลด์: name (จำเป็น), contact email (อีเมลที่ถูกต้อง), phone, category (หนึ่งใน: food, packaging, cleaning), notes หน้ารายการมีการค้นหาตามชื่อและกรองตามหมวดหมู่ แสดง 20 รายการต่อหน้า ยืนยันก่อนลบ หากซัพพลายเออร์มีออเดอร์ให้เก็บถาวรแทนการลบ มีเพียงเจ้าหน้าที่ที่ล็อกอินแล้วเท่านั้นที่สร้าง แก้ไข หรือเก็บถาวรได้ บังคับใช้ที่เซิร์ฟเวอร์

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

แอป CRUD บน Mythex

แอป CRUD เป็นหนึ่งในสิ่งที่ตัวสร้างแอปด้วย AI ทำได้ดีที่สุด และ Mythex ก็ไม่ต่างกัน ขอ entity และฟิลด์ในแชต แล้ว Mythex จะแนบฐานข้อมูล Postgres เข้ากับโปรเจกต์ สร้างตาราง และสร้างหน้ารายการ ฟอร์ม และรายละเอียดในพรีวิวสด จากนั้นคุณรัน /test เพื่อตรวจขั้นตอนได้ เอกสารมีสูตรแอป CRUD พร้อม starter prompt และตัวสร้างเครื่องมือภายใน กับเทมเพลตแดชบอร์ด เป็นจุดเริ่มต้นที่ดี

คำถาม

CRUD ย่อมาจากอะไร?

CRUD ย่อมาจาก create (สร้าง) read (อ่าน) update (แก้ไข) และ delete (ลบ) คือการเพิ่มเรกคอร์ดใหม่ ดูเรกคอร์ด เปลี่ยนแปลงเรกคอร์ด และลบเรกคอร์ดออก แอปเกือบทุกแอปที่เก็บข้อมูลถูกสร้างจากการดำเนินการทั้งสี่นี้

แอป CRUD คืออะไร?

แอป CRUD คือแอปที่งานหลักคือการจัดการเรกคอร์ดผ่านฟอร์ม รายการ และหน้ารายละเอียด เช่น CRM ตัวติดตามคลังสินค้า ระบบจัดการการจองสำหรับผู้ดูแล หรือหลังบ้านของเว็บหางาน เครื่องมือภายในและแผงผู้ดูแลระบบส่วนใหญ่เป็นแอป CRUD

CRUD เกี่ยวข้องกับ REST API อย่างไร?

ใน REST API ทั่วไป create ใช้คำขอ POST, read ใช้ GET, update ใช้ PUT หรือ PATCH และ delete ใช้ DELETE จากนั้นแบ็กเอนด์รันการดำเนินการฐานข้อมูลที่ตรงกัน ได้แก่ INSERT, SELECT, UPDATE หรือ DELETE

แอป CRUD เรียบง่ายเกินไปจนไม่มีคุณค่าหรือไม่?

ไม่ ซอฟต์แวร์ธุรกิจที่มีประโยชน์จำนวนมากคือ CRUD ที่มีกฎ สิทธิ์ และรายงานที่ดีอยู่ด้านบน คุณค่าอยู่ที่การออกแบบข้อมูลให้ดีและการปรับให้เข้ากับขั้นตอนการทำงาน ไม่ได้อยู่ที่เทคโนโลยีแปลกใหม่

Mythex · Pricing · สร้างอะไรก็ได้ด้วย AI · เทมเพลตเว็บไซต์และแอป · เปรียบเทียบ Mythex · อภิธานศัพท์การสร้างแอปด้วย AI · เครื่องมือฟรีสำหรับสร้างแอปด้วย AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)