[Swift] CoreDataのテーブルからデータ件数を取得する
公開日:
:
最終更新日:2014/10/23
iPhone App 開発, Swift
件数を取得する
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] プロパティリスト(plist)の値を取得
plistからデータを取得してみます。 こちらのエントリーも参考にしてみてください。 プロパテ
-
-
[Objective-C] UINavigationControllerのセグエを使って画面遷移をする
画面遷移の実装 今回はUINavigationControllerを使って画面遷移をしたいと思いま
-
-
[Swift] 定数クラスをつくってみる
Objective-cの場合 今回は共通にする定数をまとめるクラスを作ってみます。 まずはO
-
-
[iPhone App] WorkManager 1.2.0版がリリースされました。
新機能 以前から要望などが多かったものを元に、機能を追加いたしました。 新バージョンで追加された
-
-
[Objective-C] デリゲート (Delegate)を理解する!
デリゲートとは? デリゲートに関しての意味合いとして、”委譲”とか”代理”と説明されることが多いで
-
-
[iPhone App]WorkManager アップデートしました。
Processing For App Storeでやきもきした僕です。こんにちわ。 今
-
-
iPhoneApp WorkManager公開されました!
きっとリジェクトされるんだろうなと思いながら申請を出して1週間。 本日、公開のメールが届きまし
-
-
[Swift] UINavigationControllerで戻るイベントを取得する
UINavigationController UINavigationControllerを使用し
-
-
[Swift] Swiftでいろんなfor文まとめてみた
いろんなfor文 プログラム作成で必ず出てくるfor文を自分なりにまとめてみました。 Swift