Prisma transaction in nodejs and typescript not working

Viewed 2768

I have 100 over record to update. So I use transaction but I got following error -:

Argument of type '(tx: any) => Promise' is not assignable to parameter of type 'PrismaPromise[]'. Type '(tx: any) => Promise' is missing the following properties from type 'PrismaPromise[]': pop, push, concat, join, and 28 more.

May I know how to solve?

await prisma.$transaction(async (tx :any) /*error here*/ => {

    const updateSong = await tx.songs.update({
      where: {
        id: d.id,
      },
      data: {
        duration: duration,
      },
    })

  })
2 Answers

I got the same error, I fix that with added previewFeatures = ["interactiveTransactions"] and then regenerate my schema with npx prisma generate

The previewFeatures = ["interactiveTransactions"] in your schema.prisma file. Should look like this:

generator client {
  provider = "prisma-client-js"
  previewFeatures = ["interactiveTransactions"]
}
Related