作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我想为一位艺术家的音乐会历史设计一个粉丝网站,类似于 mikeportnoy.com 或 forgotten-yesterdays.com 上的网站。但是,我无法弄清楚如何将乐队人员与音乐会日期联系起来。人员变动比较频繁,所以我认为他们应该放在一个单独的表中,我将其命名为“阵容”。到目前为止,这是我所知道的,有人可以告诉我加入特定巡演日期阵容的最佳方式吗?我想我可以将 DateID 添加到 Lineup 表中,但我必须相信有更好的方法。此外,乐队中的人数也随着时间的推移发生了变化;一开始是三重奏,现在增加到 7,但将来可能会下降或上升。
Tourdate table
DateID
DateYR
DateMth
DateDy
LocID
VenueID
Lineup table
ArtistID
ArtistName
ArtistInstr
Setlist Table
DateID
TrackNo
SongID
Song table
SongID
SongName
AlbumName
TrackNo
Venue Table
VenueID
VenueName
Location (i.e. City) table
LocID
LocName
最佳答案
我建议对您的初始方法进行以下修改:
Tourdate table
TourdateID
Date -- you can split this into its components easily
LocID
VenueID
LineupID
SetlistID
Artist table
ArtistID
ArtistName
ArtistInstr
Lineup table
LineupID
ArtistID
Setlist table
SetlistID
SongID
(you get the date from the Tourdate table and the TrackNo from the Song table)
这允许每个巡演日期都有自己的阵容,每个阵容都有自己的一组艺术家。此外, field 和位置可能是同一张 table ;如果没有,它们肯定会被链接起来。
关于database - 表链接 : designing a concert DB for an artist with several personnel changes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48081072/
假设 TABLE-A 在 TABLE-B 中可以有一行或多行,在 TABLE-C 中可以有一行或多行,在 TABLE-D 中可以有一行或多行......等等。 假设我在 TABLE-Z 并且需要了解有
我是一名优秀的程序员,十分优秀!