更新视图,竟然爆错,这让老夫百思不得其解,求解
我的三张表 样式一样
然后手动创建了视图
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不可更新,因为没有找到分区依据列。
咋整!
然后手动创建了视图
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