DAMA试题分析:主键有什么特性?

编 辑:彭文华

来 源:大数据架构师(ID:bigdata_arch)

 

彭友萌好,我是老彭友

嗯,上周末我去考了个CDGA,其中有道题出重复了(15和55题),题目大概是这样的,你也来选一下看看结果:

 

就是这样一道看上去很简单的题,结果引起一场超级大讨论。就这个问题都能吵半天,我也是彻底无语了...

不过看完他们的争论,我又凌乱了...

答案一

 

主键允许为空,选A。具体看图:

可以为空,铁证如山!有什么可以反驳的???

答案二

 

主键可以修改,选B。具体如图:

可以修改,铁证如山!有什么可以反驳的???

答案三

 

主键可以重复,选C。具体如下:

主键不可为空或Null值,不可修改,允许联合主键。但是可以重复使用。

这个。。。感觉很牵强啊。主键是唯一ID,肯定不能重复。但是“重复使用”的概念和重复是两码事啊。

到底选什么?

 

我们回到题目上来。我们知道,考试是考试,实操是实操。我们不能拿一MySQL数据库实现的情况来逆向判断主键的特性,就像你不能拿一只长着5条腿的蛤蟆得出所有蛤蟆都是5条腿一样。

回头我设计一个数据库,不允许联合主键的存在,那是不是D选项也错了?所以,这道题考的不是实操,而是主键的定义。

我们看看主键的定义:

主关键字(主键,primary key)是被挑选出来,作表的行的唯一标识的候选关键字。一个表只有一个主关键字。主关键字又可以称为主键。主键可以由一个字段,也可以由多个字段组成,分别称为单字段主键或多字段主键,又称主码。并且它可以唯一确定表中的一行数据,或者可以唯一确定一个实体。

我也找了一下其他书上的定义:

《数据库系统设计》

《数据库系统概论》

从上面的定义和书上所述,主键的定义关键字是“唯一”、“确定一个实体”、“一个或多个字段”。

 很明显,唯一代表着不允许重复;确定一个实体决定了主键不允许为空;联合主键就不用说了。所以,ACD都对,唯有

B:主键不允许修改

这条是错误的。所以选B。反正我两道题都选了B,如果我CDGA过了,就算了。如果没过,我就去找汪主席聊聊去

扩展阅读:公众号“大数据架构师”后台回复“DMBOK”即可下载彭友会的徐总他们组织整理的【DMBOK2200个知识点】。

更多精彩:

    带你去看快手数据管治技术交流会-模型规范 

    OKR的完全落地实践手册

    一口气说穿数据中台-给你架构师的视角

    数据项目成败的关键-战略、规划、组织与制度!

    数据资产建设的灵魂三连问

    数据中台和ERP是啥关系?不都是信息系统吗?

    修炼:职场PUA与反PUA


排版 | 老彭

审校 | 老彭  主编 | 老彭

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值