数据库中,主键是不能重复,唯一的,请问外键是否也不能重复的??

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库中,主键是不能重复,唯一的,请问外键是否也不能重复的??相关的知识,希望对你有一定的参考价值。

一个表的外键是另一个表的主键,表示两个表的联系。
比如a,b是两个表。a的外键是b的主键(a中的某一列是b的主键)。这个外键就表示了a,b之间的关系。
这个外键在a中是可以重复的,但是在b中由于是主键所以不能重复。
参考技术A 其实,不论是程序参数的定义或者数据库字段的设置,都是一样的
因为,参数或者数据字段都是一个定义值
我们在页面上显示,就是要告诉数据库指定显示那个
如果重复,名字都一样,就像一个班中有几个人都叫一个名字,那就老师点名也就不会知道到底说的是那个了。

外键是唯一的吗?

表A的主键是aId,外键是bId,表B的主键是bId。
如果
select * from A
where aId = '101'
那得得出来的必然是一条记录集,也就是一行。

如果
select * from A
where bId = '011'
的话,查询出来的结果会不会有多条?也就是多行?如果是的话,和表B有何关系 ?

是有多行阿。
外键在其他表是主键,是唯一值,
在本表可以有多个,
它的约束是,如果其他表没有某个主键值,在本表就不能插入这个外键值。
参考技术A 表A的bid的值必须是表b的bid中的值。不过表A的bid的值可以重复。

以上是关于数据库中,主键是不能重复,唯一的,请问外键是否也不能重复的??的主要内容,如果未能解决你的问题,请参考以下文章

请问SQL server 中的主键和外键的作用

主键和外键的区别:

很菜的数据库问题,主键的值允许重复吗?外键啥作用?

外键是唯一的吗?

mysql 主键索引和唯一索引的区别

主键,外键和索引的区别