À l'aide de SwiftUI (2021) XCode 13.1 / iOS 14.5+ et de Base de Données, je suis en train d'essayer d'obtenir le plus efficace total nombre au sein d'une entité.
Ce SQL à partir d'un point de vue, c'est comme entrer le nombre total de lignes dans une table.
L'Entité ne sera jamais contenir de nombreux "rangées" probablement jamais plus de 40.
J'ai Googlé un bon nombre d'exemples (y compris ici), mais certains sont vieux et la plupart ne fonctionnent pas. Il semble être quelque chose à faire avec countForFetchRequest mais que je ne suis pas sûr à 100%.
J'ai déjà configuré le récipient et l'entité qui contient un champ id et un champ de texte.
Je suis encore nouveau pour la Base de Données donc j'espère avoir la terminologie correcte, mais à partir de différents exemples, c'est ce que je suis venu avec. (en notant que j'ai besoin de données pour persister après l'application est fermée).
import CoreData
class FooCoreDataService {
private let container: NSPersistentContainer
private let containerName: String = "FooCoreDataModel"
private let entityName: String = "FooEntity"
init() {
container = NSPersistentContainer(name: containerName)
container.loadPersistentStores { (_, error) in
if let error = error {
print("Error loading Core Data! \(error)")
}
}
}
// Get total item ('Row') count of FooEntity
func getFooCount() -> Int {
var countOfItems: Int = 0
// NOT SURE WHAT GOES HERE
let fetchRequest = NSFetchRequest ????
// SOMETHING TO DO WITH countForFetchRequest ????
return countOfItems
}
}