用触发器创建的表视图,有人请解释为什么?

Nul*_*nce 3 sql-server

我是一个项目的一部分,该项目继承了一个软件,该软件具有独特的 MS SQL 数据库设计,我试图了解他们为什么按照他们的方式设计它。

基本上对于每个表,例如表 tab_user,都有一个名为 tab_user_view 的重复表。tab_user_view 由放置在 tab_user 表上的触发器填充以填充 tab_user_view。我们所有列出数据的页面都从 _view 表中检索数据。我有点理解这是为了避免锁定和提高性能,但他们为什么不只使用传统视图?最初的软件是在 2003 年编写的,所以是否有可能我们现在拥有的某些技术不可用?谢谢

更新

- 是的,对 _view 表有一些数据操作,但同样的事情可以用视图来实现,那为什么呢?

Eri*_*ikE 5

原因是因为评估任何学科能力的技能与能力本身的技能是相同的。他们认为这个设计是个好主意,因为他们在数据库设计方面不是很熟练,因此没有足够的技巧认识到这是一个糟糕的主意。