私のアプリでは、静的データベースを使用して、すべての郡と国勢調査地域を米国の州と準州とともに保存しています。これは 10 年ごとに政府によって更新されます。私はそれを使用して郡内を検索しますが、同じ名前の郡が複数あるため、最初に州または準州を選択してから、その中の郡を選択する必要があります。私の質問は、現在 SQLite データベースにそのデータがあるということです。それが最も効率的ですか、それともコア データを使用する必要がありますか? 3600 行あり、各行に 4 つの項目があります。データを保存して読み取る最も効率的な方法にしたいだけです。そこへの書き込みはありません。どちらを選択すればよいか、私は前述の 2 つ以外にもオープンです。
2 に答える
0
あなたの場合:
コアデータ:
より柔軟
- (+) これはORMです (大きなプラスです! 1 つのコマンドでデータ モデルにメソッドを追加したり、オブジェクト ツリー全体を保存したりできます)
- (+) XCode への統合の改善
- (+) データ スキームの移行を簡単に処理できる
- (-) パフォーマンス (あなたの場合、3600records は 1 つのテーブルのみ)
sqlite:
- (+)パフォーマンス
- (-)C バインディングのみ (またはフレームワークが必要)
忘れないでください、CoreData は sqlite の上にある別のレイヤーです。そのため、これらの両方を比較するのはそれほど簡単ではありません。
于 2012-04-07T20:49:55.723 に答える
0
コア データはデータベースではなく、SQLite である場合もそうでない場合もあるデータベースに基づくオブジェクト モデル グラフです。
CoreData を使用すると、アプリ内のすべてのクエリを再構築する必要があります。あなたはかなり小さくて静的なデータベースを使用していますが、これはうまく機能していると思います。なぜ変更したいのですか?アプリで速度の問題が発生していますか (その場合、列にインデックスを設定します)? どのような選択をしたとしても、このような単純で小さなデータベースでは、あるデータベースから別のデータベースへの改善に気付くことはないでしょう。
CoreData に関するこの回答を見ることができます。
于 2012-04-07T20:50:17.077 に答える