prisma で 複数のフィールドに対してユニーク制約をつける

● prisma で 複数のフィールドに対してユニーク制約をつける

schema.prisma

model YourModel {
  // 他のフィールド定義...

  name     String
  langCode String

  // 任意の名前をつけられます。例: word_identifier
  @@unique(fields: [name, langCode], name: "word_identifier")
}

word_identifier はupsertなどで where句に使用できます。

const data = await prisma.word.upsert({
  where: {
    word_identifier: {
      name: d.name,
      langCode: d.langCode,
    },
  },
  create: {
    ...d,
  },
  update: {
    ...d,
  },
})
No.2415
11/13 09:16

edit