sql数据库教程6讲_第1页
sql数据库教程6讲_第2页
sql数据库教程6讲_第3页
sql数据库教程6讲_第4页
sql数据库教程6讲_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

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

文档简介

1、 在对数据库的管理操作中,能够最大程度的减少在对数据库的管理操作中,能够最大程度的减少客户端的操作是数据库管理员应该追求的。例如在面客户端的操作是数据库管理员应该追求的。例如在面对对“学生管理数据库学生管理数据库”时,对于班级的辅导员老师来时,对于班级的辅导员老师来说,他们只需知道自己所负责的班级学生的成绩情况说,他们只需知道自己所负责的班级学生的成绩情况即可,而无需知道整个数据库中的学生成绩。数据库即可,而无需知道整个数据库中的学生成绩。数据库管理者可以根据不同用户的需要,从管理者可以根据不同用户的需要,从“学生管理数据学生管理数据库库”中抽象出满足不同需要的数据投影,供辅导员查中抽象出满足

2、不同需要的数据投影,供辅导员查询。这种从原始数据库中抽象出满足条件的数据而生询。这种从原始数据库中抽象出满足条件的数据而生成的虚拟表模型可以称之为视图。成的虚拟表模型可以称之为视图。SQL Server实用案例教程实用案例教程(2008版版)7.3 视图概述 视图是基于数据库中原始数据表(基本表)而生视图是基于数据库中原始数据表(基本表)而生成的虚拟表。其内容由查询定义,同真实的表一样,成的虚拟表。其内容由查询定义,同真实的表一样,视图包含一系列带有名称的列和行数据。视图中的数视图包含一系列带有名称的列和行数据。视图中的数据可以来源于一张或者多张基本表,也可以来源于基据可以来源于一张或者多张基

3、本表,也可以来源于基本表和视图的查询组合。由于视图中的数据不是真实本表和视图的查询组合。由于视图中的数据不是真实存在而是源自基本表,因此基本表中的数据发生变化存在而是源自基本表,因此基本表中的数据发生变化后,查看视图时视图中的查询结果也会随之发生变化。后,查看视图时视图中的查询结果也会随之发生变化。一般情况下不能通过视图修改表中数据信息,而要通一般情况下不能通过视图修改表中数据信息,而要通过修改基本表实现。简单的说,视图即是把过修改基本表实现。简单的说,视图即是把select语语句的查询结果保存起来,以便日后方便使用。句的查询结果保存起来,以便日后方便使用。SQL Server实用案例教程实用

4、案例教程(2008版版)7.3 视图概述7.3.1 视图的概念视图的概念 1. 简化操作简化操作 视图的使用大大简化了客户端的操作。若客户的视图的使用大大简化了客户端的操作。若客户的查询涉及到复杂的查询语句,可以把复杂的查询操查询涉及到复杂的查询语句,可以把复杂的查询操作创建到视图中,对于用户在查询时只需要执行一作创建到视图中,对于用户在查询时只需要执行一条简单的查询视图语句,而不必会写或者重复编写条简单的查询视图语句,而不必会写或者重复编写复杂查询语句。复杂查询语句。2. 结果直观结果直观 所见即所得。视图提供给用户的即是用户想要的所见即所得。视图提供给用户的即是用户想要的查询结果。用户不需

5、要知道数据库具体有多复杂,查询结果。用户不需要知道数据库具体有多复杂,以及查询操作是如何完成的。以及查询操作是如何完成的。SQL Server实用案例教程实用案例教程(2008版版)7.3 视图概述7.3.2 视图的作用视图的作用 3. 提升安全提升安全 由于用户只能透过视图查看到想要的结果,而不由于用户只能透过视图查看到想要的结果,而不需要也不能看到数据库中的基本表,从而在一定程需要也不能看到数据库中的基本表,从而在一定程度上提升了数据的安全性。度上提升了数据的安全性。4. 导出保存导出保存 视图可以跟基本表一样,通过视图可以跟基本表一样,通过“导出数据导出数据”操作操作将其导出成方便用户访

