[Swift] CoreDataのテーブルからデータ件数を取得する
公開日:
:
最終更新日:2014/10/23
iPhone App 開発, Swift
Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/users/1/juny/web/hidef/wp-content/plugins/ultimate-google-analytics/ultimate_ga.php on line 524
件数を取得する
fetchResultsControllerなどを使わず、直接テーブルのデータ件数を取得してみます。
CoreDataへのアクセスはfetchRequestを作成。
Objective-Cの場合
- (NSInteger)numberOfDataFromEntity:(NSString *)entityName managedObjectContext:(NSManagedObjectContext *)managedObjectContext { NSFetchRequest *request = NSFetchRequest.new; [request setEntity:[NSEntityDescription entityForName:entityName inManagedObjectContext:managedObjectContext]]; [request setIncludesSubentities:NO]; NSError *error = nil; NSInteger count = [managedObjectContext countForFetchRequest:request error:&error]; return !error ? count : 0; }
引数のentityNameはテーブル名の文字列を渡します。
5行目のsetIncludesSubentitiesはエンティティにサブテーブルがあるかどうかを設定します。
8行目のcountForFetchReuestで検索を実行します。
Swiftの場合
func numberOfDataFromEntity(entityName: String, managedObjectContext: NSManagedObjectContext) -> Int { let request = NSFetchRequest() request.entity = NSEntityDescription.entityForName(entityName, inManagedObjectContext: managedObjectContext) request.includesSubentities = false var error: NSError? = nil; let count = managedObjectContext.countForFetchRequest(request, error: &error) return error == nil ? count : 0 }
ad
関連記事
-
[Swift] UITabBarControllerでタブ選択時のイベントを取得する
UITabBarController タブを使った画面を作成する場合はUITabBarContro
-
[iPhone App] WorkManagerの不具合について
バージョン1.2.2の不具合 11/25日現在、iPhoneアプリの「WorkManger」バージ
-
[Swift] プロパティリスト(plist)の値を取得
plistからデータを取得してみます。 こちらのエントリーも参考にしてみてください。 プロパテ
-
[Swift] frameworkについて
先日、Swiftで実装されたライブラリをまとめたサイトを発見しました。 Swift Toolb
-
[Swift] CoreDataを使ってみる
SwiftでCoreData 今回はSwiftでCoreDataを使ってみます。 Xcodeプロ
-
[Swift] CoreDataで検索したデータを削除する
CoreDataの検索と削除 前の投稿 CoreDataを使ってみる をふまえて今度は検索&削除
-
[Objective-C] 共通関数をまとめたクラスを作ろう!
共通クラスとは? アプリを作っていると「この処理何回も書いてるなー」ということが多々あると思います