Prisma CLI
Prisma 命令行界面 (CLI) 是从命令行与您的 Prisma 项目交互的主要方式。它可以初始化新的项目资产、生成 Prisma Client,并通过内省分析现有数据库结构以自动创建您的应用程序模型。
命令参考
请参阅 Prisma CLI 命令参考,获取完整的命令列表。
安装
Prisma CLI 通常作为**开发依赖**在本地安装,这就是为什么在下面的命令中使用 --save-dev
(npm) 和 --dev
(Yarn) 选项。
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
全局安装(不推荐)
我们**不建议全局安装 Prisma CLI**,因为它可能导致版本冲突。
- 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
- 当 CLI 接收到信号中断 (SIGINT) 消息或用户取消提示时,返回退出码 130。此退出码在 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 | 客户端的 Node 版本(例如 v12.12.0 )。 |
signature | string | 随机的、不可识别的签名 UUID(例如 91b014df3-9dda-4a27-a8a7-15474fd899f8 ) |
user_agent | string | checkpoint 客户端的用户代理(例如 prisma/js-checkpoint ) |
timestamp | string | 请求发生的时间,RFC3339 格式(例如 2019-12-12T17:45:56Z ) |
您可以通过将环境变量 CHECKPOINT_DISABLE
设置为 1
来选择退出此行为,例如:
export CHECKPOINT_DISABLE=1
错误报告
当 CLI 崩溃时,Prisma 可能会收集错误数据。
在提交错误报告之前,**总是**会有一个提示询问您是否确认或拒绝提交错误报告!未经您明确同意,错误报告绝不会被提交!
如何选择退出数据收集?
使用数据
您可以通过将环境变量 CHECKPOINT_DISABLE
设置为 1
来选择退出使用数据收集,例如:
export CHECKPOINT_DISABLE=1
错误报告
您可以通过在交互式提示中回答“否”来选择退出数据收集。