2011-03-17 6 views
2

1)エンティティのインデックスプロパティをクリックすると、データが入力され、インデックスを入力する必要がないため、そのプロパティのインデックスが自動的に作成されますか?コアデータ内のエンティティのインデックスに関する質問

2)インデックス番号3のようにエントリが中央から削除された場合、新しいインデックスは0 1 2 4 5 6 ..または0 1 2 3 4 5に更新されます...?

3)行ID 3のような単一エントリを削除するには?

4)どのIDで既存のエントリを編集するには?

thnx; )

答えて

4

1)インデックスはコアデータによって自動的に処理されます。あなたはそれで何もしません。

2)わからない、Core Dataが処理するので気にしない。

3)あなたはしていません。コアデータはSQlのラッパーではなく、テーブルや行には関係しません。コアデータはオブジェクトを使用します。オブジェクトCore Dataを削除すると、ストアから削除されます。

4)特定の管理対象オブジェクトのプロパティを編集してデータを編集します。

コアデータはSQLではありません。エンティティはテーブルではありません。オブジェクトは行ではありません。列は属性ではありません。コアデータは、オブジェクトグラフ管理システムであり、オブジェクトグラフを永続化することも、永続化しないこともあります。コアデータをSQL用語で考えると、コアデータを完全に誤解して、多くの悲しみと時間を無駄にします。

+0

ヘルプのためのthnx – Zaraki

+0

このCoreDataはSQLのものではありませんが、私を疲れる古いトロピックです。はい、それはSQLのすべての機能を提供するわけではありませんが、ほとんどの人はSQLバックエンドを使用しています。確かに、Appleはあまりにも明らかにそう考えている。 CoreDataのパフォーマンスチューニングセクションに行く場合は、-com.apple.CoreData.SQLDebug 1を設定して、自分で生成されたSQLを分析できるようにすることをお勧めします。そう、はい、それは最後にSQLです。 –

4

プロパティをインデックス可能にすることがパフォーマンスオプションです。アプリケーションからアクセスできるソート可能なインデックスは追加されません。それがするのは、SQLiteストアを使用している場合は、そのプロパティを検索する方が速くなります。

関連する問題