如何在继承类postgresql上实现外键
Posted
技术标签:
【中文标题】如何在继承类postgresql上实现外键【英文标题】:How to implement foreign key on inheritant class postgresql 【发布时间】:2022-01-17 02:42:00 【问题描述】:我正在从事一个学校项目,该项目需要基于该 UML 架构实现数据库:
我想知道如何在project
类别中引用Scientifique
类的外键,因为Scientifique
没有主键(它有父类的主键我认为的人员)。
我应该在Scientifique
中添加主键吗?
【问题讨论】:
是的,它必须有一个主键作为外键 【参考方案1】:这取决于你所说的添加是什么意思。您通常会将抽象模型转换为更具体的数据库模型。在该转换中,您会将外键添加为属性,并最终将它们(基于配置文件)定型为例如«FK»。
或者,您可以在 Erwin(或任何 ERD 工具)之类的东西中创建架构并在那里创建外键。
我会避免将这些信息添加到抽象模型中,因为它会简单地考虑抽象的重要性......
【讨论】:
我的意思是添加一个新列 idScientifique,但这实际上看起来更好(如果可行的话):sql CREATE TABLE personnel(idPersonnel serial PRIMARY KEY, nom varchar(50), prenom varchar(50), date_naissance date, adresse varchar(100), ville varchar(75), code_postal char(5), date_recrutement date); CREATE TABLE scientifique(idPersonnel PRIMARY KEY, grade varchar(20)) INHERITS personnel;
以上是关于如何在继承类postgresql上实现外键的主要内容,如果未能解决你的问题,请参考以下文章