0

私はAndroid開発に不慣れで、ユーザーがハッシュタグを含めて、そのハッシュタグで保存されたメモを閲覧できるようにするメモ/メモ取りアプリを開発しています。

SQLiteデータベースにメモだけを保存するメモアプリはすでに動作していますが、各メモオブジェクト(すでに配列リストに保存されている)内にハッシュタグの配列リストを含めることでハッシュタグを保存する予定です...

私の質問は、これらのアレイリストのアレイリスト(ハッシュタグアレイリストのアレイリストに注意)をSQLiteデータベースに保存するにはどうすればよいですか?

4

2 に答える 2

2

ノート用のSQLテーブルがあると仮定すると、ハッシュタグを格納するための別のテーブルを作成する必要があります。ハッシュタグが属するメモIDを格納する列を予約することにより、すべてのハッシュタグをそのメモにリンクできます。構造は基本的に次のようになります。

注表:

note_id | note

ハッシュタグテーブル:

hashtag_id | hashtag | note_id
于 2012-11-10T07:22:14.830 に答える
1

簡単なテクニックが1つあります。すべてのハッシュタグを1つの文字列として保存するだけです。

たとえば、メモに4つのハッシュタグがあるとします-#study, #homework, #school, #math

したがって、次のように1つの文字列として保存するだけです。

String hastags="study#homework#school#math" 

hastag次に、この文字列をすべてのノートオブジェクトの列としてsqlitedatabseに保存します。

Javaを使用すると文字列を簡単に解析できるため、メモを取得するときに、その列を取得して、次のhashtagような区切り文字(この場合は「#」)に基づいて文字列配列(ハッシュタグごとに1つの文字列要素を含む)に分割できます。それで:

String hastags[]= hashtagStringFromDB.split("#");

これで、そのノートオブジェクトのすべてのハッシュタグが単一の文字列配列になり、これを使用して簡単に処理できます。hashtag[0], hashtag[1]...etc

別のオプションhashtagsは、別のテーブルを作成することです。すべてのハッシュタグは、一意の識別子(外部キー)を使用してこのテーブルに入り、notesテーブル内のメモにリンクします。したがってnote_id、特定のメモのを使用してこのテーブルをクエリすると、そのメモに属するすべてのハッシュタグが返されます。

于 2012-11-10T07:24:33.840 に答える