prisma-database-setup by prisma/skills
npx skills add https://github.com/prisma/skills --skill prisma-database-setup配置 Prisma ORM 与各种数据库提供商的综合指南。
在以下情况下参考此技能:
| 优先级 | 类别 | 影响 | 前缀 |
|---|---|---|---|
| 1 | 提供商指南 | 关键 | provider names |
| 2 | Prisma Postgres | 高 | prisma-postgres |
| 3 | 客户端设置 | 关键 | prisma-client-setup |
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
如果您使用 Bun,请使用 bunx --bun prisma ... 运行 Prisma CLI 命令,这样 Prisma 会使用 Bun 运行时,而不会回退到 Node.js。
| 数据库 | 提供商字符串 | 备注 |
|---|---|---|
| PostgreSQL | postgresql | 默认,完全功能支持 |
| MySQL | mysql | 广泛支持,JSON 功能略有差异 |
| SQLite | sqlite | 基于本地文件,不支持枚举/标量列表 |
| MongoDB | mongodb | v7 版本不支持 (请使用 v6) |
| SQL Server | sqlserver | 微软生态系统 |
| CockroachDB | cockroachdb | 分布式 SQL,兼容 Postgres |
| Prisma Postgres | postgresql | 托管的无服务器数据库 |
Prisma v7 使用两个主要文件进行配置:
prisma/schema.prisma : 定义 datasource 块。prisma.config.ts : 配置连接 URL (替代了 schema 中的环境变量加载)。Prisma ORM 7 默认使用查询编译器,这需要一个驱动适配器。为您的数据库选择适配器和驱动程序,并将适配器传递给 PrismaClient。
| 数据库 | 适配器 | JS 驱动程序 |
|---|---|---|
| PostgreSQL | @prisma/adapter-pg | pg |
| CockroachDB | @prisma/adapter-pg | pg |
| Prisma Postgres | @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 |
示例 (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。
安装 Prisma CLI 和 Prisma Client:
npm install prisma --save-dev
npm install @prisma/client
添加生成器块 (Prisma v7 中 output 是必需的):
generator client {
provider = "prisma-client"
output = "../generated"
}
生成 Prisma Client:
npx prisma generate
使用数据库特定的驱动适配器实例化 Prisma Client:
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 })
每次更改 schema 后重新运行 prisma generate。
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"
}
查看各个规则文件以获取详细的设置说明:
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
为您的数据库选择提供商参考文件,然后应用 references/prisma-client-setup.md 来完成客户端生成和适配器设置。
每周安装量
3.1K
代码仓库
GitHub 星标
26
首次出现
2026年2月4日
安全审计
安装于
github-copilot2.7K
cursor2.6K
opencode2.6K
codex2.6K
gemini-cli2.5K
kimi-cli2.3K
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 | NOT SUPPORTED IN v7 (Use v6) |
| SQL Server | sqlserver |
Prisma v7 uses two main files for configuration:
prisma/schema.prisma : Defines the datasource block.prisma.config.ts : Configures the connection URL (replaces env loading in schema).Prisma ORM 7 uses the query compiler by default, which requires 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 | @prisma/adapter-ppg | @prisma/ppg |
| MySQL / MariaDB | @prisma/adapter-mariadb |
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 (output is required in Prisma v7):
generator client {
provider = "prisma-client"
output = "../generated"
}
Generate Prisma Client:
npx prisma generate
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"
}
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.
Weekly Installs
3.1K
Repository
GitHub Stars
26
First Seen
Feb 4, 2026
Security Audits
Gen Agent Trust HubPassSocketPassSnykPass
Installed on
github-copilot2.7K
cursor2.6K
opencode2.6K
codex2.6K
gemini-cli2.5K
kimi-cli2.3K
React 组合模式指南:Vercel 组件架构最佳实践,提升代码可维护性
102,200 周安装
| Microsoft ecosystem |
| CockroachDB | cockroachdb | Distributed SQL, Postgres-compatible |
| Prisma Postgres | postgresql | Managed serverless database |
mariadb |
| SQLite | @prisma/adapter-better-sqlite3 | better-sqlite3 |
| SQLite (Turso/LibSQL) | @prisma/adapter-libsql | @libsql/client |
| SQL Server | @prisma/adapter-mssql | node-mssql |