当一个实体具有复合主键时,一个主键可以为null吗



例如";图书馆必须跟踪每本书的状态、位置、书名、第一作者以及损失和逾期归还的价格(成本(书籍将通过其ISBN进行识别。为了允许同一本书的多个副本,每个副本都将具有唯一的ID号";

所以,在上面的场景中,我得到了ISBN和唯一ID是"的复合主键;书";实体如果一本书有多个副本,则视为唯一ID。每当一本书没有多个副本时,就不考虑唯一ID。那么,唯一ID可能为null吗?

  • 主键不能为空;这只是定义的一部分
  • 一张桌子可以有许多";候选密钥";,但是只有一个可以被指定为主键;这就是";初级";在本文中的意思
  • 空值和具有重复值是完全不同的;null表示";我不知道";,或";该列不适用于该行";,或类似的想法
  • 说一个专栏有时是独一无二的,有时则毫无意义。唯一意味着每一行都有不同的值

您可能试图描述的是这样一种情况,ISBN AND和标识符的组合对于每一行都是唯一的,但每一行本身都不是。在这种情况下;一个复合键"-由多列组成的单个键。为了用作主键,该组合键不能包含null;但也可以,只需为每本书的第一本指定一个值0或1。

对该要求的另一种解释是,标识符列本身是唯一的,并且独立于ISBN。在这种情况下,它永远不会有null,并且适合作为自己的主键。

最新更新