1

音楽に関するメタデータを保存するデータベースを設計しています。
たとえば、次のデータを保存します。

曲名:雨の降らない年
アルバム : 雨のない年
アーティスト:セレーナ・ゴメス&ザ・シーン
作曲者:リンディ・ロビンス、トビー・ギャッド

...これらの 5 つのテーブルに:

曲: song_ID、songTitle、album_ID、artist_ID、composer_IDs
アルバム : album_ID、albumTitle
アーティスト:artist_ID、artistName、performer_IDs
パフォーマー: performer_ID、performerName
作曲家: composer_ID, composerName

問題は、特定の曲 (song_ID) に対して、1 つ以上の作曲家 (composer_ID) が関連付けられている可能性があることです。バンド(artist_ID)のメンバー数(performer_ID)も同様です。

これらの列に複数の値を格納するために、配列やコンマ区切り値を使用したくありません。この問題を解決するにはどうすればよいですか?

私はすでにこの回答を読みましたが、この設計でそれを実装する方法がわかりませんでした。どんな助けでも大歓迎です。

4

2 に答える 2

3

Song_Composerの 2 つの列を含むという別のテーブルを作成します。次に、同じ曲 ID を持つ行を追加することで、各曲に好きな数の作曲家を関連付けることができます。Song_IDcomposer_ID

于 2013-10-18T19:32:50.090 に答える
1

テーブル構造を変更し、2 つのテーブルを追加SongsComposers&ArtistsPerformers

曲: song_ID、songTitle、album_ID、artist_ID

作曲家: composer_ID, composerName

SongsComposers :song_ID,composer_ID

アーティスト: アーティスト_ID、アーティスト名

パフォーマー: performer_ID、performerName

ArtistsPerformers :artist_ID,performer_ID

于 2013-10-18T19:39:04.017 に答える