跳到主要内容

Prisma Studio

Prisma Studio 是一个用于可视化编辑数据库中数据的编辑器。请注意,Prisma Studio 不是开源的,但您仍然可以在 prisma/studio 仓库中创建 issue。

在终端中运行 npx prisma studio

模型(表或集合)

首次打开 Prisma Studio 时,您将看到一个数据表布局,侧边栏显示 Prisma schema 文件中定义的所有模型列表。

Prisma Studio - Models view

信息

什么是模型?

术语 模型 指的是您添加到 Prisma schema 文件中的数据模型定义。根据您使用的数据库,模型定义(例如 model User)指的是关系数据库(PostgreSQL、MySQL、SQL Server、SQLite、CockroachDB)中的或 MongoDB 中的集合

有关更多信息,请参阅定义模型

您可以选择一个模型,其数据将在新标签页中打开。在本示例中,选择了 User 模型。

Prisma Studio - Models view with model open

打开和关闭模型

要打开另一个模型,请在侧边栏中找到该模型并单击它。

要关闭模型,请单击模型选项卡中的 X 按钮。如果打开了多个模型,您也可以单击“全部关闭”以关闭所有模型。

Prisma Studio - Open and close models

模型中数据类型的图标

每个字段的数据类型在标题中用图标指示。

下表列出了所有数据类型及其标识图标。

字段数据类型描述
文本
整数
日期时间

布尔值
预定义的值列表 (enum 数据类型)
来自另一个模型的相关记录列表
{} 符号可以指代两种字段类型之一。

• 关系字段
• JSON 字段

模型中的键盘快捷键

当您打开一个模型时,可以使用许多键盘快捷键来浏览和操作模型中的数据。

信息

注意

在 Prisma Studio 打开的情况下,您可以通过在 macOS 上按 Cmd ⌘+/ 或在 Windows 上按 Ctrl+/ 来打开键盘快捷键模态框。

Prisma Studio - Keyboard shortcuts

编辑数据

Prisma Studio 提供了两种编辑现有数据的机制:内联编辑侧面板编辑

内联编辑

要内联编辑数据,请双击单元格以进入编辑模式。这样做会将光标放在单元格中,并允许您编辑数据。数据可以复制并粘贴到单元格中。

所有更改(添加、编辑或删除)都必须先确认,然后才会生效。使用保存更改按钮确认添加和编辑的记录。当您选择记录并单击删除记录时,请在对话框中确认删除。

您可以累积多个添加的记录和编辑的单元格,然后可以使用保存更改按钮完成这些操作。

Prisma Studio - 保存内联更改 完成数据编辑后,单击绿色的保存按钮。

Prisma Studio - Save inline changes

批量编辑

可以一次编辑多个记录。双击任何单元格以编辑值,并在必要时移动到其他单元格。完成后,单击绿色的保存按钮。

Prisma Studio - Save multiple inline changes

侧面板编辑

Prisma Studio 还提供了一个侧面板用于编辑数据。要打开侧面板,请单击每个可见记录最左侧的选择复选框旁边的编辑侧面板图标。

Prisma Studio - Open side panel

单击该图标将在右侧打开侧面板,您可以在其中执行编辑。完成后,单击侧面板外部,然后单击绿色的保存按钮以保存更改。

Prisma Studio - Edit side panel

删除记录

  1. 从左侧列中,选中您要删除的记录的复选框。
  2. 单击删除 n 条记录
  3. 在确认对话框中单击删除

您可以选择多个记录,然后使用删除记录按钮一次性删除它们。当您删除多个记录时,操作会立即完成(在您确认之后)。

此外,如果您有任何累积的添加或编辑的记录,然后决定删除记录,则删除操作也会强制保存累积的编辑。

警告

警告

删除记录是一个单独的操作,无法累积。如果您在有未保存的编辑时删除记录,则删除操作将首先强制保存未保存的编辑,然后再完成删除。

Prisma Studio - Delete records

您可以使用放弃更改按钮放弃任何累积的更改。

Prisma Studio - Discard changes

复制和粘贴

您可以使用以下方式复制任何表格单元格的值

  • Cmd ⌘ + C   在 macOS 上
  • Ctrl + C     在 Windows 上

要粘贴到另一个单元格中,请先双击该单元格以进入编辑模式,然后使用

  • Cmd ⌘ + V   在 macOS 上
  • Ctrl + V     在 Windows 上

