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
你可以通过在命令后添加 --help
标志来获取任何 prisma
命令的额外帮助。
退出代码
所有 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 命令后发送信息
以下是被提交数据的概述
字段 | 属性 | 描述 |
---|---|---|
产品 | 字符串 | 产品名称(例如 prisma ) |
版本 | 字符串 | 当前安装的产品版本(例如 1.0.0-rc0 ) |
arch | 字符串 | 客户端的操作系统架构(例如 amd64 )。 |
os | 字符串 | 客户端的操作系统(例如 darwin )。 |
node_version | 字符串 | 客户端的 node 版本(例如 v12.12.0 )。 |
签名 | 字符串 | 随机的、非身份识别的签名 UUID(例如 91b014df3-9dda-4a27-a8a7-15474fd899f8 ) |
user_agent | 字符串 | 检查点客户端的用户代理(例如 prisma/js-checkpoint ) |
timestamp | 字符串 | 请求在 RFC3339 格式中被创建的时间(例如 2019-12-12T17:45:56Z ) |
你可以通过将 CHECKPOINT_DISABLE
环境变量设置为 1
来选择退出此行为,例如
export CHECKPOINT_DISABLE=1
错误报告
当 CLI 中发生崩溃时,Prisma 可能会收集错误数据。
在提交错误报告之前,总是会有一个提示,询问你是否确认或拒绝提交错误报告!错误报告绝不会在未经你明确同意的情况下提交!
如何选择退出数据收集?
使用数据
你可以通过将 CHECKPOINT_DISABLE
环境变量设置为 1
来选择退出使用数据收集,例如
export CHECKPOINT_DISABLE=1
错误报告
你可以通过在交互式提示中回复否来选择退出数据收集。