6、问的数据表形式。方便了用将其导出成方便用户访问的数据表形式。方便了用户对查询结果的操作和控制。户对查询结果的操作和控制。SQL Server实用案例教程实用案例教程(2008版版)7.3 视图概述7.3.2 视图的作用视图的作用 合理创建和管理视图才能真正满足用户的查询合理创建和管理视图才能真正满足用户的查询需求,从而简化用户端的操作。本节讲解视图的创需求,从而简化用户端的操作。本节讲解视图的创建、查询、修改和删除操作。建、查询、修改和删除操作。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理 创建视图可以使用创建视图可以使用“管理器管理器”和和T-SQL语言两语言

7、两种方法。拥有创建视图和使用视图所涉及的表或视种方法。拥有创建视图和使用视图所涉及的表或视图权限的用户可以创建视图。图权限的用户可以创建视图。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 1. 使用使用“管理器管理器”创建视图创建视图案例案例 【例【例7.7】从】从“商品管理数据库商品管理数据库”中查询出商品中查询出商品编号为编号为“11110001”或或“33330005”,产地为,产地为“辽宁沈阳辽宁沈阳”的商品的商品编号、商品名称、商品的商品的商品编号、商品名称、商品类型名称和产地信息,并按商品编号降序排序。要类型名称和产地信息

8、,并按商品编号降序排序。要求将查询结果创建到名为求将查询结果创建到名为“v_商品类型表商品类型表_商品信商品信息表息表”的视图文件中。的视图文件中。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 解题解题u 在在“对象资源管理器对象资源管理器”中依次展开中依次展开“服务器服务器”、“数据库数据库”、“商品管理数据库商品管理数据库”节点,右键单击节点,右键单击“视图视图”节点,在弹出的菜单中选择节点,在弹出的菜单中选择“新建视图新建视图”命令,如图命令,如图7-13所示,弹出所示,弹出“添加表添加表”窗口,如图窗口,如图7-14所示。所示

9、。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图图7-13 “新建视图”命令图7-14 “添加表”窗口 u 在在“添加表添加表”窗口中选择本次视图所涉及到的基本表。多窗口中选择本次视图所涉及到的基本表。多选可使用选可使用shift或或ctrl键配合。选择完毕后点击键配合。选择完毕后点击“添加添加”按钮,按钮,然后点击然后点击“关闭关闭”按钮。按钮。u 关闭关闭“添加表添加表”窗口后,进入窗口后,进入“视图设计器视图设计器”。如图。如图

10、7-15所示(已设计)。所示(已设计)。u “视图设计器视图设计器”右侧窗格中从上到下第一部分显示出在图右侧窗格中从上到下第一部分显示出在图7-14“添加表添加表”窗口中选择的数据表、表中所有字段以及表窗口中选择的数据表、表中所有字段以及表之间的关系。可以通过点击工具栏上的之间的关系。可以通过点击工具栏上的“添加表添加表 ”按钮为视按钮为视图添加基本表,也可以在已添加的基本表上右键单击选择图添加基本表,也可以在已添加的基本表上右键单击选择“删除删除”命令,删除已添加的基本表。命令,删除已添加的基本表。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视

11、图创建视图SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图图7-15 “视图设计器”窗口 u “视图设计器视图设计器”右侧窗格中从上到下第二部分用来设置筛右侧窗格中从上到下第二部分用来设置筛选字段和筛选条件以及重命名字段名和排序等操作。可以通选字段和筛选条件以及重命名字段名和排序等操作。可以通过点击过点击“列列”属性下的单元格中的下拉箭头选择被显示或用属性下的单元格中的下拉箭头选择被显示或用作筛选条件的字段名;在作筛选条件的字段名;在“排序类型排序类型”属性中选择按某字段属性中选择按某字段的排序方式;在的排序方式;在“筛选器筛选器”属性中

