我想在插入新行时将主键列的值从父表传播到特定的子表。
出于解释目的,我创建了以下表格:
Create TABLE Material(
MatID serial PRIMARY KEY,
materialname TEXT
);
Create TABLE RealMaterial(
MatID INT REFERENCES Material(MatID),
attributereal TEXT,
PRIMARY KEY(MatID)
);
Create TABLE VirtualMaterial(
MatID INT REFERENCES Material(MatID),
attributevirt TEXT,
PRIMARY KEY(MatID)
);
当我插入新材料时,我会自动添加 aRealMaterial
或 a VirtualMaterial
(引用新 ID)。我应该强调我想使用这种共享主键模式,而不仅仅是单表继承。
我应该为我的目的使用触发器吗?