SQLServer视图(六)

转载 2007年09月17日 17:34:00

6.检查视图的数据变动

使用视图还可以达到约束的功能,当视图中有新记录插入或被修改时,若不符合视图的创建条件时,将会被拒绝执行。要实现该功能,则要使用WITH CHECK OPTION参数。

例八、创建一个视图,要求在将视图内的所有产品的单价必须要超过20元。其代码如下:

CREATE VIEW view_例八

         AS

         SELECT 产品ID,产品名称,单价

                   FROM 产品

                   WHERE 单价> $20

         WITH CHECK OPTION

如果此时要将视图中的编号为4的记录的单价改为16,那么运行以下代码将会出错:

UPDATE view_例八

         SET 单价= $16

         WHERE 产品ID = 4

因为在视图“view_例八中,已经用“WITH CHECK OPTION”设定了数据检查,在对该视图里数据进行操作时,如果不能符合当初创建视图时设定的单价> $20”的条件,则不能执行该操作。但是在该视图所引用的数据表里,还是可以执行的,例如以下代码执行就能成功:

UPDATE  产品

         SET 单价= $16

         WHERE 产品ID = 4

  检查视图的数据变动

使用视图还可以达到约束的功能,当视图中有新记录插入或被修改时,若不符合视图的创建条件时,将会被拒绝执行。要实现该功能,则要使用WITH CHECK OPTION参数。

例八、创建一个视图,要求在将视图内的所有产品的单价必须要超过20元。其代码如下:

CREATE VIEW view_例八

         AS

         SELECT 产品ID,产品名称,单价

                   FROM 产品

                   WHERE 单价> $20

         WITH CHECK OPTION

如果此时要将视图中的编号为4的记录的单价改为16,那么运行以下代码将会出错:

UPDATE view_例八

         SET 单价= $16

         WHERE 产品ID = 4

因为在视图“view_例八中,已经用“WITH CHECK OPTION”设定了数据检查,在对该视图里数据进行操作时,如果不能符合当初创建视图时设定的单价> $20”的条件,则不能执行该操作。但是在该视图所引用的数据表里,还是可以执行的,例如以下代码执行就能成功:

UPDATE  产品

         SET 单价= $16

         WHERE 产品ID = 4

 

相关文章推荐

SQLserver的事务,索引,视图,函数,存储过程

一.事务      在sqlserver中当出现多条语句时,当其中有一条不合理,不会停止下来,      因此,我们会用事务去解决这个问题,当有一个错误时,不允许往下继续进行,     只有...

sqlserver视图查询效率测试

测试视图的查询效率,结果清晰表示视图不降低查询效率。
  • wanmdb
  • wanmdb
  • 2015-12-19 15:23
  • 2854

sqlserver视图

  • 2011-11-15 19:02
  • 84KB
  • 下载

SQLServer之视图篇

视图是从一个或者几个基本表(或视图)导出的表。它与基本表不同,是一个虚表。数据库中只存放视图的定义,而不存在视图对应的数据,这些数据仍然存放在原来的基本表中。所以一旦基本表中的数据发生变化,从视图中查...

SqlServer第七章_实现视图

  • 2011-06-07 08:49
  • 618KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)