考虑以下设计:
CREATE TABLE dbo.Farmers
(
FarmerName varchar(10) NOT NULL
PRIMARY KEY
);
CREATE TABLE dbo.FarmEquipment
(
FarmEquipmentName varchar(10) NOT NULL
PRIMARY KEY
, CreatorFarmer varchar(10) NOT NULL
FOREIGN KEY REFERENCES dbo.Farmers(FarmerName)
ON UPDATE CASCADE
ON DELETE CASCADE
);
CREATE TABLE dbo.Fields
(
FieldName varchar(10) NOT NULL
, OwnerFarmer varchar(10) NOT NULL
FOREIGN KEY REFERENCES dbo.Farmers(FarmerName)
ON UPDATE CASCADE
ON DELETE CASCADE
, FarmEquipment varchar(10) NOT NULL
FOREIGN KEY REFERENCES dbo.FarmEquipment(FarmEquipmentName)
ON UPDATE CASCADE
ON DELETE CASCADE
);
Run Code Online (Sandbox Code Playgroud)
用例: