我想創建一個簡單的Web應用程序,它將有一個從用戶到項目的連接。 假設每個用戶都會分配給他一些項目(在這種情況下,系列和劇集以及其中的很多項目)。一個大系統的數據庫結構
我該如何規劃像這樣的系統(表格,字段等)的數據庫結構?這是我第一次遇到這種情況。
我想創建一個簡單的Web應用程序,它將有一個從用戶到項目的連接。 假設每個用戶都會分配給他一些項目(在這種情況下,系列和劇集以及其中的很多項目)。一個大系統的數據庫結構
我該如何規劃像這樣的系統(表格,字段等)的數據庫結構?這是我第一次遇到這種情況。
看起來像一個典型的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
);
如果你需要系列和季節細分或用戶組等,你會有更多的表格。
基礎知識是一個用戶表和一個項目表。這些有時稱爲「主」表。然後你有一個交叉引用表,users-items,它具有項目的外鍵和用戶的外鍵。這有時稱爲「多對多」表。
至於欄目和其他細節,你必須告訴我們更多關於你想跟蹤的內容。一般來說,每個事實都成爲表格中的一列。因此,對於一個電視劇(我猜這裏因爲你沒有告訴我們很多),你可能會有一個賽季的季節,第一季,第二季等,這一季出現了。
也許然後在項目表(這可能應該被稱爲系列)的子表,該表列出了該季節的星星。
如果您提供更多詳細信息,我可以編輯一些答案。