【发布时间】:2013-12-17 20:04:21
【问题描述】:
我使用Employee 表中的 2 列创建了一个视图,如下所示
Create VIEW [dbo].[vwTestEmp] AS
select
EMpID,
case when (Address1 IS null) then null
when (Address1 IS not null) then Address1
end as "EMpAddress",
'' as "Date_Verified"
FROM Employee;
现在Date_Verified 不在Employee 表中,视图中的派生列也是如此,并且包含空值。手动验证某些流程后,我想调用
update [dbo].[vwTestEmp]
set Date_verified = GETDATE()
where EMpid = 60;
我收到一个错误
视图或函数“vwTestEMp”的更新或插入失败,因为它包含派生或常量字段。
如何处理这个错误?
谢谢 先生
【问题讨论】:
-
您知道非索引视图实际上并不存储数据,对吧?那么您的更新声明实际上要做什么?
-
这个日期可能会在更新完成时进行调查,表格中的任何差异,我们都可以使用该日期来查找。
-
我认为您不太了解视图是什么。 它不存储数据。
标签: sql-server view