Supported databases (/docs/orm/supported-databases)
For the complete Prisma documentation index, see llms.txt. A markdown version of any docs page is available by appending
.mdto its URL.
Which databases Prisma ORM 8 supports today, what each one gets, which hosted providers work, and which databases are coming.
Location: ORM > Supported databases
Prisma ORM 8 ships one library per database, and installing the one that matches yours brings the config, the client, contract authoring, and migrations with it. Today there are two you can build on, and an experimental third.
| Database | Status | Library | Install |
|---|---|---|---|
| PostgreSQL, including Prisma Postgres | Release candidate | @prisma/orm-postgres |
npm install @prisma/orm-postgres |
| MongoDB | Early access | @prisma/orm-mongo |
npm install @prisma/orm-mongo |
| MySQL | Coming soon, planned next | ||
| MariaDB | Coming soon | ||
| SQLite | Experimental | @prisma/orm-sqlite |
npm install @prisma/orm-sqlite |
| Microsoft SQL Server | Coming soon | ||
| CockroachDB | Coming soon |
npm create prisma@latest -- my-app asks which database you use and installs the right library for you. See the PostgreSQL quickstart or the MongoDB quickstart.
What the labels mean
Section titled “What the labels mean”Release candidate. Install it and build with it today. Until the final release, some details of the API may still change, so code you write now may need small edits later. Each release candidate fixes bugs found in the last one. Release status has the dates and what npm install gives you.
Early access. The library works and you can build with it, but some of what the PostgreSQL library does is not there yet. The table below and the reference pages say what works on MongoDB, and what is not available yet lists the gaps. Report what you hit on GitHub.
Experimental. SQLite is published as an experimental package, @prisma/orm-sqlite, without a quickstart yet. db.transaction(...) works the same way as on PostgreSQL.
Coming soon. There is no Prisma ORM 8 library for the database yet. Prisma ORM 7 supports it, and Prisma ORM 7 keeps receiving bug fixes and security updates for 18 months after Prisma ORM 8 reaches general availability. How to stay on Prisma ORM 7 shows how to lock the version.
What each database supports
Section titled “What each database supports”The ORM client works the same on both databases. The lower-level query APIs follow the database's own query model.
| Feature | PostgreSQL | MongoDB |
|---|---|---|
| ORM client | Yes | Yes |
| SQL query builder | Yes | No |
| Pipeline builder | No | Yes |
| Raw queries | Raw SQL | Raw commands |
| Transactions | Yes | Not yet |
| Migrations | Yes | Yes |
| Extensions (pgvector, PostGIS, ParadeDB, and more) | Yes | Not yet |
| Middleware | Yes | Yes, except beforeCompile |
db.transaction() exists on the PostgreSQL client only, because Prisma ORM does not support MongoDB transactions yet. For multi-document writes on MongoDB, use the MongoDB driver's session API alongside the client.
Middleware hooks are the same on both databases apart from beforeCompile, which rewrites the SQL query before it runs and so exists only on PostgreSQL. The built-in lints and budgets middleware inspect SQL and run on PostgreSQL. The cache middleware runs on both. See which databases a middleware runs on.
Every extension in the directory lists the databases it targets. Today every extension that adds column types, operators, or index types targets PostgreSQL, and the only entries that list MongoDB are the database libraries and the cache middleware.
Managed and hosted databases
Section titled “Managed and hosted databases”Prisma ORM connects with a standard connection string, so any host that gives you one works.
| Provider | Database | Notes |
|---|---|---|
| Prisma Postgres | PostgreSQL | The default in npm create prisma@latest. Provisioned from the CLI, with connection pooling built in. |
| Supabase | PostgreSQL | The Supabase extension adds the auth and storage tables and role-bound clients. |
| Neon, Railway, Render, AWS RDS, Cloud SQL, self-hosted | PostgreSQL | Any PostgreSQL server. Extensions such as pgvector and PostGIS need the server-side extension to be installable, which most managed providers include. |
| MongoDB Atlas, self-hosted MongoDB | MongoDB | Any MongoDB deployment reachable with a mongodb:// or mongodb+srv:// URL. |
Databases that are coming
Section titled “Databases that are coming”MySQL is planned next and is not part of the Prisma ORM release candidate. MariaDB, Microsoft SQL Server, and CockroachDB have no Prisma ORM 8 library yet either. To stay on a supported path for those databases today, use Prisma ORM 7, which supports all of them.
Add a 👍 to the GitHub issue for the database you need, or open one if there is none, because the number of reactions is one of the inputs to what gets built next. Organizations that need a database sooner can talk to Prisma enterprise support.
Because a database library is an extension, a community package can add a database Prisma does not ship. If you publish one, submit it to the directory and name the database it adds in the submission.
Next steps
Section titled “Next steps”- The quickstart sets up a project on PostgreSQL or MongoDB.
- Release status covers versions, dates, and staying on Prisma ORM 7.
- Prisma ORM 7 supported databases has the full matrix for the current generally available release.
- Extensions lists what you can add to PostgreSQL.
Related pages
Section titled “Related pages”Coming from Prisma ORM 7: What each Prisma ORM 7 schema attribute, command, and query is called in Prisma ORM 8, and what is not available.Core concepts: The ideas every Prisma ORM command and API builds on: contracts, emitting, plans, the database signature, codecs, and the migration graph.Extensions: Every package that plugs into Prisma ORM: database packages, column types, indexes, query operations, and middleware, by Prisma and the community.Overview: Describe the data your application needs with models, primary keys, scalar fields, and relations.Prisma 7: Prisma ORM is a next-generation Node.js and TypeScript ORM that provides type-safe database access, migrations, and a visual data editor.