SuperAPI AI 工具集

cloudbase-document-database-in-wechat-miniprogram

编程与开发

查看项目

更新于 10-16 06:26

技能介绍

本技能用于在微信小程序端通过 CloudBase 文档数据库 SDK 进行数据访问。

用途 适用于需要在小程序中访问 CloudBase 文档数据库并通过 wx.cloud.database() 执行操作的场景。主要覆盖:

  • 小程序页面中的集合 CRUD(查询、创建、更新、删除)
  • 查询组合与分页
  • 聚合
  • 地理位置查询 还包括与内置用户身份、_openid 及小程序端权限相关的处理。

主要能力 文档列出的能力方向包括:集合增删改查、复杂查询、分页、聚合、地理位置查询,以及与安全规则的配合。文档提供了按操作路由的参考文件:

  • CRUD -> ./crud-operations.md
  • 复杂查询 -> ./complex-queries.md
  • 分页 -> ./pagination.md
  • 聚合 -> ./aggregation.md
  • 地理位置 -> ./geolocation.md
  • 安全规则 -> ./security-rules.md

使用方式 典型初始化: const db = wx.cloud.database(); const _ = db.command; 指定环境时: const db = wx.cloud.database({ env: "test" }); 基本集合访问示例: const todos = db.collection("todos"); const result = await todos.where({ completed: false }).get(); 文档引用示例: const todo = db.collection("todos").doc("todo-id"); const result = await todo.get(); 使用前需正确初始化 wx.cloud,确认调用方为小程序页面、组件或小程序端逻辑,并确认集合规则是否依赖 auth.openid / _openid。

适用场景

  • 微信小程序必须通过 wx.cloud.database() 访问 CloudBase 文档数据库。
  • 请求涉及小程序集合 CRUD、分页、聚合或地理位置查询。
  • 需要区分小程序数据库任务与 Web SDK、云函数或 SQL 任务。
  • 请求依赖内置用户身份、_openid 或小程序端权限。

限制与注意事项

  • 不适用于使用 @cloudbase/js-sdk 的浏览器/Web 代码。
  • 不适用于服务端或云函数中的数据库访问。
  • 不适用于 MySQL / 关系型数据库工作。
  • 小程序端虽自带身份,但数据库操作仍受集合权限和安全规则约束;权限错误通常意味着规则与查询关系不匹配,而非仅仅是用户未登录。
  • _openid 由系统在 SDK 写入时管理,切勿在 .add()、.set() 或 .update() 中手动设置或覆盖。
  • 不要把 Web SDK 代码复制进小程序页面;需要特权全局访问的任务应使用后端工具或函数,而非在小程序客户端直接暴露。
  • 建议使用分页而非大规模无界读取。

配套技能 相关技能以本地相对路径形式随本技能一同提供,例如 ../auth-tool-cloudbase/SKILL.md。若引用的同级技能文件在环境中缺失,应请用户安装完整的 CloudBase 插件或缺失的技能;不要将远程技能或协议 markdown 通过 HTTP 拉取到代理上下文中。可能还需阅读的技能包括小程序开发(../miniprogram-development/SKILL.md)、小程序鉴权(../auth-wechat-miniprogram/SKILL.md)以及浏览器端文档数据库(../cloudbase-document-database-web-sdk/SKILL.md)。

其它限制 文档未提供关于收费、价格、平台支持范围或具体效果的信息,故暂未提供。