2012-03-06 11 views
5

カスタムオブジェクトをデータベースに保存するにはどうすればよいですか?より明確にするには、どのようにこれらの記述を書くのですか。SQLiteのAndroidデータベースにカスタムオブジェクト(ユーザ定義obj)を保存

テーブルを作成するには、中に何が起こるのか 1.

CREATE TABLE IF NOT EXISTS MY_TABLE(
     _id INTEGER PRIMARY KEY AUTOINCREMENT, customObject ??? NOT NULL); 

????カーソルから取得するに

、私は私の保存されたオブジェクトを取得するために使用することができますどのような方法

2. MyObject obj = cursor.get????

私はたくさんのグーグルで探検しましたが、運はありません。シリアライズ可能なオブジェクトを格納する必要がありますか?どうやって?

ありがとうございます。

+0

ここでこのソリューションを使用できますか?http://stackoverflow.com/a/7803828/563306 – dcanh121

答えて

13

カスタムオブジェクトをデータベースに保存するにはどうすればよいですか?

オブジェクトデータベースを使用している場合を除き、そうしないでください。オブジェクトの表現をデータベースに格納します。

これはあなたの表現が何であるかによって異なります。オブジェクトをXMLまたはJSONに変換すると、TEXTになります。オブジェクトをバイト配列(たとえば、Serializable)に変換する場合は、BLOBを使用します。

保存されたオブジェクトを取得するにはどのような方法がありますか?

これはあなたの表現が何であるかによって異なります。オブジェクトをXMLまたはJSONに変換した場合は、getString()を使用します。オブジェクトをバイト配列に変換した場合は、getBlob()を使用します。

ほとんどの開発者は、このようなことはしませんが、オブジェクトの属性を個別の列として格納して、データベースを照会する際の最大限の柔軟性を可能にします。

関連する問題