# Overview (/docs/orm/core-concepts/supported-databases)

Location: ORM > Core Concepts > Overview

Database versions [#database-versions]

Self-hosted [#self-hosted]

| Database                                                         | Version |
| ---------------------------------------------------------------- | ------- |
| [PostgreSQL](/orm/core-concepts/supported-databases/postgresql)  | 9.6+    |
| [MySQL](/orm/core-concepts/supported-databases/mysql)            | 5.6+    |
| [MariaDB](/orm/core-concepts/supported-databases/mysql)          | 10.0+   |
| [SQL Server](/orm/core-concepts/supported-databases/sql-server)  | 2017+   |
| [SQLite](/orm/core-concepts/supported-databases/sqlite)          | All     |
| [MongoDB](/orm/core-concepts/supported-databases/mongodb)        | 4.2+    |
| [CockroachDB](/orm/core-concepts/supported-databases/postgresql) | 21.2.4+ |

Managed/Serverless [#managedserverless]

| Database                | Notes               |
| ----------------------- | ------------------- |
| Neon                    | Serverless Postgres |
| Supabase                | Postgres            |
| PlanetScale             | MySQL               |
| Turso                   | libSQL (SQLite)     |
| Cloudflare D1 (Preview) | SQLite              |
| AWS Aurora              | MySQL/Postgres      |
| MongoDB Atlas           | MongoDB             |

Feature matrix [#feature-matrix]

Constraints [#constraints]

| Feature     | PostgreSQL | MySQL | SQLite | SQL Server | MongoDB |
| ----------- | :--------: | :---: | :----: | :--------: | :-----: |
| PRIMARY KEY |     ✔️     |   ✔️  |   ✔️   |     ✔️     |    ✔️   |
| FOREIGN KEY |     ✔️     |   ✔️  |   ✔️   |     ✔️     |    —    |
| UNIQUE      |     ✔️     |   ✔️  |   ✔️   |    ✔️\*    |    ✔️   |
| NOT NULL    |     ✔️     |   ✔️  |   ✔️   |     ✔️     |    ✔️   |
| DEFAULT     |     ✔️     |   ✔️  |   ✔️   |     ✔️     |    ✔️   |

\*SQL Server has [limitations with UNIQUE constraints](/orm/core-concepts/supported-databases/sql-server#common-considerations)

Data types [#data-types]

| Feature | PostgreSQL | MySQL | SQLite | SQL Server | MongoDB |
| ------- | :--------: | :---: | :----: | :--------: | :-----: |
| Arrays  |     ✔️     |   —   |    —   |      —     |    ✔️   |
| JSON    |     ✔️     |   ✔️  |   ✔️   |     ✔️     |    ✔️   |
| Enums   |     ✔️     |   ✔️  |   ✔️   |      —     |    ✔️   |

Database guides [#database-guides]

* [PostgreSQL](/orm/core-concepts/supported-databases/postgresql) — Self-hosted, Neon, Supabase, and CockroachDB
* [MySQL/MariaDB](/orm/core-concepts/supported-databases/mysql) — Self-hosted and PlanetScale
* [SQLite](/orm/core-concepts/supported-databases/sqlite) — Local, Turso, and Cloudflare D1
* [SQL Server](/orm/core-concepts/supported-databases/sql-server)
* [MongoDB](/orm/core-concepts/supported-databases/mongodb)

Driver adapters [#driver-adapters]

For custom database drivers, see [Driver adapters](/orm/core-concepts/supported-databases/database-drivers).

## Related pages

- [`API patterns`](https://www.prisma.io/docs/orm/core-concepts/api-patterns): How to use Prisma ORM with REST APIs, GraphQL servers, and fullstack frameworks
- [`Data modeling`](https://www.prisma.io/docs/orm/core-concepts/data-modeling): Learn how data modeling with Prisma differs from data modeling with SQL or ORMs. Prisma uses a declarative data modeling language to describe a database schema