12、输入筛选条件。其中同一属性中输入筛选条件。其中同一字段的多个筛选条件是字段的多个筛选条件是“或或”运算逻辑,不同字段的筛选条运算逻辑,不同字段的筛选条件是件是“与与”运算逻辑。如图运算逻辑。如图7-15中,中,“商品编号商品编号”字段存在字段存在“或或”运算逻辑,运算逻辑,“商品编号商品编号”字段与字段与“产地产地”字段是字段是“与与”运算逻辑。同时,为运算逻辑。同时,为“商品编号商品编号”字段选择了字段选择了“排序类型排序类型”为降序。为降序。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 u “视图设计器视图设计器”右侧窗格中从上到

13、下第三部分是系统根据右侧窗格中从上到下第三部分是系统根据前两部分的选择自动生成的程序代码。前两部分的选择自动生成的程序代码。u 以上设置完毕后,点击工具栏上的以上设置完毕后,点击工具栏上的“执行执行 ”按钮,视图的按钮,视图的查询结果显示在查询结果显示在“视图设计器视图设计器”右侧窗格的最后一部分中。右侧窗格的最后一部分中。u 完整的设计和执行结果如图完整的设计和执行结果如图7-15所示。所示。u 点击工具栏上的点击工具栏上的“保存保存”按钮,弹出按钮,弹出“选择名称选择名称”窗口,窗口,输入视图名输入视图名“v_商品类型表商品类型表_商品信息表商品信息表”后点击确定,完成后点击确定,完成视图

14、创建,关闭视图创建,关闭“视图设计器视图设计器”。u 在在“对象资源管理器对象资源管理器”中刷新中刷新“商品管理数据库商品管理数据库”节点下节点下的的“视图节点视图节点”后将其展开,名为后将其展开,名为“v_商品类型表商品类型表_商品信息商品信息表表”的视图已存在。的视图已存在。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 2. 使用使用T-SQL语言创建视图语言创建视图知识点知识点使用使用T-SQL语言创建视图的语法格式如下:语言创建视图的语法格式如下: create view 视图名视图名 with encryption as s

15、elect 查询语句查询语句SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 说明:说明:create view命令表示创建视图。命令表示创建视图。“视图名视图名”应应符合命名规则,且不能重名。符合命名规则,且不能重名。with encryption命令用来对创建视图的代码或命令用来对创建视图的代码或过程加密。过程加密。as关键字后面跟随满足关键字后面跟随满足select语句语法格式的语句语法格式的查询语句。查询语句。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 案例案例 【例【

16、例7.8】 在在“商品管理数据库商品管理数据库”中查询出中查询出2012年年11月月2日进货商品的信息,要求显示出商品编号、日进货商品的信息,要求显示出商品编号、商品名称、进货数量和进货日期字段信息。将结商品名称、进货数量和进货日期字段信息。将结果创建到名为果创建到名为“v_商品商品_进货进货”的视图中。的视图中。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 解题解题u在在“管理器管理器”中新建一个查询窗口,输入代码如下:中新建一个查询窗口,输入代码如下: use 商品管理数据库商品管理数据库 go create view v_商品商

17、品_进货进货 as select 商品信息表商品信息表.商品编号商品编号, 商品名称商品名称, 进货数量进货数量, 进货日期进货日期 from 商品信息表商品信息表, 进货信息表进货信息表 where 商品信息表商品信息表.商品编号商品编号 =进货信息表进货信息表.商品编号商品编号 and 进货日期进货日期=2012-11-2 goSQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 u 点击点击“分析分析”按钮,无语法错误后点击按钮,无语法错误后点击“执行执行”按钮,得按钮,得到到“命令已成功完成命令已成功完成”的提示信息,如图的提示信息,

