oracle - 外键是否总是引用另一个表中的唯一键?

标签 oracle key parent

子表中的外键(单列)是否不可能引用具有重复值的父键?

最佳答案

根据 SQL 标准,外键必须引用父表的主键或唯一键。如果主键有多列,则外键必须具有相同的列数和顺序。因此,外键引用父表中的唯一行;不能有重复。

<小时/>

回复您的评论:

如果 T.A 是主键,则不能有任何重复项。任何主键都必须是唯一且非空的。因此,如果子表有一个引用父表主键的外键,它必须匹配一个非空、唯一的值,因此恰好引用父表中的一行。在这种情况下,您无法创建引用多个父行的子行。

可以创建一个外键列为 NULL 的子行,在这种情况下,它不会引用父表中的任何行。

关于oracle - 外键是否总是引用另一个表中的唯一键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8706073/

相关文章:

syntax - jq 嵌套键中的特殊字符

delphi - Delphi 中将对象强制转换为父类

html - 如何将 css 添加到父类的父类的父类?

java - 使用 JDBC 从长字符串创建 CLOB

sql - Oracle/SQL ORDER BY 语句的问题

java - 在oracle存储过程中传递数组

javascript - 检查对象文字属性的名称

oracle - 从 Oracle 获取包方法和参数

ruby - 如何在 Ruby 中动态命名哈希键

c# - Json.NET C# : JToken. Parent 始终为 null