Android API 8(Froyo 2.2)で実行されているSQLiteデータベースに音楽タグとコメントを保存する効率的な方法を探しています。Vorbisコメントと同様の形式にする必要があります。
これまで私が検討したこと:
同様にフォーマットされた「fields」という名前の列に格納されたJSONオブジェクト:
+-----+----------------------------------------------------------------------+
| _id | fields |
+-----+----------------------------------------------------------------------+
| 0 | {"artist":"Artist", "title":"Track", "album":"Album 123", "track":3} |
+-----+----------------------------------------------------------------------+
各フィールドの個々の列。これはgoogle.android.musicがフィールドを保存する方法ですが、新しいトラックが列を追加しすぎるのではないかと心配していました。ソース:
一方、経験豊富なデータベース設計者の多くは、適切に正規化されたデータベースでは、テーブルに100を超える列が必要になることはないと主張します。 http://www.sqlite.org/limits.html
+-----+-------------+----------------+------------+
| _id | artist | album | title |
+-----+-------------+----------------+------------+
| 0 | Test Artist | Test Album 123 | Test Title |
| 1 | An Artist | This Album | This Title |
+-----+-------------+----------------+------------+
もともと私はそれらを入れただけです
Map<String, String> and invoked toString(), adding it to 'fields' as follows:
+-----+--------------------------------------------------------------+
| _id | fields |
+-----+--------------------------------------------------------------+
| 0 | {title=Example Title, album=Example Album, artist=An Artist} |
+-----+--------------------------------------------------------------+
これはJSONオブジェクト(最初の例)に似ていますが、Javaオブジェクトに解析して戻すなどの問題が追加されています。
任意の数のフィールドのオプションを使用したいので、JSONオブジェクトを使用する傾向があります。代替オプション、または同様の状況で何をするかを教えてください。ありがとう!
http://www.sensefulsolutions.com/2010/10/format-text-as-table.htmlを使用してASCIIテーブルを作成しました