网站大量收购独家精品文档,联系QQ:2885784924

第11篇 章 视图 SQL ppt .ppt

  1. 1、本文档共57页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第11篇 章 视图 SQL ppt .ppt

3、使用视图进行修改数据 使用UPDATE语句可以通过视图修改基本表的数据。 如果希望通过一个视图修改表中的数据,首先必须保证这个视图时刻更新的,这就要求查询语句中没有汇总函数,也没有计算字段,此外在查询语句的FROM子句中必须至少引用了一个表。使用UPDATE语句即可以直接对一个表中的数据进行修改,也可以通过一个可更新的视图对基本表中的数据进行修改。 使用视图更新数据记录应该注意以下几点: ①在一个UPDATE语句中修改的字段必须属于同一个基本表。如果要对多个表中的数据行修改,则需要使用多个UPDATE语句来完成。 ②对于基本表数据的修改,必须满足在字段上设置的约束,例如是否可以为空值,是否具有惟一性。 ③如果在视图定义中使用了WITH CHECK OPTION子句,则通过这个视图进行修改时提供的数据就必须满足SELECT语句中的选择条件,否则UPDATE语句将被中止并返回错误信息。 【例】前面建立了一个浏览作者、书名和出版商的视图,现在要更新这个视图中的信息,把姓Hunter的作者的姓更改为Henter,把他写的书《 Secrets of Silicon Valley 》改为《’Top Secrets of Silicon Valley 》。 错误的更新语句(一个UPDATE 语句中同时更新来自两个基本表中的数据列): UPDATE author_title_publisher SET title = ’Top Secrets of Silicon Valley’ , au_lname = Henter WHERE au_lname = Hunter GO 正确的更新语句(分解为两个更新操作): UPDATE author_title_publisher SET title = Top Secrets of Silicon Valley WHERE au_lname = Hunter GO UPDATE author_title_publisher SET au_lname = Henter WHERE au_lname = Hunter GO 即:若一个视图依赖于多个基本表,则一次修改该视图只能变动一个基本表的数据。 4、使用视图进行删除数据 使用视图删除记录,可以删除任何其所依赖的基本表中的记录,直接利用DELETE语句删除记录即可。但必须指定在视图中定义过的字段来删除记录。视图的删除实际就是删除表的数据。 但要注意,对于依赖于多个基本表的视图,不能使用DELETE语句。 其语法格式如下: DELETE 视图名 WHERE 搜索条件 【例】删除B_TITLE中价格小于$10的记录。 DELETE FROM b_title1 WHERE price10 在定义了一个视图之后,可以改变它的名称或修改它的定义,而不用删除后再重建视图。因为那样会丢失与视图相关的权限设置。 一般说来,对视图的修改不会影响任何依赖的对象(如存储过程或触发器),除非对视图的定义的修改使得依赖的对象不再有效了。 四、视图的修改 1. 修改视图定义 2. 重命名视图 3. 查看视图信息 4. 删除视图 修改视图定义 如果已定义的视图不能满足用户要求,可以使用企业管理器或Transact-SQL 中的ALTER VIEW语句修改视图的定义。 1.使用企业管理器修改视图定义 在企业管理器中,右击要修改的视图名称,从弹出的快捷菜单中选择“设计视图”命令,会出现视图的设计窗口。该窗口与创建视图时的窗口相同,可以按照创建视图的方法修改视图的定义。 2.使用Transact-SQL语句修改视图定义 可以使用Transact-SQL语句中的ALTER VIEW语句修改视图,但首先必须拥有使用视图的权限,然后才能使用ALTER VIEW命令。 使用ALTER VIEW语句的语法为: ALTER VIEW [ database_name . ] [ owner . ] view_name [ ( column [ ,...n ] ) [ WITH view_attribute [ ,...n ] ] AS SELECT_statement [ WITH CHECK OPTION ] view_attribute ::= { ENCRYPTION | SCHEMABINDING | VIEW_METADATA } 在修改视图时需要注意以下几点: ①只有当在执行ALTER VIEW语句前后视图中的列有同样的名称的时候,视图中的列的权限才可以保留下来。 ②如果视图以前的定义中使用了WITH ENCRYPTION或CHECK OPTION,则只有在ALTER VIEW中的

文档评论(0)

youngyu0329 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档