美文网首页
96课:Core Data 进阶:搜索、更新对象

96课:Core Data 进阶:搜索、更新对象

作者: sing_crystal | 来源:发表于2016-06-04 12:44 被阅读36次

    课程笔记文集地址:Udemy课程:The Complete iOS 9 Developer Course - Build 18 Apps

    一、查找某个属性的数据

    其实只需要改变一行代码即可:

    if let username = result.valueForKey("username") as? String
    

    放到遍历数据里:

    // 找到对应的 Entity 
    let request = NSFetchRequest(entityName: "Users")
    // 如果想直接获取实际的数据值,需要设置为 false
    request.returnsObjectsAsFaults = false
    // 开始取出数据,使用 do catch 语法
    do {
        let results = try context.executeFetchRequest(request)
        //判断是否存在数据
        if results.count > 0 {
            // 遍历数据
            for result in results as! [NSManagedObject] {
                // 这里就是关键行
                if let username = result.valueForKey("username") as? String {
                    print(username)
                }
            }
        }
    } catch {
        print("取数据出错了")
    }
    

    二、查找某个数据是否存在

    比如用户在注册的时候,确认一下这个用户名有没有人用过了。这种需求非常常见。

    要改变查询的类型:

    request.predicate = NSPredicate(format: "username = %@", "Ralphie")
    

    三、更新数据

    对既有的数据进行编辑,和保存相似,只不过代码的位置不一样,更新数据是需要先找到已有的数据之后,才能进行数据的更新。

    四、数据的删除

    context.deleteObject(result)
    

    Core Data 这部分没看懂就算了,大部分的公司不会用这个数据库的,一般都是网络请求获取的数据。

    相关文章

      网友评论

          本文标题:96课:Core Data 进阶:搜索、更新对象

          本文链接:https://www.haomeiwen.com/subject/atjkdttx.html