如果表中一个字段不是本表的主关键字,而是另外一个表的主关键字或候选关键字,这个字段叫做什么?谢谢!

如题所述

第1个回答  2022-11-17

这个字段叫做外部关键字。

外部关键字也是表中的一个或多个字段,外部关键字的值与相关表的主关键字相匹配。例如,“供应商"表中的主关键字“供应商ID”字段就与“产品”表中的外部关键字“供应商ID"字段相连。

当一张二维表(如T1)的主关键字被包含到另外一张二维表(如T2)中时,它就称为T2的外部关键字(Foreign Key)。

扩展资料:

有很多时候,程序员会发现字段缺少、多余问题或者是创建外键以后就不能添加没有受约束的行[特殊情况下是有必要的,这个时候不想对表结构进行操作,就可以使用约束失效。

以 Northwind 为例:想给产品表【Products表】添加一条不受种类表【Categories表】限制的数据。可以使产品表中的 Categories 约束失效。

写法:ALTER TABLE dbo.Products NOCHECK CONSTRAINT FK_Products_Categories。

添加完成后再使其有效:

ALTER TABLE dbo.Products CHECK。

这样就完成不受某表约束的数据添加了。

还有一个好处是:如上述例子。修改 Categories 表时 添加字段时 要把所有引用 Categories 表的外键给失效。等给 Categories 表添加字段完成后再使所有应用 Categories 表的外键恢复有效性即可

相似回答