Prisma

Cẩm Nang Làm Việc Với Prisma ORM (Cho Developer)

Cập nhật 17/06/2026

◭ [PDK Note] Cẩm Nang Làm Việc Với Prisma ORM (Cho Developer) Khi phát triển dự án với Next.js và MySQL Docker, Prisma đóng vai trò là một "thông dịch viên" bộ dịch ngôn ngữ giúp code TypeScript nói chuyện mượt mà với Database mà không cần gõ lệnh SQL thuần.

?️ 1. Ba Khái Niệm Cốt Lõi (Core Concepts) Để làm chủ Prisma, anh chỉ cần nắm vững 3 thành phần cấu trúc sau:

? Prisma Schema (schema.prisma): Nơi anh định nghĩa cấu trúc các bảng (Models), các cột và mối quan hệ giữa chúng bằng ngôn ngữ của Prisma.

?️ Prisma Client: Bộ thư viện code tự động sinh ra sau khi quét file schema. Nó cung cấp các hàm CRUD (findMany, create, update, delete) có sẵn gợi ý code (IntelliSense) cực mạnh.

? Prisma Migrate: Công cụ quản lý lịch sử thay đổi của database. Mỗi lần sửa schema, migrate sẽ dịch thành file .sql để cập nhật cấu trúc bảng dưới MySQL.

?️ 2. Quy Trình Vận Hành 3 Bước Khi Sửa Đổi Database Mỗi khi anh muốn thêm một tính năng mới (ví dụ: thêm cột hoặc tạo bảng mới), hãy đi theo đúng workflow chuẩn chỉnh này:

[Bước 1: Sửa file schema.prisma] │ ▼ [Bước 2: Chạy Lệnh npx prisma migrate dev] ➔ (Cập nhật bảng dưới MySQL) │ ▼ [Bước 3: Tự động chạy npx prisma generate] ➔ (Cập nhật gợi ý code trong Next.js) ? 3. Ví Dụ Code CRUD Thực Tế Cơ Bản Dưới đây là cách anh gọi Data ngầm trong các API Route của Next.js:

? Lấy dữ liệu (Read)

// Lấy toàn bộ danh sách tài liệu Docs bài viết
const docs = await prisma.docArticle.findMany({
  orderBy: { createdAt: 'desc' }
});

? Tạo mới dữ liệu (Create)

// Chèn một ghi chú nhanh từ Dashboard vào MySQL
const newNote = await prisma.note.create({
  data: {
    content: "Học lệnh docker compose up -d ngày 17/06",
    tags: "docker,learning"
  }
});