DEV Community

Prisma + Postgres

awalias on October 30, 2024

In this tutorial, we'll explore how to set up Prisma + Postgres. We'll use real-world examples involving books and authors. Prerequisites...
Collapse
 
awalias profile image
awalias • Edited

If anyone needs help regarding Prisma / Postgres you can get support in our discord

Collapse
 
joshenlim profile image
Joshen Lim

Hopefully this might be helpful - there's a set of handy instructions on your projects' home page if you click the "Connect" button and select the "ORMs" tab
Image description

Collapse
 
supabase_io profile image
Supabase

Yes! Thanks for sharing @joshenlim

Collapse
 
steve_val profile image
Steve_Val

The memes in there are crazy lol

Also note for anyone else who's wondering the official Prisma documentation related to this is here: prisma.io/docs/orm/overview/databa...

The important step adding

datasource db {
  provider  = "postgresql"
  url       = env("DATABASE_URL")
  directUrl = env("DIRECT_URL")
}
Enter fullscreen mode Exit fullscreen mode

Very nice.

Collapse
 
swamp_dog profile image
swamp_dog

I was trying initially without the direct_url but apparently it's required if you need to do migrations.

Collapse
 
supa_community profile image
Supabase Community

Prisma Postgres is an incredible pairing for a backend. Both tools are used and loved by the Supabase Community.

Collapse
 
encima_49 profile image
Chris • Edited

thanks for this! If I am using a pooler like Supavisor does that mean I do not use Accelerate or anything, just the Prisma library and Supabase handles the rest?

Collapse
 
tylerfontaine profile image
Tyler Fontaine

Bingo! You got it

Collapse
 
4l3k51 profile image
Aleksi Immonen

Excellent guide !

Collapse
 
qianl15 profile image
Qian Li

Thanks for the starter tutorial -- it's clear and simple. Things can get tricker if you modify the schema and want to actually push to production:

  • prisma migrate dev is only for dev environment. Use npx prisma migrate deploy for production and testing (CI/CD pipelines). Docs
  • Run npx prisma generate to generate new client code whenever you modify the schema as well.

Also, I noticed that Prisma doesn't really support rolling back schema changes. So to revert changes you need to revert your schema file and generate a "new" migration/client to undo the previous change instead.

Collapse
 
4l3k51 profile image
Aleksi Immonen

Excellent guide!

Collapse
 
davy_c1f0f5e0e5e0 profile image
Dave

This is great!

Collapse
 
w3b6x9 profile image
Wen Bo Xie

Excited to use Prisma and Supabase together! This makes it so easy to get started and distinguish between which database connection strings to use and why.

Collapse
 
jonmeyers_io profile image
Jon

What an incredibly powerful stack! Prisma and Postgres powered by Supabase! πŸš€

Collapse
 
codexam profile image
Subham

Interesting guide, but honestly, why go through all this setup with Prisma + Postgres when you could use Drizzle ORM? Drizzle is so much cleaner and more TypeScript friendly without all the heavy migration overhead.

Collapse
 
timnpalmer profile image
timnpalmer

Super valuable guide, thanks

Collapse
 
sreyas_udayavarman_496239 profile image
Sreyas Udayavarman

This is great! Easy to setup.