codecamp

Atoms 数据库

Atoms 云数据库用于存储和管理你的应用所依赖的结构化数据,包括产品、预订、订单、表单提交内容以及用户生成内容。在数据库模块中,你可以查看环境和数据表,搜索并编辑记录,检查表结构,以及使用 CSV 文件导入或导出数据。

本指南介绍内置于 Atoms 云 的数据库。如果你的项目使用 Supabase,请改为查看 Supabase 集成。

打开数据库

在打开数据库之前,请先将你的项目连接到 Atoms 云。如果尚未连接,请按照 Atoms 云 中的连接步骤操作。

  1. 在桌面设备上打开你的项目。
  2. 在包含 App 预览 的同一工作区工具栏中,选择 Atoms 云。
  3. 在 Atoms 云侧边栏中选择 数据库。
  4. 在 Databases 下,选择你想查看的数据库。项目支持时,会显示 Development 和 Production 数据库卡片。

每个数据库卡片都会显示已使用的存储空间和可用总量。构建和测试应用时,请使用 Development。在 Production 中所做的更改可能会影响线上应用的数据,因此在进行更改前,请务必确认你当前所在的环境。

选择 Development 或 Production 数据库。

选择 Development 或 Production 数据库。

浏览和筛选表数据

  1. 根据你要操作的环境,选择 Development 或 Production 数据库卡片。
  2. 使用 Search tables 查找数据表,或直接从列表中选择一个。每个数据表卡片都会显示其行数以及是否为只读。
  3. 使用 Search rows 在当前表中搜索,或选择 Filter 以使用一个或多个字段缩小结果范围。
  4. 使用表格下方的分页箭头控件查看更多行。
  5. 若要检查表结构,打开 <strong>•••</strong> 菜单并选择 Schema。

Schema 视图会显示每个字段的名称、数据类型、键状态、要求、约束和默认值。选择 Copy 可复制当前显示的 schema。

添加、编辑或删除行

找到你想修改的数据库后,可以使用以下操作进行更改:

Operation How to do it
Add a row 打开<strong>...</strong> 并选择 Add Row。输入与可用字段匹配的值,然后提交该行。
Edit a row 双击单元格并输入新值。选择Commit Changes 以保存所有待处理的编辑,或选择 Discard 将其移除。
Delete rows 选择一行或多行,选择Delete,然后确认。删除行后无法撤销。

添加一行或确认删除后,更改会立即应用到所选数据库。只有单元格内联编辑需要你选择 Commit Changes 或 Discard。如果你有任何待处理的编辑,请先提交或丢弃它们,然后再添加行、导入或导出 CSV 文件、更改搜索或筛选条件,或导航到其他页面。

如果项目位于某个工作区中,则只有 Editors 和 workspace owner 可以编辑可写表中的行。如果 Atoms 无法检测到某个表的主键,你将无法编辑或删除其行,因为 Atoms 无法可靠地识别单条记录。

查看待处理的行编辑,然后提交或丢弃更改。

查看待处理的行编辑,然后提交或丢弃更改。

创建数据表或更改 schema

打开你想更新的数据库环境,然后按照你要执行的更改对应的说明操作:

Operation How to do it
Create a table 在数据表列表中,点击<strong>...</strong>,然后选择 Create table。输入有效的数据表名称和初始字段,然后提交请求。等待智能体完成后,重新打开 数据库 并验证该数据表。
Change the schema 点击你想修改的数据表,然后点击<strong>...</strong>,并选择 Schema. 使用 Add Field 创建字段,或选择符合条件的字段进行编辑。你可以更改其名称、类型、默认值、必填状态或唯一性。你也可以将非键字段标记为删除。选择 Submit Changes 将请求发送给智能体,或选择 Discard 清除待处理的更改。

只有 workspace owner 可以创建数据表或更改数据表的 schema。

提交 schema 请求并不意味着迁移已经完成。请等待智能体完成,在 数据库 中验证结果,并在之后测试你的应用。主键字段和只读数据表无法通过这种方式修改。

在 Add Field 中输入新字段的详细信息。

在 Add Field 中输入新字段的详细信息。

在选择 Submit Changes 之前查看待处理的 schema 更改。

在选择 Submit Changes 之前查看待处理的 schema 更改。

导入或导出 CSV 数据

选择你要操作的数据表,然后按照对应操作的说明进行:

