北大青鸟SQL Server 2005教案第10章SQL Server 2005的关系图和视图管理_第1页
北大青鸟SQL Server 2005教案第10章SQL Server 2005的关系图和视图管理_第2页
北大青鸟SQL Server 2005教案第10章SQL Server 2005的关系图和视图管理_第3页
北大青鸟SQL Server 2005教案第10章SQL Server 2005的关系图和视图管理_第4页
北大青鸟SQL Server 2005教案第10章SQL Server 2005的关系图和视图管理_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第10章SQLServer2005的

关系图和视图管理

本章要点:本章主要介绍了SQLServer2005中的关系和视图概述、建立、修改和删除视图以及视图的应用等内容。第10章SQLServer2005的

关系图和视图管理

10.1关系图概述

10.2视图概述

10.3建立视图10.4修改视图10.5删除视图10.6视图的应用

10.1关系图概述

关系图窗格以图形显示通过数据连接选择的表或表结构化对象,同时也显示它们之间的联接关系。

在关系图窗格中可以进行如下操作:

(1)添加或删除表和表结构化对象并指定输出的数据列。(2)指定用于排序查询的列。(3)指定在结果集内对各行进行分组。(4)创建或修改表和表结构化对象之间的连接。10.2视图概述

视图是一种常用的数据库对象,它是提供查看和存放数据的另一种途径。视图是用户查看数据库表中数据的一种方式,一个视图是一个虚拟表,它的数据是一个或多个表或者是视图的一个或多个子集,视图是用SQL语句而不是用数据构造的,一个视图看起来像一个表,而且它的操作也类似表,但它并不是表,它只是一组返回数据的SQL语句。

10.2视图概述使用视图有以下优点:

(1)检索特定数据,并达到数据安全保护的目的。

(2)简化数据查询和处理操作。(3)便于数据交换操作。

10.2视图概述使用视图可以实现下列任一或所有功能:

(1)将用户限定在表中的特定行上。

(2)将用户限定在特定列上。

(3)将多个表中的列联接起来,使它们看起来像一个表。

10.3建立视图

创建视图前需要考虑的原则:(1)只能在当前数据库中创建视图。(2)视图名称必须遵循标识符的规则,且对每个用户必须惟一。(3)可以在其他视图和引用视图的过程之上建立视图。(4)不能将规则或DEFAULT定义与视图相关联。(5)不能将AFTER触发器与视图相关联,只有INSTEADOF触发器可以与之相关联。创建视图前需要考虑的原则:(6)定义视图的查询不可以包含ORDERBY、COMPUTE或COMPUTEBY子句或INTO关键字。(7)不能在视图上定义全文索引。(8)不能创建临时视图,也不能在临时表上创建视图。(9)不能除去参与到用SCHEMABINDING子句创建的视图中的表或视图,除非该视图已被除去或更改而不再具有架构绑定。(10)不能对视图执行全文查询,但是如果查询所引用的表被配置为支持全文索引,就可以在视图定义中包含全文查询。10.3建立视图

10.3.1使用SQLServermanagementstudio向导创建视图10.3.2使用CREATEVIEW语句创建视图10.3.2使用CREATEVIEW语句创建视图语法格式:

CREATEVIEW视图名[(字段名)[,……n]][WITHENCRYPTION]ASSELECT语句

[WITHENCRYPTION]例:test数据库中的titleview是一个视图,该视图选择三个基表中的数据来显示包含常用数据的虚拟表:CREATEVIEWtitleviewASSELECTtitle,au_ord,au_lname,price,ytd_sales,pub_idFROMauthorsASaJOINtitleauthorAStaON(a.au_id=ta.au_id)JOINtitlesAStON(t.title_id=ta.title_id)执行上述语句之后,可以用引用表时所使用的方法在语句中引用titleview:SELECT*FROMtitleview10.4修改视图

10.4.1使用SQLServermanagementstudio向导修改视图10.4.2使用ALTERVIEW语句修改视图10.4.2使用ALTERVIEW语句修改视图

使用ALTERVIEW语句修改视图的语法格式:

ALTERVIEW视图名[(字段名)[,…..n]][WITHENCRYPTION]ASSELECT语句[WITHCHECKOPTION]

例:在示例数据库test中建立一个名为all_authors视图,然后用CREATEVIEW语句修改该视图,在修改过程中加上WITHENCRYPTION和WITHOPTION子句。UsetestGoCreateviewall_authorsAsSelectau_fname,au_lname,address,city,zip,phoneFromauthorsGoAlterviewall_authorsWithencryptionAsSelectau_fname+space(1)+au_lname,address,city,zip,phoneFromauthorsWithcheckoption实现步骤:(1)在查询分析器中键入以下SQL语句:UsetestGoCreateviewall_authorsAsSelectau_fname,au_lname,address,city,zip,phoneFromauthors(2)接着在SQL查询分析器中键入以下SQL语句:usetestGoAlterviewall_authorsWithencryptionAsSelectau_fname+space(1)+au_lnameasau_name,address,city,zip,phoneFromauthorsWithcheckoption10.5删除视图

10.5.1使用SQLServermanagementstudio向导删除视图10.5.2使用DROPVIEW语句删除视图10.5.2使用DROPVIEW语句删除

DROPVIEW语句用于从当前数据库中删除一个或多个视图,其语法结构如下:

DROPVIEW{视图名}[,……n]

删除type_view视图:DROPVIEWtype_view10.6视图的应用

10.6.1通过视图检索数据

10.6.2通过视图修改数据

10.6.1通过视图检索数据

在建立视图后,可以用任何一种查询方式检索视图数据,对视图可以使用连接、GROUPBY子句、子查询等以及它们的任意组合。

例:从test数据库中的employee数据表中检索Createviewnew_viewasSelect*FromemployeesWhere(employeeid>02)goSelect*fromnew_view10.6.2通过视图修改数据

在SQLServer中不仅可以通过视图检索基表中的数据,而且还可以向基表中添加或修改数据,但是所插入的数据必须符合基表中的各种约束和规则。

例:在数据库中先建立一个视图view_products,并从ducts数据表中检索合同号为“02”的产品信息,然后将产品编号为“003”的产品价格修改为600,并查看修改后的数据。Createviewview_productsasSELECT*FROMductsWHERE(categoryid='02')goUpdateview_productsSetUnitprice=600Whereproductid='003'goSelect*Fromview_productsWhereproductid='003'小结视图是一种常见的数据库对象,它提供查看和存取数据的另一种途径,使用视图不仅可以简化数据操作,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论