数据库应用技术04.pptVIP

  1. 1、本文档共34页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库应用技术04.ppt

4.1 视图的用途和需要 视图作为一种基本的数据库对象,是查询一个表或多个表的一种另方法,通过把预先定义的查询存储在数据库中,然后就可以在查询语句中调用它。 4.1.1 视图简介 视图是虚拟的表,它只包含表的一部分。与表不同的是,保存在视图中的数据并不是物理存储的数据,它是由表派生的,派生表被称为视图的基本表。视图的定义存储在数据库中,视图不支持参数的使用。 视图来源于一个或多个基表的行或列的子集,也可以是基表的统计汇总,或者是来源于另一个视图或基表与视图的某种组合 4.1.2 视图的优点 视图有如下优点:为用户集中数据、简化数据库查询、简化用户权限管理、方便数据的导出 4.2 创建和管理视图 对于视图的管理包括:创建一个视图、修改视图的定义、删除视图。 4.2.1 定义视图 SQL语言用CREATE VIEW命令建立视图,其一般格式为: CREATE VIEW 视图名[(列名[,列名]...)] AS 子查询 [WITH CHECK OPTION]; 其中子查询可以是任意复杂的SELECT语句,但通常不允许含有ORDER BY子句和DISTINCT短语。 WITH CHECK OPTION表示对视图进行UPDATE、 INSERT和DELETE操作时要保证更新、插入或删除的行满足视图定义中的谓词条件(即子查询中的条件表达式)。 如果CREATE VIEW语句仅指定了视图名,省略了组成视图的各个属性列名,则隐含该视图由子查询中SELECT子句目标列中的诸字段组成。 4.2.1 定义视图 例程4.1:创建一个视图,该视图用于显示2002年1月1日以后签定的所有合同。 CREATE VIEW View_Contract1 AS SELECT * FROM Contract WHERE SignDate’2002-01-01’ 例程4.2:创建一个视图,用于显示各单位签定的所有合同。 CREATE VIEW View_Contract2 AS SELECT CompanyName,ContractID,ContractName FROM Contract,Company WHERE Contract.CompanyID=Company.CompanyID 4.2.1 定义视图 例程4.3:创建一个视图,用于显示各单位的付款总额。 CREATE VIEW View_Contract 3 AS SELECT CompanyName,SUM(ContractPayment.Volume) as TotalPayment FROM Company LEFT JOIN Contract ON Contract.CompanyID=Company.CompanyID LEFT JOIN ContractDetail ON Contract.ContractID=ContractDetail.ContractID LEFT JOIN ContractPayment ON ContractDetail.ContractDetailID=ContractPayment.ContractDetailID GROUP BY CompanyName 4.2.2 修改视图定义 要改变一个已经创建的视图的定义,用ALETER VIEW 语句。例如要更新上一节中例程一中的创建的视图View_Contract1,使其显示所有在2002年1月份签定的合同,用如下的SQL语句: ALTER VIEW View_Contract1 AS SELECT * FROM Contract WHERE SignDate=’2002-01-01’ AND SignDate=’2002-01-31’ 用ALTER VIEW 可以更改当前正在使用的视图,只有在下次调用时,视图会重新编译,用户才会见到更新后的视图显示。 4.2.3 删除视图 用DROP VIEW从当前数据库中删除视图。删除视图时,将从 sysobjects、syscolumns、syscomments、sysdepends 和 sysprotects 系统表中删除视图的定义及其它有关视图的信息。 例程4.4:删除视图View_Contract1

文档评论(0)

xinshengwencai + 关注
实名认证
文档贡献者

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

版权声明书
用户编号:5311233133000002

1亿VIP精品文档

相关文档