@H_403_1@根据MSDN,由简单选择组成的视图自动允许您在表上使用insert / update / delete语句.有没有办法防止这种情况 – 告诉sql Server该视图是只读的,你不能用它来修改表?
@R_502_323@
最好的方法是删除View上的UPDATE / DELETE / INSERT权限.
除此之外,你可以在视图上创建一个INSTEAD OF触发器,它只是不做任何事情让更新无声地失败或有quite a few constructs that make views non updatable.所以你可以选择一个不改变语义或效率然后违反它的.
编辑:以下似乎符合条例草案.
CREATE VIEW Bar AS SELECT TOP 100 PERCENT x FROM foo WITH CHECK OPTION