更新或创建数据
初始化 SDK
import cloudbase from "@cloudbase/js-sdk";
const app = cloudbase.init({
env: "your-env-id", // 替换为您的环境id
});
const db = app.rdb();
// 或指定实例和数据库
// const db = app.rdb({
// instance: "<instance>",
// database: "<database>"
// });
更新或创建数据
通过 upsert() 方法执行更新或插入操作,如果记录不存在则插入,存在则更新。
db.from(tableName).upsert(values, options)
- tableName:表名称
- values:要 upsert 的数据
- options:upsert 选项配置
参数说明
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| values | object | Array | 是 | 要 upsert 的值。传递对象以 upsert 单行,或传递数组以 upsert 多行 |
| options | object | 否 | upsert 选项配置 |
options 参数说明
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| count | string | 否 | 用于计算 upserted 行数的计数算法:"exact" - 底层执行 COUNT(*) |
| ignoreDuplicates | boolean | 否 | 如果为 true,则忽略重复行。如果为 false,则重复行与现有行合并 |
| onConflict | string | 否 | 逗号分隔的唯一索引列,用于指定如何确定重复行。当所有指定的列都相等时,两行被视为重复。在 MySQL 中,这通常对应于唯一索引或主键 |