Sql server 2005 SQL Server 2005计算列已持久化

Sql server 2005 SQL Server 2005计算列已持久化,sql-server-2005,calculated-columns,Sql Server 2005,Calculated Columns,我在一个表中有一些计算列,需要知道是否应该将其持久化为true。有什么好处?有什么缺点吗?“持久化”是什么意思?在本上下文中,“持久化”是指“物理存储” 这意味着计算值在插入时(和更新时)计算一次并存储在光盘上,因此不必在每次选择时再次计算 由于必须计算列,所以持久化还会对插入和更新造成性能损失,但会提高后续select查询的性能 所以,这取决于您的使用模式,即遵循哪种方法:如果您不经常更新,但查询量很大,则应将persistend=true 如果您经常更新,或者如果不关心检索性能,则应该考虑设

我在一个表中有一些计算列,需要知道是否应该将其持久化为true。有什么好处?有什么缺点吗?“持久化”是什么意思?

在本上下文中,“持久化”是指“物理存储”

这意味着计算值在插入时(和更新时)计算一次并存储在光盘上,因此不必在每次选择时再次计算

由于必须计算列,所以持久化还会对插入和更新造成性能损失,但会提高后续select查询的性能

所以,这取决于您的使用模式,即遵循哪种方法:如果您不经常更新,但查询量很大,则应将persistend=true


如果您经常更新,或者如果不关心检索性能,则应该考虑设置SturtEng= false

另一个没有提到的问题:必须保持一个计算列可以从外键中使用。