创建外键是否自动意味着引用完整性?

时间:2011-09-12 21:12:42

标签: database-design referential-integrity

如果我创建外键是参照完整性自动?我是否必须设置其他任何内容才能进行级联工作?

编辑:例如,在postgres中。我的意思是通过自动,我不需要设置其他任何东西,使RI工作。删除。我猜测,虽然FK意味着它将确保插入的FK中存在数据。

3 个答案:

答案 0 :(得分:7)

是,一旦创建外键,就会强制执行参照完整性。您也可以定义其他选项,例如级联更新和删除。通常这是用于创建外键的相同语法的一部分,通常必须在创建外键时指定 - 至少在标准SQL中它是如何工作的。

答案 1 :(得分:2)

参考完整性比外键更多。

说到级联,它取决于您如何定义外键以及您正在使用的RDBMS。

答案 2 :(得分:1)

  

如果我创建外键是参照完整性自动?

没有

  

我是否必须设置其他任何内容才能使级联工作?

详细信息取决于您使用的数据库系统,但“ON DELETE CASCADE”之类的内容可能就是您想要的。