我想创建一个简单的Web应用程序,它将具有从用户到项目的连接。 假设每个用户都会分配一些项目(在这种情况下,系列和剧集,以及其中很多)。
我应该如何为这样的系统(表格,字段等)规划数据库结构?这是我第一次遇到这种情况。
答案 0 :(得分:1)
看起来像是典型的M:N关联。
create table person (
id number not null primary key,
username varchar not null, -- login
-- email, etc
);
create table episode (
id number not null primary key,
ordinal number not null, -- which episode in the series
name varchar not null,
-- whatever else, for instance, a link to series:
-- series_id not null number foreign key referencing series(id)
);
-- the link table you asked about
create table person_x_episode (
person_id number not null foreign key referencing person(id),
episode_id number not null foreign key referencing episode(id),
-- whatever else, like seen date, rating, etc
);
如果您需要系列和季节细分,或者用户组等,您将拥有更多表格。
答案 1 :(得分:0)
基础知识是用户表和项目表。这些有时被称为“主”表。然后你有一个交叉引用表users-items,它有一个项目的外键和一个用户的外键。这有时被称为“多对多”表。
至于专栏和其他细节,你必须告诉我们更多关于你想要追踪的内容。通常,每个事实都成为表中的一列。因此,对于一部电视剧(我猜这里你没有告诉我们太多)你可能会有一个专栏,第一季,第二季等等,这一季出来的那一年。
也许然后是一个项目表的子表(可能应该称为系列),列出那个季节中的星星。
如果您提供更多详细信息,我可以稍微编辑一下答案。