我读到一些关于数据库视图的类似文章:
视野非常强大
有一个原因很有用
最重要的是其他很好的理由。
它们减少了代码重复。也就是说,
在大多数情况下,是底线。如果
查询将在三个或更多时间内使用
一个地方,那么一个景观将彻底
如果架构或
查询参数更改。我曾经不得不
编辑22个要更改的存储过程
一些查询逻辑。如果原始的
架构利用了视图,然后
我只有三次改变。
有谁能给我解释一下它是怎么工作的,或者给我举几个例子?
谨致问候!
最佳答案
视图允许在不影响应用程序查看数据的方式的情况下更改基础表结构。因为一个视图通常代表一个或多个表上的一个更高层次的域概念(例如,当从“航班”、“票价”和“航空公司”表构造“可用航班”视图时),它们可以以统一的方式呈现复杂的思想。
因为如何将原始数据库表转换成视图的逻辑在数据库中被捕获,所以它们的构造的复杂性不太可能达到您的应用程序。这意味着,如果在许多地方使用Available Flights
,然后Flights
表发生了一些变化,那么只需要显式依赖于Flights
的部分,而不需要更改任何关于Available Flights
的部分。
出于这个原因,使用视图来减少复杂性并隔离将模式更改破坏到数据库中的风险被认为是一个好主意,因为它不会影响依赖的应用程序。