新增数据项
操作步骤
创建一个
Table对象table;在
table对象创建一条空记录;为空记录赋值;
将创建的记录保存到服务器。
创建 Table 对象
Table 对象通过 tableName 或 tableId 实例化一个 Table 对象,操作该对象即相当于操作对应的数据表,这里推荐用 tableName。
示例代码
// 通过 tableId 创建数据表实例
let table = Table(Id: "1236")
// 通过 tablename 创建数据表实例
let table = Table(name: "Book")// 通过 tableId 创建数据表实例
BaaSTable *table = [[BaaSTable alloc] initId:@"1236"];
// 通过 tablename 创建数据表实例
BaaSTable *table = [[BaaSTable alloc] initWithName:@"Book"];参数说明
tableName 和 tableId 二选一
Id
String
数据表的 Id
name
String
数据表名
本地创建一条空记录
关于 Record 类型查看 数据类型 章节
为上面创建的空记录赋值
有两种类型的赋值操作:
a.一次性赋值:
参数说明
record
Dictionary
记录信息,key 为字段名称
参数说明
record
NSDictionary
记录信息,key 为字段名称
b.逐个赋值:
info 对同一字段进行多次
set操作,后面的数据会覆盖掉前面的数据在通过
set(key:value:)和set(record: )设置数据时,value 支持的类型包括Int、String、Array、Dictionary等基本数据类型,同时也支持GeoPoint、GeoPolygon、User、Record。
将创建的记录保存到服务器
参数说明
返回结果
success
Bool
是否新增数据成功
info 若
success为true,本地记录实例record的数据将被更新。此时访问record.get(key: "color")为red。
通过上面的四个步骤,即完成了一条记录的插入,具体操作阅读以下内容。
添加普通数据
假设有一个 Book 表,包括 name、author、price 等字段,表示书名、作者、价格。
请求示例
添加日期时间 Date 类型的数据
数据表允许添加时间日期类型的字段,为该类型的记录赋值,需要使用 ISO Date 格式的字符串,如 Book 表定义一个时间日期类型的列 publish_date,创建一条记录时,该字段的赋值操作如下:
添加 file 类型数据
如 Book 表定义 file 类型的列 cover,表示书的封面。示例:获取 id 为 5c98b065d575a97d5f878225 的文件,将该文件设置为书的封面。
实例代码
关于 File 类型查看 文件 章节
添加 file 数组类型数据
如 Book 表定义 file 数组类型的列 photos。示例:获取 id 为 5c98b065d575a97d5f878225 的文件,将该文件作为数组的一个元素添加到 photos 中。
实例代码
关于 File 类型查看 文件 章节
添加 geojson 类型数据
详见 地理位置操作 设置地理信息小节
添加 object 类型数据
对象内的属性名只能包含字母、数字和下划线,必须以字母开头,比如 {$ifanr.x: 123} 和 {知晓云: "test"} 是错误的。
示例
假如 Book 表中的 publish_info 为 object 类型,表示出版商,其中有两个字段信息:name 表示出版商名称,location 为出版商地址。
添加 array 类型数据
添加 array 类型数据的方法与添加其他类型数据的方法基本一致。区别在于,array 类型数据是将一个的数组赋值给某个字段。
array 类型数据中的元素类型,要与预先在知晓云平台设定的字段类型一致。否则创建的数据将不包含该 array 类型的字段。
示例
Book 表中的 recommender 为 array 类型,表示推荐者。
添加 pointer 类型数据
info 每张表最多能建立 3 个
pointer类型的字段。如有更多需求,请提交工单说明 pointer 指向的数据表,不能改名或删除
假设现在有一张 Book 表, Book 表部分字段如下:
comment
pointer
指向了 Comment 表
现在在 Book 表中新增一条数据,其中:
comment 字段指向了 Comment 表中 id 为 5bad87ab0769797b4fb27a1b 的数据行
批量新增数据项
一次创建多条记录,同时根据需要设置是否触发触发器。
info 在通过
createMany方法新增记录时,记录值支持的类型包括Int、Float、String、Array、Dictionary等基本数据类型,同时也支持GeoPoint、GeoPolygon、User、Record。
参数说明
records
Dictionary
符合表结构的记录数据
Y
返回结果
result
Dictionary
新增的数据结果
info
error为nil不说明批量写入数据完全成功,仅代表服务端已收到并处理了这个请求,只有当返回的结果中operation_result列表中不存在error元素时,才可以认为所有数据均写入成功。
返回示例
参数说明
succeed: 成功创建记录数total_count: 总的待创建记录数operation_result: 批量写入每一条数据的结果
常见错误码
201:成功写入400:非法数据403:无权限写入(表权限)
Last updated
Was this helpful?