数据透视表是否可以与另一个表具有N:N关系?

时间:2014-12-10 09:25:04

标签: mysql database

我们假设我们有一个数据透视表: days_times 我们有一张表:
是否 days_times 有N:N关系?这是标准吗?!
或者应该分别与建立N:N关系?

1 个答案:

答案 0 :(得分:2)

你很可能想要

CREATE TABLE Schedule  (
    ClassID INT NOT NULL,
    Day DATE NOT NULL,
    TimeOfDay TIME NOT NULL,
    FOREIGN KEY (ClassID) REFERENCES Classes(ClassID),
    FOREIGN KEY (Day) REFERENCES Days(Day),
    FOREIGN KEY (TimeOfDay) REFERENCES Times(TimeOfDay)
)

假设课程,日期和时间看起来像

CREATE TABLE Classes (
    ClassID INT PRIMARY KEY,
    ClassName VARCHAR(N) NOT NULL,
    ... Other Columns
)

CREATE TABLE Days (
    Day DATE PRIMARY KEY,
    ... Other Columns
)

CREATE TABLE Times (
    TimeOfDay TIME PRIMARY KEY,
    ... Other Columns
)