我正在使用数据库来保存通话时间表的信息。目前,我有一个看起来像这样的结构:
Table - Person: (key)ID, LName, FName, Phone, Email
Table - PersonTeam: (from Person)ID, (from Team)ID
Table - Team: (key)ID, TeamName
Table - Calendar: (key dateTime)dt, year, month, day, etc...
Table - Schedule: (from Calendar)dt, (id of Person)OnCall_NY, (id of Person)OnCall_MA, (id of Person)OnCall_CA
Run Code Online (Sandbox Code Playgroud)
我的问题是:对于Schedule表,我应该保持其结构原样,dt是唯一键,还是应该重新排列它,使dt不唯一并且该表如下所示:
Table - Schedule: (from Calendar)dt, (from Team)ID, (from Person)ID
Run Code Online (Sandbox Code Playgroud)
并每天有多个条目,或者仅使用以下命令是否有意义:
Table - Schedule: (from Calendar)dt, (from PersonTeam)KeyID - [make a key ID on each of the person/team …Run Code Online (Sandbox Code Playgroud) sql database-design calendar relational-database database-schema