0

问题就是标题本身。我被要求在 SQL Server 中使用计算列。但是当我在谷歌上搜索它时,我发现它主要用于显示多个列的组合值。如果将其视为永久列,则使用它可能会降低性能。所以我想知道

  1. 的优点和缺点
  2. 我们需要在何时何地实现这一点

如果可能的话,请指导我如何解决以下问题(使用计算列。如果不可能,为什么?)。或任何其他方式来实现此要求。我的要求是使用一个列来识别该表的哪个列已更新。所以我可以比较这些值并识别变化。

编辑:下面的表结构。

table structure
 ColA int ID (PK) - autonumber.
 ColB Nvarchar
 ColC Nvarchar
 ColD Int
 ColE Int
 ColF Nvarchar

-- Updatation can happen any one the coloumns other than ColA 

提前致谢

4

1 回答 1

0

这听起来像您需要触发器,而不是计算列。您的最后一句话表明您要“比较值并确定更改。”。你的最终目标是什么?您是否尝试保留此信息,以便未来的数据阅读器可以使用该信息?还是为了您自己的编程需求,以便在数据更改时您可以通过编程完成某些事情?在这两种情况下,触发器都会让您有机会在变化时询问正在发生的变化。您可以使用 COLUMNS_UPDATED() 之类的 @isme: 在触发器内建议。

于 2012-04-15T06:12:34.110 回答