[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] CoreDataを使ってみる

SwiftでCoreData 今回はSwiftでCoreDataを使ってみます。 Xcodeプロ

記事を読む

[Swift] 関数型プログラミング

関数型プログラミングについて、ストーリー仕立ての面白い記事がありましたので紹介します。 IQ1

記事を読む

[Swift] ビルド時のエラー&iOS8でNSBigDecimalのバグ

ビルド時のエラー Swiftプロジェクトを実行中に以下のエラーが出ました。 "__TFSs15_

記事を読む

[Swift] frameworkについて

先日、Swiftで実装されたライブラリをまとめたサイトを発見しました。 Swift Toolb

記事を読む

[Swift] スクリーンサイズを取得する

スクリーンサイズを取得 iPhoneの幅と高さを取得する関数を紹介します。 iOS8から画面の傾

記事を読む

[Objective-C] バージョン更新時に変更内容をアラートで出力する

アプリの更新内容を表示したい! バージョン更新時に変更内容を表示させたいのは、ユーザーがいちいちA

記事を読む

[Objective-C] 小数点を丸める!(数値変換)

小数点を含む数値 Objective-Cに限らず、小数点を含む数値を計算する場合はdoubleやf

記事を読む

[Swift] 画像を合成する

画像を合成 以下の2つの画像を合成してみます。円と四角です。 画像をプロジェクトに追

記事を読む

no image

爆走中!

挫折街道爆走中です! が! 迷走中でもあるわけです、はい。 そんな中で、迷走するに至った訳

記事を読む

[Objective-C] no architectures to compile for … のコンパイルエラーについて

起動したプロジェクトでコンパイルエラーが出ました。 no architectures to com

記事を読む

ad

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

ad

[PHP] curl転送してみる(googleに)

curlでgoogle画像検索APIにアクセスしてみます。 cu

[PHP] PDOでMySQLの接続確認をする

PDO PHPでMySQLに接続する際には、mysql_connec

[PHP] ランダムな英数字を生成する

便利系メソッド 今回はPHPでランダムな英数字を作成してみます。

[Swift] プロパティリスト(plist)の値を取得

plistからデータを取得してみます。 こちらのエントリーも参考にし

[Swift] Asset Catalogについて

XCode5から追加されたAsset Catalog。 いままで標準

→もっと見る

  • 1978年の七夕生まれ。 25才でweb業界の門を叩き、28才でフリーランスに。 現在は、フリーランスでマークアップ中心に、wordpressのカスタマイズやデザインをしております。 また、iPhoneアプリの開発もしております。
PAGE TOP ↑