原谅我的标题,我想不出任何能准确描述我在说什么的东西。
我目前有以下关系。
CREATE TABLE Events
(
ID INT IDENTITY(1,1) NOT NULL,
Name NVARCHAR(64) NOT NULL,
PRIMARY KEY(ID)
)
CREATE TABLE Locations
(
ID INT IDENTITY(1,1) NOT NULL,
EventID INT NOT NULL,
Name NVARCHAR(64) NOT NULL,
PRIMARY KEY(ID)
)
ALTER TABLE Locations ADD FOREIGN KEY(EventID) REFERENCES Events(ID)
Run Code Online (Sandbox Code Playgroud)
基本上,一个事件可以有零个或多个位置。我现在想要的是将捐赠与事件相关联,或者更具体地将其与位置相关联。
CREATE TABLE Donations
(
ID INT IDENTITY(1,1) NOT NULL,
EventID INT NOT NULL,
LocationID INT NULL, -- this is optional
PRIMARY KEY(ID)
)
ALTER TABLE Donations ADD FOREIGN KEY(EventID) REFERENCES Events(ID)
ALTER TABLE …Run Code Online (Sandbox Code Playgroud)