Prisma CLI
Prisma 命令行界面 (CLI) 是从命令行与 Prisma 项目交互的主要方式。它可以初始化新的项目资产、生成 Prisma Client 以及通过内省分析现有的数据库结构,从而自动创建你的应用程序模型。
命令参考
查看 Prisma CLI 命令参考 获取完整命令列表。
安装
Prisma CLI 通常作为开发依赖项在本地安装,这就是为什么在下面的命令中使用--save-dev
(npm) 和--dev
(Yarn) 选项。
我们建议你在项目的 package.json
中本地安装 Prisma CLI,以避免全局安装可能发生的版本冲突。
npm
使用 npm 安装
npm install prisma --save-dev
Yarn
使用 yarn 安装
yarn add prisma --dev
pnpm
使用 pnpm 安装
pnpm install prisma --save-dev
Bun
使用 Bun 安装
bun add prisma
全局安装(不推荐)
- npm
使用 npm 安装
npm install -g prisma
- Yarn
使用 Yarn 安装
yarn global add prisma
- pnpm
使用 pnpm 安装
pnpm install prisma --global
- Bun
使用 Bun 安装
bun add --global prisma
使用
如果你将 Prisma 作为开发依赖项安装,你需要在 prisma
命令前加上你的包运行程序。
npm
npx prisma
Yarn
yarn prisma
pnpm
pnpm dlx prisma
Bun
bunx prisma
概述
安装后,可以在命令行中调用 prisma
命令。如果没有参数,它将显示其命令使用情况和帮助文档。
prisma
Prisma is a modern DB toolkit to query, migrate and model your database (https://prisma.org.cn)
Usage
$ prisma [command]
Commands
init Setup Prisma for your app
generate Generate artifacts (e.g. Prisma Client)
db Manage your database schema and lifecycle
migrate Migrate your database
studio Browse your data with Prisma Studio
validate Validate your Prisma schema
format Format your Prisma schema
Flags
--preview-feature Run Preview Prisma commands
Examples
Setup a new Prisma project
$ prisma init
Generate artifacts (e.g. Prisma Client)
$ prisma generate
Browse your data
$ prisma studio
Create migrations from your Prisma schema, apply them to the database, generate artifacts (e.g. Prisma Client)
$ prisma migrate dev
Pull the schema from an existing database, updating the Prisma schema
$ prisma db pull
Push the Prisma schema state to the database
$ prisma db push
你可以在任何 prisma
命令后添加 --help
标志以获取更多帮助。
退出代码
所有 prisma
CLI 命令在退出时返回以下代码。
- 退出代码 0 表示命令成功运行。
- 退出代码 1 表示命令出错。
- 退出代码 130 表示 CLI 收到信号中断 (SIGINT) 消息,或者用户取消了提示。此退出代码在 Prisma ORM 版本 4.3.0 及更高版本中可用。
遥测
术语遥测是指收集某些使用数据以帮助提高软件质量。Prisma 在两种情况下使用遥测。
- 收集 CLI 使用数据时。
- 提交 CLI 错误报告时。
此页面描述了 Prisma 的整体遥测方法,收集了哪些类型的数据以及如何选择不收集数据。
为什么 Prisma 收集指标?
遥测帮助我们更好地了解有多少用户在使用我们的产品以及他们使用我们的产品的频率。与许多遥测服务不同,我们的遥测实现有意地限制了范围,实际上对开发人员很有用。
- 范围有限:我们使用遥测来回答一个问题:每月有多少活跃的开发人员在使用 Prisma CLI?
- 提供价值:我们的遥测服务还会检查版本更新并提供安全通知。
何时收集数据?
数据在以下描述的两种情况下收集。
使用数据
调用 prisma
CLI 和通常使用 Studio 会导致数据被发送到 https://checkpoint.prisma.io 上的遥测服务器。请注意,
- 数据不包含你的 schema 或你的数据库中的数据。
- Prisma 只会在你执行 CLI 命令后发送信息。
以下是正在提交的数据概述。
字段 | 属性 | 描述 |
---|---|---|
product | string | 产品的名称(例如 prisma )。 |
version | string | 产品的当前安装版本(例如 1.0.0-rc0 )。 |
arch | string | 客户端的操作系统体系结构(例如 amd64 )。 |
os | string | 客户端的操作系统(例如 darwin )。 |
node_version | string | 客户端的节点版本(例如 v12.12.0 )。 |
signature | string | 随机的、不可识别的签名 UUID(例如 91b014df3-9dda-4a27-a8a7-15474fd899f8 )。 |
user_agent | string | 检查点客户端的用户代理(例如 prisma/js-checkpoint )。 |
timestamp | string | RFC3339 格式的请求时间(例如 2019-12-12T17:45:56Z )。 |
你可以通过将 CHECKPOINT_DISABLE
环境变量设置为 1
来选择退出此行为,例如:
export CHECKPOINT_DISABLE=1
错误报告
Prisma 可能在 CLI 崩溃时收集错误数据。
在提交错误报告之前,始终会弹出一个提示,询问你是否确认或拒绝提交错误报告!错误报告永远不会在没有你的明确同意的情况下提交!
如何选择不收集数据?
使用数据
你可以通过将 CHECKPOINT_DISABLE
环境变量设置为 1
来选择不收集使用数据,例如:
export CHECKPOINT_DISABLE=1
错误报告
你可以通过在交互式提示中回复否来选择不收集数据。