2011-12-07 15 views
0

私は本当に奇妙な問題に直面しています! CoreDataを使用している私のアプリケーションでは、モデルを作成しました。アプリケーションが実行されると、データベースが作成されました。私はFirefox SqliteManagerを使用してデータベースをオープンエンドし、別の列を "ZABOUT"(何らかの理由でCore Dataプレフィックス列Zで)追加しました。とにかく、ZABOUT列にデータを入力しました。しかし、今私は、アプリケーション内からオブジェクトを取得し、ZABOUTの値を表示するとnullを表示します。何が起こっているか考えてください。CoreDataモデルで属性値が取得されない

iPhoneアプリケーション内から値を設定すると、大丈夫です。

答えて

1

コアデータとSQLiteは別個のテクノロジなので、それらを混在させることはできません。別のエンティティを追加する場合は、コアデータモデルで処理する必要がありますが、SQLiteでは処理する必要はありません。

コアデータは、データモデルから派生したプライベートスキーマを持つバッキングストアとして使用するsqliteファイルを構成します。コアデータフレームワークは.sqliteファイルのスキーマと内容を制御しているため、sqliteファイルと見なさないことをお勧めします。 SQLiteが使用されているという事実は、本質的に実装の詳細です。

Core dataおよびwhat Core Data is Notの詳細。 Core Dataはリレーショナルデータベースではありません。探しているのであれば、SQLiteを直接使うことも考えられます。 XMLPerformanceはおそらくsqlite-on-iOSのサンプルとして最適です。

+0

もし私がCoreDataを介して利用できるはずのSqlLiteデータベースに挿入する必要のあるレコードが100個あれば、どうすればいいですか? – azamsharp

+0

コアデータストアの事前入力方法を聞いている場合、簡単な答えは、データストアを作成するための小さなアプリケーションを作成し、作成したデータストアをプロジェクト

関連する問題