跳到主要內容

不支援的資料庫功能

Prisma Migrate 使用 Prisma Schema 來決定要在資料庫中建立哪些功能。然而,有些資料庫功能無法在 Prisma Schema 中表示,包括但不限於

  • 預存程序
  • 觸發器
  • 視圖
  • 部分索引

若要將不支援的功能新增至您的資料庫,您必須自訂遷移,以在套用遷移之前包含該功能。

提示

Prisma Schema 能夠表示不支援的欄位類型原生資料庫函數

警告

本指南不適用於 MongoDB
對於 MongoDB,使用 db push 而非 migrate dev

自訂遷移以包含不支援的功能

若要自訂遷移以包含不支援的功能

  1. 使用 --create-only 標記來產生新的遷移,但不套用它

    npx prisma migrate dev --create-only
  2. 開啟產生的 migration.sql 檔案,並新增不支援的功能 - 例如,部分索引

    CREATE UNIQUE INDEX tests_success_constraint
    ON posts (subject, target)
    WHERE success;
  3. 套用遷移

    npx prisma migrate dev
  4. 將修改後的遷移提交至原始碼控制。