18、如图7-16所示,表示视图所示,表示视图创建成功。创建成功。u 在在“对象资源管理器对象资源管理器”中右键单击中右键单击“商品管理数据库商品管理数据库”下下的的“视图视图”节点,在弹出的菜单中选择节点,在弹出的菜单中选择“刷新刷新”命令后展开该命令后展开该节点,名为节点,名为“v_商品商品_进货进货”的视图已存在,如图的视图已存在,如图7-17所示。所示。说明:说明: 在执行创建视图的命令代码之前,为了避免错误,可以先选在执行创建视图的命令代码之前,为了避免错误,可以先选中中as关键字后面的关键字后面的select语句执行,查看到正确的结果后,再语句执行,查看到正确的结果后,再执行完整的创建视

19、图代码。执行完整的创建视图代码。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图图7-16 成功创建视图图7-17 “对象资源管理器”中已创建的视图 思考思考 是不是只要是不是只要as关键字后面的关键字后面的select语句能够执行语句能够执行成功,创建视图就一定成功?答案是否定的。下面成功,创建视图就一定成功?答案是否定的。下面例题用来证明结论。例题用来证明结论。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图

20、管理7.4.1 创建视图创建视图 解题解题u 在在“管理器管理器”中新建一个查询窗口,输入代码如下:中新建一个查询窗口,输入代码如下: use 商品管理数据库商品管理数据库 go create view v_商品商品_进货进货 as select 商品信息表商品信息表.商品编号商品编号,商品名称商品名称,进货数量进货数量,进货日期进货日期,进货成功进货成功 from 商品信息表商品信息表, 进货信息表进货信息表 where 商品信息表商品信息表.商品编号商品编号 =进货信息表进货信息表.商品编号商品编号 and 进货日期进货日期=2012-11-2 goSQL Server实用案例教程实用案例

21、教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 u 点击点击“分析分析”按按钮,无语法错误后点钮,无语法错误后点击击“执行执行”按钮,得按钮,得到到“创建视图或函数创建视图或函数失败,因为没有为列失败,因为没有为列5 指定列名。指定列名。”的错的错误提示,如图误提示,如图7-18所所示。示。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图图7-18 创建视图失败 说明:说明:错误存在的原因是没有为第错误存在的原因是没有为第5列指定列名。列指定列名。select语句后的第语句后的第5列正是本例题中为查询结果新列正是本例题中

22、为查询结果新添加的内容为添加的内容为“进货成功进货成功”的字段。的字段。为了检验为了检验as关键字后面的关键字后面的select语句是否正确,语句是否正确,只执行被选中的只执行被选中的select语句部分,得到如图语句部分,得到如图7-19所示结果。所示结果。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图图7-19 只执行select查询的结果 从图从图7-17的查询结果可以看出,的查询结果可以看出,select语句部分是语句部分是没

23、有错误的。但是我们注意到,查询结果中的第没有错误的。但是我们注意到,查询结果中的第5列列没有字段名。这就是视图创建失败的原因。没有字段名。这就是视图创建失败的原因。 虽然视图只是虚拟表,用来存放虽然视图只是虚拟表,用来存放select语句的查询语句的查询结果,那么既然是表,就一定要有字段名来构成表结结果,那么既然是表,就一定要有字段名来构成表结构,否则没有字段名的列中的记录信息将没有意义。构,否则没有字段名的列中的记录信息将没有意义。因此,当将图因此,当将图7-19的查询结果创建给视图时,由于虚的查询结果创建给视图时,由于虚拟表的结构不完整,使视图创建失败。拟表的结构不完整,使视图创建失败。S

24、QL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 u 根据以上分析,需为第根据以上分析,需为第5列设置一个列名,修改命令代码如下:列设置一个列名,修改命令代码如下: use 商品管理数据库商品管理数据库 go create view v_商品商品_进货成功进货成功 as select 商品信息表商品信息表.商品编号商品编号,商品名称商品名称,进货数量进货数量,进货日期进货日期,进货成功进货成功 备注备注 from 商品信息表商品信息表, 进货信息表进货信息表 where 商品信息表商品信息表.商品编号商品编号 =进货信息表进货信息表.商品编