添加记录

  1. 在模型视图中,单击添加记录

  2. 根据每个字段中允许的数据,键入记录的数据。

    字段数据类型描述
    文本
    整数

    如果此类字段已预填充 autoincrement(),请勿编辑单元格,也不要手动添加数字。
    日期时间

    日期时间字段包含一长串数字、字母和其他字符。最佳实践是,复制另一个日期时间单元格的值,并根据需要对其进行修改,然后再粘贴到字段中。
    布尔值

    选择 truefalse
    预定义列表

    双击字段中的单元格,然后选择预定义的选项之一。
    来自另一个模型的相关记录列表

    它通常指的是数据库中另一个模型中存在的记录列表。如果您要添加新记录,并且相关模型中的记录尚不存在,则无需在当前模型中输入任何内容。
    {} 符号可以指代两种字段类型之一。

    • 关系字段
    • JSON 字段

    与数据库中单独定义的模型的关系

    通常,您需要选择与任何先前记录相同的值
    单击模型名称以查看值列表,然后您可以为相关字段选择该值。

    JSON 字段

    双击字段以编辑 JSON 数据。最佳实践是,在验证器中验证编辑后的 JSON 数据,然后将其粘贴回单元格中。
  3. (可选)如果您对更改不满意,请单击放弃更改并重新开始。

  4. 单击保存 1 项更改

过滤器

过滤数据

使用过滤器菜单,通过添加条件来过滤模型中的数据。

过滤器菜单中,您添加的第一个条件是 where 子句。

当您添加多个条件时,Prisma Studio 会过滤结果,以便所有条件组合应用。每个新条件都使用 and 运算符表示这一点,该运算符显示在前面。

步骤

  1. 单击过滤器以打开过滤器菜单。

    信息

    注意
    如果您想隐藏菜单,请再次单击过滤器

  2. 单击添加新过滤器

  3. 配置条件。

    1. 选择要按其过滤的字段。
    2. 选择比较运算符。
      • 等于
      • 在...之中
      • 不在...之中
      • 小于
      • 小于等于
      • 大于
      • 大于等于
      • 不等于
    3. 键入您要用于条件的值。
      步骤结果Prisma Studio 会根据条件立即更新模型中的数据。
  4. 要添加新过滤器,请单击添加新过滤器并重复上述步骤。

  5. 要删除过滤器,请单击右侧的 x 按钮。 Prisma Studio - 添加和删除过滤器

  6. 要删除所有过滤器,请单击全部清除

结果

  • 模型中的数据会根据您添加的所有条件的组合进行过滤。
  • 过滤器菜单中,的默认值会更改为显示您添加的过滤器数量。

显示和隐藏字段

您可以使用字段菜单选择要查看或隐藏的字段。

信息

什么是字段?

字段是模型的属性,您可以在 Prisma schema 文件的数据模型定义中添加该属性。根据您使用的数据库,字段(例如 model User { title String } 中的 title 字段)指的是关系数据库(PostgreSQL、MySQL、SQL Server、SQLite、CockroachDB)中的或 MongoDB 中的文档字段
有关更多信息,请参阅定义字段

步骤

  1. 单击字段菜单。
  2. 仅选择您要查看的字段,并取消选择您要隐藏的任何字段。 Prisma Studio - 显示和隐藏字段

结果

模型会立即过滤,以隐藏您已取消选择的任何字段中的数据。

此外,字段菜单还会显示当前选定的字段数量。

显示和隐藏记录

您还可以选择在模型视图中显示或跳过特定数量的记录。

信息

什么是记录?

记录指的是关系数据库(PostgreSQL、MySQL、SQL Server、SQLite、CockroachDB)中表中的数据行或 MongoDB 中的文档

步骤

  1. 单击显示菜单。
  2. 获取框中,指定您希望模型视图显示的最大记录数。
  3. 跳过框中,指定您要隐藏的前几个记录的数量。 Prisma Studio - 显示和隐藏记录

结果

模型会立即过滤,以根据您的选择显示或隐藏记录。

显示菜单指示在模型中可用的记录总数中显示了多少条记录。

排序数据

单击字段标题以按字段数据排序。

第一次单击按升序对数据进行排序,第二次单击按降序排序。

Prisma Studio - Sort data

故障排除

终端:运行脚本失败 / Prisma Client 请求中出错

缓存问题可能会导致 Prisma Studio 使用旧版本的查询引擎。您可能会看到以下错误

Error in request:  PrismaClientKnownRequestError: Failed to validate the query Error occurred during query validation & transformation

要解决此问题,请删除以下文件夹

  • macOS 和 Linux 上的 ~/.cache/prisma
  • Windows 上的 %AppData%/Prisma/Studio