~/VibeHandbook
PDF ฟรี

บท 14 · 10

สรุปและแบบฝึกหัด

ประเด็นสำคัญที่ควรจำ

  • แอปส่วนใหญ่ต้องการเพียงหนึ่งในสามรูปแบบการจัดเก็บข้อมูล — เชิงสัมพันธ์ เอกสาร หรือคีย์-แวลู — และเชิงสัมพันธ์คือค่าเริ่มต้นที่ปลอดภัย
  • เริ่มด้วยฐานข้อมูลที่มีคนดูแลให้ คุณยังคงเป็นเจ้าของข้อมูลและตัดสินใจเรื่องสคีมา ส่วนแพลตฟอร์มดูแลเรื่องเซิร์ฟเวอร์ให้
  • การออกแบบสคีมาที่ดีหมายถึงชนิดข้อมูลที่ตรงกับความเป็นจริง มี foreign key และเงื่อนไขครบถ้วน มี index ที่สมเหตุสมผล และไม่มีข้อมูลซ้ำซ้อน
  • ปฏิบัติกับทุก migration ว่าเป็นประตูทางเดียว แบ็กอัพก่อนทำสิ่งใดที่ลบหรือเปลี่ยนชื่อ และตรวจสอบ migration ที่ AI เขียนอย่างละเอียด
  • เรียกร้องให้ใช้ parameterized queries เสมอ เพื่อไม่ให้ข้อมูลจากผู้ใช้ถูกต่อรวมเข้ากับ โดยตรง

ลองทำดู

เลือกไอเดียแอปเล็ก ๆ สักตัว แล้วเขียนเอนทิตี (entities) และความสัมพันธ์ของมันเป็นภาษาธรรมดาก่อน จากนั้นส่งคำอธิบายนั้นให้ AI แล้วขอสคีมาพร้อมไฟล์ migration แบบเดินหน้า — และตรวจสอบผลลัพธ์เทียบกับเช็คลิสต์ของบทนี้ก่อนที่จะรันอะไรทั้งสิ้น

Design a relational schema for a personal bookmarks app.

Entities and relationships:
- A user has many bookmarks.
- A bookmark belongs to one user, has a URL, a title, and many tags.
- A tag can apply to many bookmarks.

Requirements:
- Use UUID primary keys and created_at timestamps.
- Enforce relationships with foreign keys.
- Add indexes for the columns we'll filter on.
- Give me the schema as SQL plus a forward migration file.
- Flag any migration step that drops or renames so I can back up first.

อยากได้แบบออฟไลน์?

ดาวน์โหลดหนังสือทั้งเล่มเป็น PDF หรือ EPUB — ฟรี