【发布时间】:2015-11-08 09:42:41
【问题描述】:
出于审核目的,我在数据库中的每个 Sql Server 表都有一个“LastUpdatedUserId”和“CreateduserId”列
这些列是 ApplicationUser 表的外键
严格来说,每个表的两列都应该有一个检查约束
然而,这使得数据图表不可读且无法布局
应用程序负责使用当前登录的“ApplicationUser”更新这些列
所以....
...我应该使用 SQL 服务器检查约束还是依赖应用程序来强制执行参照完整性
【问题讨论】:
-
是什么让数据图表不可读?外键?我不确定你在问什么。是否要删除外键?因为根据您当前对与用户表作为外键链接的所有审计表的设计,可确保引用完整性。
-
我有 85 个表,所有这些表都有(至少)2 列,它们是 ApplicationUser 表的外键。 table 之间还有许多其他关系。因此,仅来自 ApplicationUser 表的数据图就有超过 170 条关系线。您可以想象阅读图表有多困难......!
标签: sql-server referential-integrity