2

iOSプロジェクトで複数のテーブルを操作する最良の方法と方法は何ですか?FMDBはテーブル間の関係をサポートしていますか? Coredata または FMDB ラッパーを使用する必要がありますか?

4

2 に答える 2

2

やりたいことが何であれ、Core Data または FMDB + SQLite のいずれかを使用できます。

基本的に、次のいずれかに該当する場合は、SQLite を使用することをお勧めします。

  • パフォーマンスは本当に重要です
  • あなたはすでに他の場所から巨大な SQLite データベースを持っています
  • どういうわけかデータベースをクロスプラットフォームにする予定です

SQLite と Core Data の違いについては、このブログ投稿をご覧ください。

ただし、ほとんどの場合、Core Data の方が適しています。Core Data は、(オブジェクト グラフを使用して) 一貫性を維持するのに役立つ優れたフレームワークであり、非常に使いやすいです。性能が悪いと評判ですが、実際はそれほど悪くありません。たとえば、オーバーフェッチは、パフォーマンスを向上させるために使用される一般的なものです。これは、大量のデータを取得してから、実際に必要なデータを除外することを意味します。最近の RAM は実際に非常に優れているため、これは iOS デバイスでうまく機能します。これを使って!

また、Core Data を使用する予定がある場合は、それが SQLite のラッパーではないことを理解する必要があります。通常のようにテーブルについて考えるべきではありません。Core Data には、テーブルではなくエンティティを含むオブジェクト グラフがあります。

結論:

他の場所に SQLite データベース フォームを既に持っていないか、パフォーマンスが非常に重要な場合を除き、Core Data を使用してください。

于 2013-11-12T12:41:53.423 に答える
1

これに対する良い質問はありません。プロジェクト次第です。

私の意見では、アプリケーションにインポートしたいデータが既にいくつかあり、データベースで大量のデータに直面する場合は、純粋なsqlite(そしておそらく FMDB) を選択する必要があります。

RESTに接続している場合、TableViewsを使用したい場合は、空のデータベースから始めるCoreDataのが正解です。

FMDB はラッパーにすぎないsqliteため、sqlite と同様に関係があります。

于 2013-11-12T12:38:49.207 に答える