Operation How to do it
Import CSV 点击<strong>...</strong> 并选择 Import CSV。选择一个不大于 10 MB 的 .csv 文件,然后在确认前检查文件名、预估行数、所选数据表和环境。CSV 列必须与表 schema 匹配。导入的行会立即添加,且无法自动撤销,因此建议先导出现有数据。
Export CSV 点击<strong>...</strong> 并选择 Export CSV。如果当前启用了搜索或筛选,则只会导出匹配的行。否则,将导出当前数据表中的所有数据。

只有 workspace owner 可以导入或导出 CSV 文件。对于只读数据表,Export CSV 是唯一可用的选项。

权限和受保护的数据表

Action Who can perform it Additional requirements
添加、编辑或删除行 Editor 或 workspace owner 数据表必须可写。编辑和删除行还需要主键信息。
创建数据表或更改 schema Workspace owner 主键字段和只读数据表无法修改。
导入或导出 CSV 文件 Workspace owner 无法将 CSV 文件导入只读数据表。

受保护的系统表或用户表可能会显示 Read-only 标记。你可以查看其数据,并在可用时检查其 schema,但无法从此页面修改其行或结构。

修复常见数据库问题

“No databases found” 或 “No tables found”

请确保 Atoms 云 已连接到项目。如果已经连接,请确认你的应用包含存储持久化数据的功能。如有需要,请让智能体添加由数据库支持的功能。智能体完成后,重新打开 数据库 或选择 Refresh。

某个数据库操作缺失或不可用

检查该数据表是否带有 Read-only 标记,然后查看上方权限说明,确认你的工作区角色允许执行该操作。编辑和删除行还需要主键信息。

待处理的行编辑可能会阻止其他操作。在添加行、导入或导出 CSV 文件、更改搜索或筛选条件,或移动到其他页面之前,请先选择 Commit Changes 或 Discard。

如果完成这些检查后该操作仍不可用,请联系 Support,并附上项目或 Chat 链接、环境、数据表、工作区角色、尝试执行的操作以及完整的错误文本。

无法导入 CSV 文件

只有 workspace owner 可以导入数据,且目标数据表必须可写。请确保:

  • 文件使用 .csv 格式。
  • 文件大小不超过 10 MB。
  • 其列和数据与目标数据表的 schema 兼容。
  • 你已提交或丢弃所有待处理的行编辑。

如果导入仍然失败,请联系 Support,并附上项目或 Chat 链接、环境、目标数据表、工作区角色、文件名和大小、尝试执行的操作以及完整的错误文本。

常见问题

我的生产数据库没有同步。我该怎么办?

如果 Development 运行正常,但线上站点(Production)显示缺失的数据表、列或迁移错误:

重要提示:请不要自行重建或覆盖生产数据库。

需要提供的信息:

  • Chat 链接和线上 URL
  • 完整的 SQL 错误信息
  • 缺失的数据表/列名称
  • 最近一次数据库 schema 更改
  • 最近一个正常工作的线上版本
  • 是否必须保留生产数据
  • 你是希望完全同步 Development 数据,还是只补齐缺失的结构

请将这些详细信息提供给支持团队,以便我们在进行更改前比较 Development/Production 版本、迁移状态和 schema 差异。

为什么我的开发数据与生产数据不同?

如果你已经发布了多次,但 Production 仍显示旧数据,而代码更新工作正常:

在联系支持团队之前,请先确认:

1. 当前生产数据是否必须保留?

2. 你是希望用当前的 Development 数据完全覆盖,还是只补齐缺失记录?

3. 你是否已经有备份?

4. 你可接受的维护窗口是多久?

在确认数据处理目标之前,我们不会覆盖或重建生产数据。请提供 Development/Production URL,以及能体现差异的示例记录 ID 或数量。

我可以在不丢失数据的情况下,将数据库从一个 Atoms 项目迁移到另一个项目吗?

Atoms 目前不支持项目之间自动且无损的数据库迁移。创建新项目或拆分现有项目时,不会自动将现有用户账户或数据库记录复制到新项目中。

在继续之前:

  • 不要重置、替换、迁移或删除现有数据库或项目资源。
  • 保持原项目不变,作为现有数据的来源。
  • 联系 Atoms Support,并提供源项目、目标项目、数据库提供方以及必须保留的数据。

在某些情况下,团队可能能够协助将源数据库中的数据一次性手动复制到目标数据库。这不是持续同步:复制开始后写入源数据库的任何新数据都不会自动出现在目标数据库中。

为了尽量减少数据差异,请在迁移窗口期间暂停向源数据库写入,并在切换到目标项目之前验证目标项目中的复制数据。目前无法保证完全无损的迁移。

Atoms 云
Atoms 身份验证
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

Atoms 协作

Atoms 分享与克隆

Atoms 工作区协作

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }