跳到主要内容

新增数据

初始化 SDK

import cloudbase from "@cloudbase/js-sdk";

const app = cloudbase.init({
env: "your-env-id", // 替换为您的环境id
});

const db = app.database();
const _ = db.command; // 获取查询指令

单条新增

向集合中添加一条新记录。

db.collection(collectionName).add(data);
  • collectionName:集合名称
  • data: 要新增的数据对象

参数说明

参数类型必填说明
dataobject要新增的数据对象

代码示例

// 添加单条记录
const result = await db.collection("todos").add({
title: "学习 CloudBase",
content: "完成数据库操作教程",
completed: false,
priority: "high",
createdAt: new Date(),
tags: ["学习", "技术"],
});

console.log("新增成功,文档 ID:", result._id);

批量新增

add 方法的 data 参数支持传入数组,一次性向集合中添加多条记录。

db.collection(collectionName).add(dataList);
  • collectionName:集合名称
  • dataList: 要新增的数据对象数组

参数说明

参数类型必填说明
dataobject | array要新增的数据对象,或数据对象数组

代码示例

// 批量添加多条记录
const result = await db.collection("todos").add([
{
title: "批量任务1",
completed: false,
priority: "high",
createdAt: new Date(),
},
{
title: "批量任务2",
completed: false,
priority: "medium",
createdAt: new Date(),
},
{
title: "批量任务3",
completed: false,
priority: "low",
createdAt: new Date(),
},
]);

// 批量新增时返回新增文档的 id 数组
console.log("批量新增成功,文档 ID 列表:", result.ids);

地理位置新增

// 创建地理位置点
const point = new db.Geo.Point(longitude, latitude);

// 创建地理路径
const line = new db.Geo.LineString([
new db.Geo.Point(lngA, latA),
new db.Geo.Point(lngB, latB),
]);

// 创建地理区域
const polygon = new db.Geo.Polygon([
new db.Geo.LineString([
new db.Geo.Point(lngA, latA),
new db.Geo.Point(lngB, latB),
new db.Geo.Point(lngC, latC),
new db.Geo.Point(lngA, latA), // 闭合
]),
]);

const result = await db.collection("todos").add({
location: point,
path: line,
area: polygon,
});