iCloud之获取记录
来源:互联网 发布:java switch语句 编辑:程序博客网 时间:2024/04/19 02:17
Fetching Records
在您的记录保存到数据库中,可以使用不同的机制检索它们。取创纪录的ID,或查询个人记录使用谓词多条记录。 (谓语定义了用于搜索记录的逻辑条件)。通常,你提取部分记录,显示以推出的用户,然后订阅变化感兴趣的用户。
如果您使用位置字段类型,还可以提取记录的地理区域内,如在Fetch Records by Location.
Fetch Records by Identifier
如果你知道你想获取记录的记录ID,那么你可以通过单独的记录ID获取。例如,下面的代码段取了一个名为115的记录。CKDatabase *publicDatabase = [[CKContainer defaultContainer] publicCloudDatabase];
CKRecordID *artworkRecordID = [[CKRecordID alloc] initWithRecordName:@"115"];
[publicDatabase fetchRecordWithID:artworkRecordID completionHandler:^(CKRecord *artworkRecord, NSError *error) {
if (error) {
// Error handling for failed fetch from public database
}
else {
// Display the fetched record
}
}];
Fetch and Modify Records
获取和修改记录
您可以获取,修改和保存更改您对个别记录。这段代码获取Artwork纪录,改变它的日期字段的值,并将其保存到数据库中.
// Fetch the record from the database
CKDatabase *publicDatabase = [[CKContainer defaultContainer] publicCloudDatabase];
CKRecordID *artworkRecordID = [[CKRecordID alloc] initWithRecordName:@"115"];
[publicDatabase fetchRecordWithID:artworkRecordID completionHandler:^(CKRecord *artworkRecord, NSError *error) {
if (error) {
// Error handling for failed fetch from public database
}
else {
// Modify the record and save it to the database
NSDate *date = artworkRecord[@"date"];
artworkRecord[@"date"] = [date dateByAddingTimeInterval:30.0 * 60.0];
[publicDatabase saveRecord:artworkRecord completionHandler:^(CKRecord *savedRecord, NSError *saveError) {
// Error handling for failed save to public database
}];
}
}];
Query for Records Using Predicates
查询记录使用谓词如果你有很多记录,保存在iCloud的大文件,这是不可能的,你想要的所有记录在本地存储设备上。相反,你获取使用查询数据的一个切片。查询结合了记录类型,谓词和排序描述符时,其谓语包含的索引字段。您建立使用 CKQuery
对象代码的查询。
例如,下面的代码段获取所有的艺术品,具有指定标题。
CKDatabase *publicDatabase = [[CKContainer defaultContainer] publicCloudDatabase];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"title = %@", @"Santa Cruz Mountains"];
CKQuery *query = [[CKQuery alloc] initWithRecordType:@"Artwork" predicate:predicate];
[publicDatabase performQuery:query inZoneWithID:nil completionHandler:^(NSArray *results, NSError *error) {
if (error) {
// Error handling for failed fetch from public database
}
else {
// Display the fetched records
}
}];
概括
在本章中,您学习了如何:
获取由标识符记录
获取,修改和保存个人记录
获取使用查询和谓语多条记录
0 0
- iCloud之获取记录
- iCloud之订阅记录更改
- iCloud之创建一个数据库通过保存记录
- icloud之部署架构
- icloud之关键词
- iCloud
- iCloud
- iCloud
- iCloud
- 十四章--iCloud--之三
- 十四章--icloud之四
- icloud之添加参考字段
- 十四章--icloud技术--之二
- 被拒 之 itunes and iCloud 同步
- iCloud之在app使用CloudKit
- iCloud之Using Asset and Location Fields
- iCloud之测试你CloudKit应用程序
- 工作记录之获取URL的参数
- 十进制转化为12进制
- [OpenGL调试]保存并查看内存中的数据图像
- checkbox全选及全选遍历获得值
- iOS平台游戏安全之IPA破解原理及防御
- https和http有何区别
- iCloud之获取记录
- iScroll 4.2.5 中文API
- CSS控制文字只显示一行,超出部分显示省略号
- 面试题之求两个字符串的最大公共子串
- java基础第5天
- objectAnimation与ValueAnimation的使用
- 什么是机器学习?
- 字符串相关算法
- js上传图片预览