25、号商品编号 and 进货日期进货日期=2012-11-2 goSQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 u 点击点击“分析分析”按钮,无语法错误后点击按钮,无语法错误后点击“执行执行”按钮,得到按钮,得到“命令已成功完成命令已成功完成”的提示信息,表示视的提示信息,表示视图创建成功。在图创建成功。在“对象资源管理器对象资源管理器”中刷新中刷新“商品管商品管理数据库理数据库”下的下的“视图视图”节点后展开,名为节点后展开,名为“v_商品商品_进货成功进货成功”的视图已存在。的视图已存在。说明:说明: 代码中使用空格法为第代码中使用空

26、格法为第5列设置了一个名为列设置了一个名为“备注备注”的列名,使得的列名,使得select语句查询出的结果表结构完整。语句查询出的结果表结构完整。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 案例案例 【例【例7.9】在】在“商品管理数据库商品管理数据库”中查询出商品名中查询出商品名称中带称中带“酒酒”的商品的详细销售信息(显示商品编号、的商品的详细销售信息(显示商品编号、商品名称、销售单价、销售数量、销售金额、客户姓商品名称、销售单价、销售数量、销售金额、客户姓名和销售日期)。名和销售日期)。SQL Server实用案例教程实用案例

27、教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 解题解题u 在在“管理器管理器”中新建一个查询窗口,输入代码如下:中新建一个查询窗口,输入代码如下: use 商品管理数据库商品管理数据库 go create view v_销售信息销售信息 as select 商品信息表商品信息表.商品编号商品编号,商品名称商品名称,销售单价销售单价,销售数量销售数量, 销售金额销售金额,客户姓名客户姓名,销售日期销售日期 from 销售信息表销售信息表 join 商品信息表商品信息表 on 销售信息表销售信息表.商品编号商品编号 =商品信息表商品信息表.商品编号商品编号 join 客户信息表

28、客户信息表 on 客户信息表客户信息表.客户编号客户编号 =销售信息表销售信息表.客户编号客户编号 where 商品信息表商品信息表.商品名称商品名称 like %酒酒% goSQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图 说明:说明: 使用了使用了select语句的多表复杂查询。语句的多表复杂查询。 使用了条件中带有使用了条件中带有like关键字的模糊查询关键字的模糊查询 点击点击“分析分析”按钮,无语法错误后点击按钮,无语法错误后点击“执行执行”按钮,得到如图按钮,得到如图7-20所示查询结果。所示查询结果。SQL Server实用

29、案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.1 创建视图创建视图图7-20 创建视图 1. 查询视图结果查询视图结果 基于视图是虚拟表这一概念,视图被创建成功后基于视图是虚拟表这一概念,视图被创建成功后可以具备表的许多特性,最基本的便是查询功能。可以具备表的许多特性,最基本的便是查询功能。查询视图与查询数据表一样,可以使用查询视图与查询数据表一样,可以使用select语句语句实现。实现。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查

30、询视图查询视图 知识点知识点使用使用T-SQL语言查询视图的语法格式如下:语言查询视图的语法格式如下:select * | 字段名列表字段名列表 from 视图名视图名 where 条件表达式条件表达式 SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查询视图查询视图 案例案例 【例【例7.10】查询】查询“v_商品商品_进货进货”视图中的商品视图中的商品进货信息。进货信息。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查询视图查询视图 解题解题u 在在“管理器管理器”中新建一个查询窗口,输入代码中新建一个查询窗

31、口,输入代码如下:如下: use 商品管理数据库商品管理数据库 go select * from v_商品商品_进货进货 goSQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查询视图查询视图 u 点击点击“分析分析”按钮,无语法按钮,无语法错误后点击错误后点击“执行执行”按钮,按钮,得到如图得到如图7-21所示查询结果。所示查询结果。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查询视图查询视图图7-21 查询视图 案例案例 【例【例7.11】查询】查询“v_商品商品_进货进货”视图中进货数量视图中进货数量大于等

