给定一个表,有没有办法识别所有在该表上进行外键引用的表?
实际情况是这样的。给定一个数据库,我有一组C#模式类,我必须从数据库中的数据填充它们并将它们存储到缓存中。所有这些模式应始终与数据库同步。
现在,我有两种方法可以解决上述问题,一种是每当数据库发生更改时,请更新所有存储的模式,这将非常昂贵。另一种是使用一些基于启发式的算法来正确识别将受到db更改影响的架构并仅更新这些架构。
为了实现这一点,我考虑构建一个dependency tree/graph
类型的结构,其中一个表T1
被调用为依赖于T2
的表T1
对foreign key
的约束T2
。因此,无论何时在一个或多个表中发生更改,我都可以快速迭代图表并说明所有模式都需要更新。
我知道使用数据字典可以找到这些依赖关系,但由于我使用的是Entity Framework
,我正在寻找通过Entity Framework
进行此操作的方法。
此外,如果某人有更好的方法做同样的事情,也可以分享。