如何检查核心数据是否为空

发布时间:2019-10-14 发布网站:大佬教程
大佬教程收集整理的这篇文章主要介绍了如何检查核心数据是否为空大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
如何使用 swift检查核心数据是否为空.我试过这个方法:
var people = [NSManagedObject]()

if people == nil {

}

但这会导致此错误

解决方法

要检查核心数据库是否为空,您必须在要检查的实体上进行NSFetchRequest,并检查请求的结果是否为空.

您可以使用此功能进行检查:

func entityIsEmpty(entity: String) -> Bool
{

    var appDel:AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
    var context = NSManagedObjectContext()

    var request = NSFetchRequest(entityName: entity)
    var error = NSErrorPointer()

    var results:NSArray? = self.context.executeFetchRequest(request,error: error)

    if let res = results
    {
        if res.count == 0
        {
            return true
        }
        else
        {
            return false
        }
    }
    else
    {
        println("Error: \(error.debugDescription)")
        return true
    }

}

或简化和更短的解决方案:(使用.countForFetchRequest)

func entityIsEmpty(entity: String) -> Bool
{

    var appDel:AppDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
    var context = NSManagedObjectContext()

    var request = NSFetchRequest(entityName: entity)
    var error = NSErrorPointer()

    var results:NSArray? = self.context.executeFetchRequest(request,error: error)

    var count = context.countForFetchRequest(request,error: error)

    if error != nil
    {
        println("Error: \(error.debugDescription)")
        return true
    }
    else
    {
        if count == 0
        {
            return true
        }
        else
        {
            return false
        }

    }


}

大佬总结

以上是大佬教程为你收集整理的如何检查核心数据是否为空全部内容,希望文章能够帮你解决如何检查核心数据是否为空所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ群:277859234,请注明来意。