32、于大于等于300的商品进货信息。的商品进货信息。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查询视图查询视图 解题解题u 在在“管理器管理器”中新建一个查询窗口,输入代码中新建一个查询窗口,输入代码如下:如下: use 商品管理数据库商品管理数据库 go select * from v_商品商品_进货进货 where 进货数量进货数量=300 goSQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查询视图查询视图 u 点击点击“分析分析”按钮,无语法按钮,无语法错误后点击错误后点击“执行执行”按钮,按钮,得到如图

33、得到如图7-22所示查询结果。所示查询结果。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查询视图查询视图图7-22 带条件查询视图 2. 查看视图创建信息查看视图创建信息 可以使用可以使用T-SQL语言查看没有加密的视图的创语言查看没有加密的视图的创建信息,便于管理者掌握视图所存储的内容,方便建信息,便于管理者掌握视图所存储的内容,方便使用和管理视图。使用和管理视图。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查询视图查询视图 知识点知识点 使用使用T-SQL语言查看视图创建信息的语法格式语言查看视图创建信

34、息的语法格式如下:如下:exec sp_helptext 视图名视图名SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查询视图查询视图 案例案例 【例【例7.12】查看】查看“商品管理数据库商品管理数据库”中名为中名为“v_商品商品_进货进货”的视图的创建信息。的视图的创建信息。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查询视图查询视图 解题解题u 在在“管理器管理器”中新建一个查询窗口,输入代码中新建一个查询窗口,输入代码如下:如下: use 商品管理数据库商品管理数据库 go exec sp_helpte

35、xt v_商品商品_进货进货 goSQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查询视图查询视图 u 点击点击“分析分析”按钮,无语法按钮,无语法错误后点击错误后点击“执行执行”按钮,按钮,得到如图得到如图7-23所示查询结果。所示查询结果。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.2 查询视图查询视图图7-23 查看视图创建信息 被创建的视图也可以根据数据库的变化情况修改。被创建的视图也可以根据数据库的变化情况修改。可以使用可以使用“管理器管理器”和和T-SQL语言修改视图的名称语言修改视图的名称以及内容。以

36、及内容。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图 1. 使用使用“管理器管理器”修改视图修改视图(1)修改视图名)修改视图名 使用使用“对象资源管理器对象资源管理器”修改视图名称需要展开修改视图名称需要展开被修改数据库的被修改数据库的“视图视图”节点,右键单击被修改视节点,右键单击被修改视图,在弹出的菜单中选择图,在弹出的菜单中选择“重命名重命名”命令,直接修命令,直接修改视图名称,回车确定即可。改视图名称,回车确定即可。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图 (2

37、)修改视图内容)修改视图内容 使用使用“对象资源管理器对象资源管理器”修改视图内容需要展开修改视图内容需要展开被修改数据库的被修改数据库的“视图视图”节点,右键单击被修改视节点,右键单击被修改视图,在弹出的菜单中选择图,在弹出的菜单中选择“设计设计”命令调出命令调出“视图视图设计器设计器”,如图,如图7-15,与创建视图时方法一致,对,与创建视图时方法一致,对视图的内容修改后点击视图的内容修改后点击“保存保存”按钮,保存成功后按钮,保存成功后关闭关闭“视图设计器视图设计器”完成视图内容修改。使用完成视图内容修改。使用with encryption命令加密创建的视图内容不能用命令加密创建的视图内

38、容不能用“管理管理器器”方式修改。方式修改。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图 2. 使用使用T-SQL语句修改视图语句修改视图(1)修改视图名)修改视图名知识点知识点使用使用T-SQL语言修改视图名称的语法格式如下:语言修改视图名称的语法格式如下:exec sp_rename 旧视图名旧视图名, 新视图名新视图名SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图 案例案例 【例【例7.13】使用】使用T-SQL语句将语句将“商品管理数据库商品管理数据库”中名为中名为“v

