During development, especially while debugging, it can be helpful to see the actual SQL queries generated by Prisma queries we are formulating. Because an ORM is an abstraction over SQL, it isn't always obvious what the resulting SQL will turn out to be.
By adding the log
configuration to where we initialize our Prisma client, we
can tell it to log things like errors and the SQL of the queries it executes.
export const prisma =
new PrismaClient({
log: ['error', 'query']
})
If we only want the SQL logged in development, we could do something like this:
export const prisma =
new PrismaClient({
log:
process.env.NODE_ENV === 'development'
? ['query', 'error']
: ['error'],
})
If we look in our app server logs when a code path that contains a Prisma query executes, we'll see a line for each SQL statement.