数据库设计 – 你应该在哪里定义外键?

数据库或应用程序的代码部分中定义外键是否更好?

解决方法

将外键放在数据库上.即使您在保存之前验证应用程序中的数据,FK也是一个很好的QA备份.对于第一个近似值,应用程序始终存在数据问题.将这样的控件从系统中取出只会引发数据无提示损坏的故障模式.

没有什么比在数据仓库中工作几年才能看到这一点.在应用程序开发人员认为可以在应用程序代码中强制执行数据完整性之后,您会花时间在错误错误之后完成这些工作.花费任何时间执行此操作,您将得出结论,应用程序托管数据完整性只不过是一种自负.

此外,查询优化器可以使用外键来推断有关表连接的信息,因此FK将产生更高效的查询计划.

外键还有很多其他好处.帮助每个人 – 把FK放在数据库上.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...