小编典典

SQL Server外键约束的好处

sql

我们正在设计一个数据库,在该数据库中,我需要考虑一些FK(外键)约束。但它不仅限于正式的结构化和规范化。只有在它提供任何性能或可伸缩性优势的情况下,我们才会采用它。

我一直在浏览一些有趣的文章,并在谷歌搜索中获得了实际的好处。以下是一些链接:

http://www.mssqltips.com/tip.asp?tip=1296

我想更多地了解FK的好处(除了正式的结构和著名的级联delete \ update)。

  • 默认情况下,不对FK进行“索引编制”,因此在对FK编制索引时应注意哪些事项?

  • 如何处理映射为外键的可空字段-允许这样做吗?

  • 除了索引之外,这还有助于优化SQL Server中的查询执行计划吗?

我知道还有更多,但我希望专家在这方面发言。请指导我。


阅读 187

收藏
2021-03-23

共1个答案

小编典典

  • 外键没有提供任何性能或可伸缩性优势。
  • 外键强制引用完整性。如果有人尝试错误地从父表中删除行,则可以通过引发错误来提供实际的好处。
  • 默认情况下,不索引外键。您应该索引外键列,因为这样可以避免在删除/更新父行时对子表进行表扫描。
  • 您可以使外键列为空,然后插入null。
2021-03-23