Prisma Studio
Prisma Studio 是一个用于数据库中数据的可视化编辑器。请注意,Prisma Studio 不是开源的,但您仍然可以在 prisma/studio
仓库中创建问题。
在您的终端中运行 npx prisma studio
。
模型(表或集合)
当您第一次打开 Prisma Studio 时,您会看到 Prisma 模式文件中定义的所有模型列表。
什么是模型?
术语 **模型** 指的是您添加到 Prisma 模式文件中的数据模型定义。根据您使用的数据库,模型定义(例如 model User
)指的是关系数据库(PostgreSQL、MySQL、SQL Server、SQLite、CockroachDB)中的 **表** 或 MongoDB 中的 **集合**。
有关更多信息,请参阅 定义模型。
您可以选择一个模型,其数据将在新选项卡中打开。
打开和关闭模型
要打开另一个模型,请单击 **+** 按钮。
要关闭模型,请单击模型选项卡中的 **x** 按钮。
模型中数据类型的图标
每个字段的数据类型在标题中用图标表示。
下表列出了所有数据类型及其标识图标。
字段数据类型 | 描述 |
---|---|
文本 | |
整数 | |
日期时间 | |
布尔值 | |
预定义的值列表(enum 数据类型) | |
来自另一个模型的相关记录列表 | |
{} 符号可以指代两种类型的字段之一。• 关系字段 • JSON 字段 |
模型中的键盘快捷键
当您打开模型时,可以使用一些键盘快捷键来浏览和操作模型中的数据。
注意
在打开 Prisma Studio 后,您可以通过按下 macOS 上的 Cmd ⌘+/ 或 Windows 上的 Ctrl+/ 来打开键盘快捷键模态。
编辑数据
在模型视图中,您可以直接在模型单元格中编辑数据。您可以在单元格中复制和粘贴值。您还可以添加新记录以及删除现有记录。
您必须确认每个编辑操作(添加、编辑或删除)。您使用 **保存更改** 按钮确认添加和编辑的记录。当您选择记录并单击 **删除记录** 时,您将在对话框中确认删除操作。
您可以累积多个添加的记录和编辑的单元格,然后使用 **保存更改** 按钮完成这些操作。
您可以选择多个记录并使用 **删除记录** 按钮一次删除它们。当您删除多个记录时,操作会立即完成(在您确认后)。
此外,如果您累积了任何添加或编辑的记录,然后决定删除记录,删除操作也会强制保存累积的编辑。
您可以使用 **放弃更改** 按钮放弃任何累积的更改。
复制和粘贴
您可以使用以下方法复制任何表格单元格的值
- Cmd ⌘ + C 在 macOS 上
- Ctrl + C 在 Windows 上
要粘贴到另一个单元格,请先双击单元格以进入编辑模式,然后使用
- Cmd ⌘ + V 在 macOS 上
- Ctrl + V 在 Windows 上
添加记录
-
在模型视图中,单击 **添加记录**。
-
根据每个字段允许的数据,键入记录的数据。
字段数据类型 描述 文本 整数
如果该字段已预先填充autoincrement()
,请不要编辑单元格,也不要手动添加数字。日期时间
日期时间字段包含一长串数字、字母和其他字符。作为最佳实践,请复制另一个日期时间单元格的值,并在粘贴到字段之前根据需要进行修改。布尔值
选择true
或false
。预定义列表
双击字段中的单元格,然后选择一个预定义选项。来自另一个模型的相关记录列表
它通常指的是数据库中另一个模型中存在的记录列表。如果您正在添加新记录,并且相关模型中的记录尚不存在,则无需在当前模型中输入任何内容。{}
符号可以指代两种类型的字段之一。
• 关系字段
• JSON 字段
与数据库中单独定义的模型建立关系
通常,您需要选择与任何先前记录相同的值
单击模型的名称以查看您可以为相关字段选择的列表。
JSON 字段
双击字段以编辑 JSON 数据。作为最佳实践,请在验证器中验证编辑后的 JSON 数据,然后将其粘贴回单元格中。 -
(可选)如果您对更改不满意,请单击 **放弃更改** 并重新开始。
-
单击 **保存 1 个更改**。
编辑记录
- 双击包含现有数据的单元格以进行编辑。
- (可选)如果您对更改不满意,请单击 **放弃更改** 并重新开始。
- 单击 **保存 1 个更改**。
删除记录
- 从左侧栏中,选中要删除的记录的复选框。
- 单击 **删除 1 个记录**。
- 在确认对话框中单击 **删除**。
一次编辑多条记录
您可以添加多条记录、编辑多个单元格,从而累积多个编辑操作。
最后,单击 **保存更改** 以完成它们。
警告
删除记录是一个单独的操作,不能累积。如果您在存在未保存的编辑时删除记录,删除操作将首先强制保存未保存的编辑,然后完成。
过滤器
筛选数据
使用 **过滤器** 菜单通过添加条件来筛选模型中的数据。
在 **过滤器** 菜单中,您添加的第一个条件是 where
子句。
当您添加多个条件时,Prisma Studio 会筛选结果,使所有条件组合在一起应用。每个新条件都用 and
运算符表示,该运算符出现在前面。
步骤
-
单击 **过滤器** 以打开 **过滤器** 菜单。
info注意
如果您要隐藏菜单,请再次单击 **过滤器**。 -
单击 **添加新的过滤器**。
-
配置条件。
- 选择要筛选的字段。
- 选择一个比较运算符。
- 等于
- 在
- 不在
- 小于
- 小于或等于
- 大于
- 大于或等于
- 不
- 键入要用于条件的值。
**步骤结果**:**Prisma Studio** 会立即更新模型中的数据,基于该条件。
-
要添加新的过滤器,请单击 **添加新的过滤器** 并重复上述步骤。
-
要删除过滤器,请单击右侧的 **x** 按钮。
-
要删除所有过滤器,请单击 **全部清除**。
结果
- 模型中的数据将根据您添加的所有条件的组合进行筛选。
- 在**过滤器**菜单中,**无**的默认值会更改为显示您添加的过滤器数量。
显示和隐藏字段
您可以使用**字段**菜单选择要查看或隐藏的字段。
什么是字段?
**字段**是模型的一个属性,您在 Prisma 模式文件中的数据模型定义中添加它。根据您使用的数据库,字段(例如 `model User { title String }` 中的 `title` 字段)指的是关系型数据库(PostgreSQL、MySQL、SQL Server、SQLite、CockroachDB)中的**列**或 MongoDB 中的**文档字段**。
有关更多信息,请参见 定义字段。
步骤
- 点击**字段**菜单。
- 仅选择要查看的字段,并取消选择要隐藏的任何字段。
结果
模型会立即过滤以隐藏您取消选择的所有字段的数据。
此外,**字段**菜单会显示当前选中的字段数量。
显示和隐藏记录
您还可以选择在模型视图中显示或跳过特定数量的记录。
什么是记录?
**记录**指的是关系型数据库(PostgreSQL、MySQL、SQL Server、SQLite、CockroachDB)中**表格中的一行数据**或 MongoDB 中的**文档**。
步骤
- 点击**显示**菜单。
- 在**取**框中,指定您希望模型视图显示的最大记录数。
- 在**跳过**框中,指定您要隐藏的前几条记录的数量。
结果
模型会立即过滤以根据您的选择显示或隐藏记录。
**显示**菜单会指示在模型中显示了多少条记录,以及有多少条可用记录。
排序数据
点击字段标题按字段数据排序。
第一次点击按升序排序数据,第二次点击按降序排序。
故障排除
终端:无法运行脚本/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`