Essential for anyone spinning up Prisma projects or switching database providers. Covers the full setup matrix from PostgreSQL to MongoDB, including the new Prisma 7 driver adapter workflow and config files. Generates the right schema.prisma structure, handles client instantiation with proper adapters, and crucially keeps MongoDB projects on the Prisma 6.x path where they belong. The provider-specific guides and connection string examples eliminate the usual trial-and-error phase. Solid reference when you're tired of digging through docs to remember which adapter goes with which driver.
npx -y skills add prisma/skills --skill prisma-database-setup --agent claude-codeInstalls into .claude/skills of the current project.
Comprehensive guides for configuring Prisma ORM with various database providers.
Reference this skill when:
| Priority | Category | Impact | Prefix |
|---|---|---|---|
| 1 | Provider Guides | CRITICAL | provider names |
| 2 | Prisma Postgres | HIGH | prisma-postgres |
| 3 | Client Setup | CRITICAL | prisma-client-setup |
If you're using Bun, run Prisma CLI commands with bunx --bun prisma ... so Prisma uses the Bun runtime instead of falling back to Node.js.
| Database | Provider String | Notes |
|---|---|---|
| PostgreSQL | postgresql | Default, full feature support |
| MySQL | mysql | Widespread support, some JSON diffs |
| SQLite | sqlite | Local file-based, no enum/scalar lists |
| MongoDB | mongodb | Mongo-specific workflow; do not apply SQL driver-adapter guidance |
| SQL Server | sqlserver | Microsoft ecosystem |
| CockroachDB | cockroachdb | Distributed SQL, Postgres-compatible |
| Prisma Postgres | postgresql | Managed serverless database |
Your configuration shape depends on the provider and Prisma major version:
prisma/schema.prisma.prisma.config.ts for datasource URLs.url = env("DATABASE_URL") in the schema, and continue using the classic MongoDB setup.The standard SQL workflow uses a driver adapter. Choose the adapter and driver for your database and pass the adapter to PrismaClient.
| Database | Adapter | JS Driver |
|---|---|---|
| PostgreSQL | @prisma/adapter-pg | pg |
| CockroachDB | @prisma/adapter-pg | pg |
| Prisma Postgres (Node.js) | @prisma/adapter-pg | pg |
| Prisma Postgres (edge/serverless) | @prisma/adapter-ppg | @prisma/ppg |
| MySQL / MariaDB | @prisma/adapter-mariadb | mariadb |
| SQLite | @prisma/adapter-better-sqlite3 | better-sqlite3 |
| SQLite (Turso/LibSQL) | @prisma/adapter-libsql | @libsql/client |
| SQL Server | @prisma/adapter-mssql | node-mssql |
MongoDB should not follow the Prisma 7 SQL adapter workflow. Use the latest Prisma 6.x release for MongoDB projects and do not install a SQL @prisma/adapter-* package for it.
Example (PostgreSQL):
import 'dotenv/config'
import { PrismaClient } from '../generated/client'
import { PrismaPg } from '@prisma/adapter-pg'
const adapter = new PrismaPg({ connectionString: process.env.DATABASE_URL })
const prisma = new PrismaClient({ adapter })
Prisma Client must be installed and generated for any database.
Install Prisma CLI and Prisma Client:
npm install prisma --save-dev
npm install @prisma/client
Add a generator block (prisma-client requires an explicit output path):
generator client {
provider = "prisma-client"
output = "../generated"
}
Generate Prisma Client:
npx prisma generate
For SQL providers, instantiate Prisma Client with the database-specific driver adapter:
import { PrismaClient } from '../generated/client'
import { PrismaPg } from '@prisma/adapter-pg'
const adapter = new PrismaPg({ connectionString: process.env.DATABASE_URL })
const prisma = new PrismaClient({ adapter })
Re-run prisma generate after every schema change.
datasource db {
provider = "postgresql"
}
generator client {
provider = "prisma-client"
output = "../generated"
}
datasource db {
provider = "mysql"
}
generator client {
provider = "prisma-client"
output = "../generated"
}
datasource db {
provider = "sqlite"
}
generator client {
provider = "prisma-client"
output = "../generated"
}
datasource db {
provider = "mongodb"
url = env("DATABASE_URL")
}
generator client {
provider = "prisma-client-js"
}
For MongoDB, stay on the latest Prisma 6.x line and keep the connection URL in schema.prisma. Do not move a MongoDB project to the Prisma 7 SQL adapter setup.
See individual rule files for detailed setup instructions:
references/postgresql.md
references/mysql.md
references/sqlite.md
references/mongodb.md
references/sqlserver.md
references/cockroachdb.md
references/prisma-postgres.md
references/prisma-client-setup.md
Choose the provider reference file for your database, then apply references/prisma-client-setup.md to complete client generation and adapter setup. For MongoDB, use references/mongodb.md instead of copying the SQL adapter examples or Prisma 7 config pattern.
firebase/agent-skills
Dexploarer/hyper-forge
itsmostafa/aws-agent-skills
prisma/skills