Swift: Fetch CoreData as Array Swift: Fetch CoreData as Array sqlite sqlite

Swift: Fetch CoreData as Array


You should load all your Objects from CoreData into an Array/Dict of NSManaged Objects.

For Example:

    var locations  = [Locations]() // Where Locations = your NSManaged Class    var fetchRequest = NSFetchRequest(entityName: "Locations")    locations = context.executeFetchRequest(fetchRequest, error: nil) as [Locations]    // Then you can use your properties.    for location in locations {      print(location.name)       }


Try this:

let fetchRequest = NSFetchRequest(entityName: "Locations")        do {     let results   = try managedObjectContext.executeFetchRequest(fetchRequest)     let locations = results as! [Locations]             for location in locations {       print(location)        }} catch let error as NSError {  print("Could not fetch \(error)")}


Swift 3

func fetchData(){    onlyDateArr.removeAll()    let context = (UIApplication.shared.delegate as! AppDelegate).persistentContainer.viewContext    let fetchRequest = NSFetchRequest<NSFetchRequestResult>(entityName: "PhotoData")    do {        let results = try context.fetch(fetchRequest)        let  dateCreated = results as! [PhotoData]        for _datecreated in dateCreated {            print(_datecreated.dateCreation!)            onlyDateArr.append(_datecreated)        }    }catch let err as NSError {        print(err.debugDescription)    }}