39、_商品商品_进货成功进货成功”的视图改名为的视图改名为“v_商商品信息品信息_进货成功进货成功”。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图 解题解题u 在在“管理器管理器”中新建一个查询窗口,输入代码中新建一个查询窗口,输入代码如下:如下: use 商品管理数据库商品管理数据库 go exec sp_rename v_商品商品_进货成功进货成功,v_商品信息商品信息_进货成功进货成功 goSQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图 u 点击点击“分析分析”按钮,无语法错

40、误后点击按钮,无语法错误后点击“执行执行”按钮,得到按钮,得到“注意注意: 更改对象名的任一部分都可能更改对象名的任一部分都可能会破坏脚本和存储过程。会破坏脚本和存储过程。”提示,提醒修改视图名提示,提醒修改视图名后可能涉及到与该视图有关的其它查询功能或设置后可能涉及到与该视图有关的其它查询功能或设置可能被破坏,此时视图名已被修改,通过刷新可能被破坏,此时视图名已被修改,通过刷新“对对象资源管理器象资源管理器”中中“商品管理数据库商品管理数据库”下的下的“视图视图”节点可以查看到。用户需注意其它已涉及到原视图节点可以查看到。用户需注意其它已涉及到原视图名的设置也需做必要修改。名的设置也需做必要

41、修改。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图 (2)修改视图内容)修改视图内容 使用使用T-SQL语句修改试图内容相当于只保留了语句修改试图内容相当于只保留了视图名称,而对创建视图的语句重新设置。视图名称,而对创建视图的语句重新设置。T-SQL语句可以修改加密和未加密的视图,也可以对未加语句可以修改加密和未加密的视图,也可以对未加密的视图在修改时加密。密的视图在修改时加密。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图 知识点知识点使用使用T-SQL语言修改视图内容的语法

42、格式如下:语言修改视图内容的语法格式如下:alter view 视图名视图名 with encryption asselect 查询语句查询语句说明:说明:alter view命令表示修改视图。命令表示修改视图。“视图名视图名”必须是已必须是已存在的视图名。存在的视图名。其它命令及要求与创建视图相同。其它命令及要求与创建视图相同。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图 案例案例 【例【例7.14】使用】使用T-SQL语句将语句将“商品管理数据库商品管理数据库”中名为中名为“v_商品商品_进货进货”的视图内容改为查看的视图内容改为

43、查看2012年年11月月1日进货记录信息。日进货记录信息。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图 解题解题u 在在“管理器管理器”中新建一个查询窗口,输入代码如下:中新建一个查询窗口,输入代码如下: use 商品管理数据库商品管理数据库 go alter view v_商品商品_进货进货 as select 商品信息表商品信息表.商品编号商品编号, 商品名称商品名称, 进货数量进货数量, 进货日期进货日期 from 商品信息表商品信息表, 进货信息表进货信息表 where 商品信息表商品信息表.商品编号商品编号 =进货信息表进货

44、信息表.商品编号商品编号 and 进货日期进货日期=2012-11-1 goSQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图 u 点击点击“分析分析”按钮,无语法错误后点击按钮,无语法错误后点击“执行执行”按钮,得到按钮,得到“命令已成功完成命令已成功完成”的提示信息,表示的提示信息,表示修改视图成功。修改视图成功。u 通常情况下,只要被修改的视图名无误,修改通常情况下,只要被修改的视图名无误,修改操作就不会发生错误。操作就不会发生错误。u 可以使用查询语句可以使用查询语句“select * from v_商品商品_进货进货”查看修改后结

