跳到主要內容

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
顯示CLI結果
Prisma is a modern DB toolkit to query, migrate and model your database (https://prisma.dev.org.tw)

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 命令後才發送資訊

以下是正在提交的資料概述

欄位屬性描述
產品字串產品名稱 (例如 prisma)
版本字串目前安裝的產品版本 (例如 1.0.0-rc0)
架構字串用戶端作業系統架構 (例如 amd64)。
作業系統字串用戶端作業系統 (例如 darwin)。
node_version字串用戶端的 node 版本 (例如 v12.12.0)。
簽章字串隨機、非可識別的簽章 UUID (例如 91b014df3-9dda-4a27-a8a7-15474fd899f8)
user_agent字串檢查點用戶端的 User agent (例如 prisma/js-checkpoint)
時間戳記字串請求在 RFC3339 格式中建立的時間 (例如 2019-12-12T17:45:56Z)

您可以透過將 CHECKPOINT_DISABLE 環境變數設定為 1 來選擇退出此行為,例如

export CHECKPOINT_DISABLE=1

錯誤回報

當 CLI 中發生崩潰時,Prisma 可能會收集錯誤資料。

在提交錯誤報告之前,始終會有提示要求您確認或拒絕提交錯誤報告!錯誤報告絕不會在未經您明確同意的情況下提交!

如何選擇退出資料收集?

使用數據

您可以透過將 CHECKPOINT_DISABLE 環境變數設定為 1 來選擇退出使用情況資料收集,例如

export CHECKPOINT_DISABLE=1

錯誤回報

您可以透過在互動式提示中回覆來選擇退出資料收集。