更新视图,竟然爆错,这让老夫百思不得其解,求解

我的三张表 样式一样 
然后手动创建了视图 
sql语句为

SELECT * FROM A
UNION ALL
SELECT * FROM B
UNION ALL
SELECT * FROM C

现在运行视图 abc
select * from abc 可以

但是我更新时候爆错了 该怎么办
update abc set name=‘xsax’ where ID=2

错误为:UNION ALL 视图 'csbxjj.dbo.abc不可更新,因为没有找到分区依据列。
咋整!

作者: qq623932737   发布时间: 2011-06-16

那你就直接更新表

作者: aspwebchh   发布时间: 2011-06-16

看你这样 我很想扁你

作者: qq623932737   发布时间: 2011-06-16

晕,在基于多表的情况下视图不能直接更新,只能是在单表的情况下才能修改,实在不行你写函数应该可以

作者: zhuhui184   发布时间: 2011-06-16

使用了:UNION ALL 的视图不能更新,您可以直接更新A表或B表中相应字段。然后再刷新一下就行!

作者: babydog01   发布时间: 2011-06-16

我想要的就是直接更新视图 能单个修改早好了哦

作者: qq623932737   发布时间: 2011-06-16