ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

ToolJet 数据库表操作完全指南:搜索、重命名、列管理、Schema 导出与删除

2026/9/11 6:17:02 拓冰建站 浏览量
ToolJet 数据库表操作完全指南:搜索、重命名、列管理、Schema 导出与删除 ToolJet 数据库表操作完全指南搜索、重命名、列管理、Schema 导出与删除【免费下载链接】ToolJetOpen-source foundation of ToolJet AI - the enterprise app generation platform for internal tools, dashboards, business applications, workflows and AI agents. Build visually, from a prompt, or from Claude Code, Codex and Cursor over MCP 项目地址: https://gitcode.com/GitHub_Trending/to/ToolJetToolJet DatabaseToolJet 内置数据库为应用开发提供了零配置、开箱即用的数据管理能力其中表Table操作是日常开发中使用频率最高的环节。本文基于 table-operations.md 文档结合 数据库编辑器、数据类型、主键、外键 文档以及前端源码实现系统讲解表的搜索、重命名、新增/编辑/删除列、Schema 导出与整表删除等全部操作并给出数据类型的约束细节与源码级佐证。读完本文你将能熟练通过 Database Editor 完成表的全生命周期管理。搜索表Search Table当数据库中的表数量较多时可以通过搜索快速定位目标表点击 Database Editor 顶部的Search按钮打开搜索栏输入表名称即可在左侧表列表中实时过滤匹配的表。所有表在左侧边栏按字典序lexicographically排列搜索功能在此基础上按名称精确匹配。若需要更大的编辑空间侧边栏可以折叠收起相关交互见 数据库编辑器。重命名表Rename Table重命名表的操作路径位于表名右侧的 kebab 菜单三个点的更多菜单点击表名右侧的 kebab 菜单图标选择Edit table选项右侧将打开一个抽屉drawer在其中修改表名并保存。从源码结构看前端通过 TableForm.jsx 调用tooljetDatabaseService.renameTable()接口完成重命名重命名成功后 TableList/index.jsx 会同步更新本地表列表状态保证 UI 与数据库一致。kebab 菜单中的Edit table与Add new column、Export schema等入口统一由 ActionsPopover/index.jsx 渲染。新增列Add New Column向已有表添加新列有两种入口点击表名右侧 kebab 菜单中的Add new column直接点击表头末尾的按钮。随后右侧会打开抽屉需要填写以下字段字段说明Column Name新列的名称必须唯一作为该列的标识键key identifierData Type从下拉列表中选择合适的数据类型可选类型见下文“支持的数据类型”Default Value为新列指定默认值可留空。注意当表中已存在数据行且新列或既有列应用了 NOT NULL 约束时必须提供默认值否则无法通过约束校验Foreign Key Relation打开开关即可为列添加外键关系随后可选择要引用的目标表与目标列支持的数据类型ToolJet 数据库内置以下数据类型详见>数据类型描述示例serial生成整数序列常用于表的主键。新建表时会自动创建一列idserial 类型作为主键1, 2, 3, 4, 5…varchar存储不定长度的字符任意字符串int存储不带小数部分的整数-2147483648 ~ 2147483647bigint存储更大的整数-9223372036854775808 ~ 9223372036854775807float存储不精确、可变精度的数值3.14boolean存储 true、false 与 nulltrue/falsedate with time以 ISO 8601 格式存储日期与时间默认时区为设备时区可指定其他时区数据统一以 UTC 存储、按指定时区展示2024-07-22 15:30:00jsonb存储 JSON 数据可包含数组或嵌套对象{name: John Doe, skills: [JavaScript, Python], address: {city: New York}}各数据类型的允许约束数据类型主键外键唯一非空serial✅❌✅✅varchar✅✅✅✅int✅✅✅✅bigint✅✅✅✅float✅✅✅✅boolean❌❌❌✅date with time❌❌❌✅jsonb❌❌❌✅由此可知boolean、date with time、jsonb类型只能应用Not Null约束不能作为主键或外键而serial类型不能作为外键列。详细的约束定义见 数据库编辑器 - 列约束 与 主键、外键 文档。导出表 SchemaExport SchemaExport schema功能允许将选中表的**表结构schema**以 JSON 文件形式下载。需要特别注意的是该功能只导出表结构不包含表数据与表间关系relationships在导出应用时你可以选择「带表 schema」或「不带表 schema」导出。操作方式点击表名右侧的三个竖点图标 → 选择Export→ 浏览器将自动下载一个包含表 schema 的 JSON 文件。从源码实现看导出由 TableListItem/index.jsx 中的handleExportTable完成它调用appsService.exportResource()并传入{ tooljet_database: [{ table_id }], organization_id }成功后按表名-export-时间戳.json的文件名生成 Blob 并模拟点击触发下载。若导出失败会弹出Could not export table.的错误提示。这也是 ToolJet 通过「导出资源」机制实现应用/数据迁移的基础能力之一。删除表Delete Table删除整张表的操作点击表名右侧的三个竖点图标选择Delete选项在确认弹窗中点击Delete按钮完成删除。对应前端实现中TableListItem/index.jsx 的handleDeleteTable会先用confirm()弹出确认框确认后调用tooljetDatabaseService.deleteTable(organizationId, tableName)删除删除成功会提示Table xxx deleted successfully并触发回调刷新表列表失败则展示对应错误信息。删除表属于破坏性操作确认框的设计即为防止误删——建议删除前先通过 Export schema 备份表结构。编辑列Edit Column修改列属性如列名、默认值、约束等时点击列名上的 kebab 菜单选择Edit column选项打开编辑抽屉。关键限制编辑列时无法更改其数据类型data type。这是因为数据类型决定底层存储格式与索引中途变更会破坏既有数据的有效性。若确实需要更换类型通常的做法是新增一个目标类型的列、迁移数据再删除旧列。编辑列的约束能力如 Primary Key、Unique、Not Null、Foreign Key与建表时一致具体说明见 数据库编辑器 - 列约束。删除列Delete Column删除列的操作点击列名上的 kebab 菜单选择Delete选项。重要限制用作主键的列不能直接删除。必须先移除该列的主键约束即先在 Edit Table 面板中将主键切换/指定到其他列然后才能删除原主键列。完整流程参考 主键 - 删除主键编辑表 → 指定新主键列 → 取消原主键列上的 Primary 勾选 → 再删除该列。类似地若某个列正被其他表作为外键引用作为目标表被引用的列同样无法直接删除需要先处理引用关系以保证数据完整性与引用完整性referential integrity详见 外键。操作背后的约束体系以上所有表操作都建立在 ToolJet 数据库的约束体系之上理解这些约束可以避免操作报错Primary Key主键保证指定列值唯一且非空用于唯一标识每条记录。支持单列主键与多列组合主键composite primary key每个表必须至少有一个主键且主键列不能是 boolean 类型Foreign Key外键建立源表与目标表之间的引用关系确保源表外键列的值必须存在于目标表被引用列目标列需有 Unique 约束不允许自引用源表 ≠ 目标表源表外键列不能是 serial 类型int 类型例外可引用目标表的 serial 列Unique唯一保证列值在表内不重复但允许 null 值Not Null非空要求每行都必须有值不允许 null。新增列时若同时勾选 Not Null 且表中已有数据就必须填写默认值正是这些约束在底层校验的结果。小结本文覆盖了 ToolJet Database 的全部核心表操作搜索、重命名、新增列、编辑列、删除列、导出 schema 与删除表并补充了数据类型、约束规则与前端源码实现细节。掌握这些操作配合 SQL 编辑器 与 数据库编辑器 中的行数据增删改、筛选排序、批量上传能力即可在 ToolJet 中完成从建表到数据维护的完整闭环。【免费下载链接】ToolJetOpen-source foundation of ToolJet AI - the enterprise app generation platform for internal tools, dashboards, business applications, workflows and AI agents. Build visually, from a prompt, or from Claude Code, Codex and Cursor over MCP 项目地址: https://gitcode.com/GitHub_Trending/to/ToolJet创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考