45、果,进货日期已修改,如图查看修改后结果,进货日期已修改,如图7-24所示。所示。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.3 修改视图修改视图图7-24 查看修改后视图 对于创建错误或者不需要再使用的视图,可以对于创建错误或者不需要再使用的视图,可以将其删除以节省空间。删除视图时不会对基本表中将其删除以节省空间。删除视图时不会对基本表中的数据产生影响,但如果有其它数据库对象关联了的数据产生影响,但如果有其它数据库对象关联了被删除的视图,那么再使用这些

46、对象时将提示错误。被删除的视图,那么再使用这些对象时将提示错误。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.4 删除视图删除视图 1. 使用使用“管理器管理器”删除视图删除视图 使用使用“对象资源管理器对象资源管理器”删除视图需要展开被删删除视图需要展开被删除数据库的除数据库的“视图视图”节点,右键单击被删除视图,节点,右键单击被删除视图,在弹出的菜单中选择在弹出的菜单中选择“删除删除”命令,在弹出的命令,在弹出的“删删除对象除对象”窗口中直接点击窗口中直接点击“确定确定”按钮即可。按钮即可。SQL Server实用案例教程实用案例教程(2008版版)7

47、.4 视图管理7.4.4 删除视图删除视图 2. 使用使用T-SQL语句删除视图语句删除视图知识点知识点使用使用T-SQL语言删除视图的语法格式如下:语言删除视图的语法格式如下:drop view 视图名视图名SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.4 删除视图删除视图 案例案例 【例【例7.15】将】将“商品管理数据库商品管理数据库”中名为中名为“v_商商品信息品信息_进货成功进货成功”的视图删除。的视图删除。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.4 删除视图删除视图 解题解题u 在在“管理器管理器”中

48、新建一个查询窗口,输入代码中新建一个查询窗口,输入代码如下:如下: use 商品管理数据库商品管理数据库 go drop view v_商品信息商品信息_进货成功进货成功 goSQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.4 删除视图删除视图 u 点击点击“分析分析”按钮,无语法错误后点击按钮,无语法错误后点击“执行执行”按钮,得到按钮,得到“命令已成功完成命令已成功完成”的提示信息,表示的提示信息,表示删除视图成功。删除视图成功。u 在在“对象资源管理器对象资源管理器”中刷新中刷新“商品管理数据商品管理数据库库”下的下的“视图视图”节点,名为节点,名为“

49、v_商品信息商品信息_进货进货成功成功”的视图已不存在。的视图已不存在。SQL Server实用案例教程实用案例教程(2008版版)7.4 视图管理7.4.4 删除视图删除视图项 目 融 合 在在“商品销售管理系统商品销售管理系统”项目的实现项目的实现过程中,对过程中,对“商品管理数据库商品管理数据库”可以用本可以用本项目学到的知识简化客户端的查询操作,项目学到的知识简化客户端的查询操作,提高客户端的查询效率,使系统更完善操提高客户端的查询效率,使系统更完善操作更简便。作更简便。SQL Server实用案例教程实用案例教程(2008版版)项 目 融 合 为配合为配合“商品销售管理系统商品销售管

50、理系统”的实现,需要考的实现,需要考虑创建的索引和视图如下:虑创建的索引和视图如下:【任务【任务7.1】为】为“商品管理数据库商品管理数据库”的数据表创建的数据表创建索引。索引。 为为“客户信息表客户信息表”的的“联系电话联系电话”字段创建非聚字段创建非聚集唯一索引。集唯一索引。 为为“商品信息表商品信息表”的的“商品名称商品名称”字段创建非聚字段创建非聚集非唯一索引。集非唯一索引。 为为“进货信息表进货信息表”的的“商品编号商品编号”字段创建非聚字段创建非聚集非唯一索引。集非唯一索引。SQL Server实用案例教程实用案例教程(2008版版)项 目 融 合 为为“进货信息表进货信息表”的的“进货日期进货日期”字段创建非字段创建非聚集非唯一索引。聚集非唯一索

温馨提示

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

评论

0/150

提交评论