更新SQL Server中的视图连续列

时间:2014-12-15 05:04:27

标签: sql-server view sql-server-2008-r2 sql-update

我有一个名为Employee的表,其中包含以下列:

EmpID, EmpName, HRA, Basics, Allowances

我创建了一个视图:

CREATE VIEW vw_Emp 
AS 
   SELECT 
       EmpName AS 'Employee', 
       (HRA + Basics + Allowance) AS 'Salary' 
   FROM Employee

我想更新薪水,以便将其存储到相应的列HRABasicsAllowance中。是否有可能实现这一目标?

2 个答案:

答案 0 :(得分:1)

您无法仅使用视图更新HRABasicsAllowances列,因为它是计算列。考虑到服务器无法知道如何划分您在3列之间为Salary提供的金额,而且显而易见的原因就是这样。

答案 1 :(得分:0)

直接使用视图无法更新计算列。 您可以在视图上使用“替代触发器”来处理此类情况。