欢迎您访问我爱IT技术网,今天小编为你分享的编程技术是:【通过视图修改数据时所应掌握的基本准则】,下面是详细的分享!
通过视图修改数据时所应掌握的基本准则
假如不使用INSTEAD OF触发器或可更新分区视图而是通过视图来修改数据,那么再修改之前,请考虑下列准则:
◆如果在视图定义中使用了 WITH CHECK OPTION 子句,则所有在视图上执行的数据修改语句都必须符合定义视图的 SELECT 语句中所设定的条件。如果使用了 WITH CHECK OPTION 子句,修改行时需注意不让它们在修改完成后从视图中消失。任何可能导致行消失的修改都会被取消,并显示错误信息。
◆SQL Server 必须能够明确地解析对视图所引用基表中的特定行所做的修改操作。不能在一个语句中对多个基础表使用数据修改语句。因此,列在 UPDATE 或 INSERT 语句中的列必须属于视图定义中的同一个基表。
◆对于基础表中需更新而又不允许空值的所有列,它们的值在 INSERT 语句或 DEFAULT 定义中指定。这将确保基础表中所有需要值的列都可以获取值。
◆在基础表的列中修改的数据必须符合对这些列的约束,如为空性、约束、DEFAULT 定义等。例如,如果要删除一行,则相关表中的所有基础 FOREIGN KEY 约束必须仍然得到满足,删除操作才能成功。
◆分布式分区视图(远程视图)不能使用键集驱动游标更新。此项限制可通过在基础表上而不在视图本身上声明游标得到解决。
此外,如果在视图中删除数据:
◆在视图定义的 FROM 子句中只能列出一个表。
不能在视图中与text、ntext 或 image 列一起使用 READTEXT 和 WRITETEXT 语句。
以上所分享的是关于通过视图修改数据时所应掌握的基本准则,下面是编辑为你推荐的有价值的用户互动:
相关问题:sql中如果修改了基本表的数据,视图也会自动随之修...
答:视图是一个虚拟表,其内容由查询定义。视图中的数据是由一张或多张表中的数据组成的。所以说,如果你改动了基本表,如果你的视图来源于这个基本表,那视图给你呈现的结果也会随之发生变化。 >>详细
相关问题:通过视图修改基本表数据与直接修改基本表数据有何区别
答:前者安全,并另外保存了视图;而后者不安全。 >>详细
相关问题:基本表数据发生改变,什么会从视图反映出来
答:视图是一个虚拟表,其内容由查询定义。视图中的数据是由一张或多张表中的数据组成的。所以说,如果你改动了基本表,如果你的视图来源于这个基本表,那视图给你呈现的结果也会随之发生变化。即:基本表数据发生改变,改变会从视图反映出来。 视图... >>详细
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
