首页 第7章 视图的操作与管理

第7章 视图的操作与管理

举报
开通vip

第7章 视图的操作与管理null第7章 视图的操作与管理 第7章 视图的操作与管理 视图概述视图概述 视图是个虚表,是从一个或者多个表或视图中导出的表,其结构和数据是建立在对表的查询基础上的。 使用视图的优点和作用主要有: (1)视图可以使用户只关心他感兴趣的某些特定数据和他们所负责的特定任务,而那些不需要的或者无用的数据则不在视图中显示。 (2)视图大大地简化了用户对数据的操作。 (3)视图可以让不同的用户以不同的方式看到不同或者相同的数据集。 (4)在某些情况下,由于表中数据量太大,因此在表的设计时常将表进行水平或...

第7章 视图的操作与管理
null第7章 视图的操作与管理 第7章 视图的操作与管理 视图概述视图概述 视图是个虚 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf ,是从一个或者多个表或视图中导出的表,其结构和数据是建立在对表的查询基础上的。 使用视图的优点和作用主要有: (1)视图可以使用户只关心他感兴趣的某些特定数据和他们所负责的特定任务,而那些不需要的或者无用的数据则不在视图中显示。 (2)视图大大地简化了用户对数据的操作。 (3)视图可以让不同的用户以不同的方式看到不同或者相同的数据集。 (4)在某些情况下,由于表中数据量太大,因此在表的 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 时常将表进行水平或者垂直分割,但表的结构的变化对应用程序产生不良的影响。而使用视图可以重新组织数据,从而使外模式保持不变,原有的应用程序仍可以通过视图来重载数据。 (5)视图提供了一个简单而有效的安全机制。7.1创建视图 7.1创建视图 SQL Server 2005提供了如下几种创建视图的方法: (1)用SQL SERVER管理平台创建视图; (2)用Transact-SQL语句中的CREATE VIEW命令创建视图; (3)利用SQL SERVER管理平台的视图 模板 个人简介word模板免费下载关于员工迟到处罚通告模板康奈尔office模板下载康奈尔 笔记本 模板 下载软件方案模板免费下载 来创建视图。 创建视图时应该注意以下情况: (1)只能在当前数据库中创建视图,在视图中最多只能引用1024列,视图中记录的数目限制只由其基表中的记录数决定。 (2)如果视图引用的基表或者视图被删除,则该视图不能再被使用,直到创建新的基表或者视图。 (3)如果视图中某一列是函数、 数学 数学高考答题卡模板高考数学答题卡模板三年级数学混合运算测试卷数学作业设计案例新人教版八年级上数学教学计划 表达式、常量或者来自多个表的列名相同,则必须为列定义名称。 (4)不能在视图上创建索引,不能在规则、默认、触发器的定义中引用视图。 (5)当通过视图查询数据时,SQL Server要检查以确保语句中涉及的所有数据库对象存在,每个数据库对象在语句的上下文中有效,而且数据修改语句不能违反数据完整性规则。 (6)视图的名称必须遵循标识符的规则,且对每个用户必须是惟一的。此外,该名称不得与该用户拥有的任何表的名称相同。 7.1.1利用SQL SERVER管理平台创建视图 7.1.1利用SQL SERVER管理平台创建视图 利用SQL SERVER管理平台创建视图的具体操作步骤如下: (1)在SQL SERVER管理平台中,展开指定的服务器,打开要创建视图的数据库文件夹,选择指定的数据库,右击该数据库图标,从弹出的快捷菜单中依次选择“新建(New)→视图”选项,如图7-1所示。接着就出现添加表、视图、函数对话框。如图7-2所示。图7-1 选择新建视图选项对话框 图7-2  添加表、视图、函数对话框 7.1.1利用SQL SERVER管理平台创建视图 7.1.1利用SQL SERVER管理平台创建视图 (2)选择好创建视图所需的表、视图、函数后,通过单击字段左边的复选框选择需要的字段,如图7-3所示。单击工具栏中的“保存”按钮,或者单击鼠标右键,从快捷菜单中选择保存选项保存视图,输入视图名,即可完成视图的创建。 图7-3 选择视图字段对话框 7.1.2利用Transact-SQL语句中的CREATE VIEW命令创建视图 7.1.2利用Transact-SQL语句中的CREATE VIEW命令创建视图 使用Transact-SQL语句中的CREATE VIEW创建视图,其语法形式如下: CREATE VIEW [schema_name.] view_name [(column [,...n])] [WITH [,...n]] AS select_statement [WITH CHECK OPTION] < view_attribute > ::= {ENCRYPTION|SCHEMABINDING|VIEW_METADATA} 7.1.2利用Transact-SQL语句中的CREATE VIEW命令创建视图 7.1.2利用Transact-SQL语句中的CREATE VIEW命令创建视图 例7-1 选择表s和sc中的部分字段和记录来创建一个视图,并且限制表s中的记录只能是计算机系的记录集合,视图定义为view_s。 程序清单如下: create view view_s as select s.name,s.age,s.sex, sc.cno,sc.score from s,sc where s.sno=sc.sno and s.dept=’计算机’ 例7-2 创建一个视图,使之包含复杂的查询。 程序清单如下: CREATE VIEW ExampleView WITH SCHEMABINDING AS SELECT sno, SUM(score) AS Sumscore, COUNT(*) AS CountCol FROM sc GROUP BY sno 7.1.2利用Transact-SQL语句中的CREATE VIEW命令创建视图 7.1.2利用Transact-SQL语句中的CREATE VIEW命令创建视图 例7-3 创建一个视图,使之包含字符串的运算。 程序清单如下: CREATE VIEW v_shyjl(shyxh, shj, xm, jglb, phr, bzh) AS Select distinct shyxh,substring(shj,1,10)+""+zhi, t01_shbshy.xm,t012_shyjl.jglb,t012_shyjl.phr,t012_shyjl.bzh from t01_shbshy, t012_shyjl where t012_shyjl.xm=t01_shbshy.xm 其中shj列是从基表中取出两列并和一空字符串相加而得到的。这些都为基表中字段间的灵活运算提供了极大方便,从而使我们可以随心所欲地定制符合自己要求的数据。 7.1.3 利用模板创建视图 7.1.3 利用模板创建视图 使用视图模板可以很容易地创建视图,其具体操作步骤如下; (1)在SQL SERVER管理平台中,选择view菜单中的“模板资源管理器 ”选项,如图7-4所示。 (2)在出现的“模板资源管理器”选项中选择“创建视图”选项,如图7-5所示。 (3)按照提示输入视图名称,select语句后,执行此语句,即可创建视图。 图7-4 选择工具菜单中的向导命令 图7-5 创建视图模板 7.2 修改、删除和重命名视图 7.2 修改、删除和重命名视图 7.2.1 修改视图 7.2.2 重命名视图 7.2.3 查看视图信息、删除视图 7.2.1 修改视图 7.2.1 修改视图 修改视图的方法有以下两种方法: (1)在SQL SERVER管理平台中,右击要修改的视图,从弹出的快捷菜单中选择“设计视图”选项,出现视图修改对话框。该对话框与创建视图时的对话框相同,可以按照创建视图的方法修改视图。 (2)使用ALTER VIEW语句修改视图,但首先必须拥有使用视图的权限,然后才能使用ALTER VIEW语句,该语句的语法形式如下: ALTER VIEW view_name [(column[,...n])] [WITH ENCRYPTION] AS select_statement [WITH CHECK OPTION 7.2.1 修改视图 7.2.1 修改视图 例7-4 修改了视图V_employees,在该视图中增加了新的字段employees.salary,并且定义一个新的字段名称e_salary。 程序清单如下: alter view dbo.employees(number,name,age,e_salary) as select number,name,age,salary from employees where name=’张三’ 7.2.2 重命名视图 7.2.2 重命名视图 重命名视图方法有以下两种: 1. 在SQL SERVER管理平台中,选择要修改名称的视图,并右击该视图,从弹出的快捷菜单中选择“重命名”选项。或者在视图上再次单击,也可以修改视图的名称。接着该视图的名称变成可输入状态,可以直接输入新的视图名称。 2. 使用系统存储过程sp_rename来修改视图的名称,该过程的语法形式如下: sp_rename old_name,new_name 例7-5 把视图v_all重命名为v_part。 程序清单如下: sp_rename v_all,v_part 7.2.3 查看视图信息、删除视图 7.2.3 查看视图信息、删除视图 1. 查看视图信息 可以使用系统存储过程sp_help显示视图特征,使用sp_helptext显示视图在系统表中的定义,使用sp_depends显示该视图所依赖的对象。使用SQL Server 查询 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 器可以方便地显示视图属性信息,如图7-7所示。图7-8显示了使用sp_helptext存储过程显示视图的创建语句。 图7-7 显示视图属性对话框 图7-8 显示视图创建语句 7.2.3 查看视图信息、删除视图 7.2.3 查看视图信息、删除视图 1. 查看视图信息 利用select语句或SQL SERVER管理平台可以查看视图的输出数据。在SQL SERVER管理平台中,右击某个视图的名称,从弹出的快捷菜单中选择“打开视图”选项,在SQL SERVER管理平台中就会显示该视图的输出数据,如图7-9所示。 图7-9 视图输出数据窗口 7.2.3 查看视图信息、删除视图 7.2.3 查看视图信息、删除视图 2. 删除视图 对于不再使用的视图,可以使用SQL SERVER管理平台或者Transact-SQL语句中的DROP VIEW命令删除它。 使用Transact-SQL语句DROP VIEW删除视图,其语法形式如下: DROP VIEW {view_name} [,…n] 可以使用该命令同时删除多个视图,只需在要删除的各视图名称之间用逗号隔开即可。 例7-6 同时删除视图v_student和v_teacher。 程序清单如下: drop view v_student,v_teacher7.3 通过视图修改记录 7.3 通过视图修改记录 使用视图修改数据时,需要注意以下几点: (1)修改视图中的数据时,不能同时修改两个或者多个基表,可以对基于两个或多个基表或者视图的视图进行修改,但是每次修改都只能影响一个基表。 (2)不能修改那些通过计算得到的字段,例如包含计算值或者合计函数的字段。 (3)如果在创建视图时指定了WITH CHECK OPTION选项,那么使用视图修改数据库信息时,必须保证修改后的数据满足视图定义的范围。 (4)执行UPDATE、DELETE命令时,所删除与更新的数据必须包含在视图的结果集中。 (5)如果视图引用多个表时,无法用DELETE命令删除数据,若使用UPDATE命令则应与INSERT操作一样,被更新的列必须属于同一个表。 7.3.1 插入数据记录 7.3.1 插入数据记录 例7-7 创建一个基于表employees的新视图v_employees。 程序清单如下: create view v_employees(number, name, age, sex, salary) as select number, name, age, sex, salary from employees where name=’张三’ 执行以下语句可向表employees中添加一条新的数据记录: Insert into v_employees Values(001,’李力’,22,’m’,2000) 7.3.1 插入数据记录 7.3.1 插入数据记录 例7-8 首先创建一个包含限制条件的视图v_employee2,限制条件为工资>2000,然后插入了一条不满足限制条件的记录,再用SELECT语句检索视图和表。 程序清单如下: create view v_employee2 as select * from employee where 工资>2000 go insert into v_employee2 values(002,’王则’,30,’f’,1000) go select * from employee go select * from v_employee2 go7.3.1 插入数据记录 7.3.1 插入数据记录 例7-9 在例子7-8的基础上添加WITH CHECK OPTION选项。 程序清单如下: create view v_employee3 as select * from employee where 工资>2000 with check option go insert into v_employee3 values(002,’王则’,30,’f’,1000) go select * from v_employee3 go运行该程序将显示如下出错信息: Server: Msg 550, Level 16, State 1, Line 1 The attempted insert or update failed because the target view either specifies WITH CHECK OPTION or spans a view that specifies WITH CHECK OPTION and one or more rows resulting from the operation did not qualify under the CHECK OPTION constraint. The statement has been terminated. 7.3.2 更新和删除数据记录 7.3.2 更新和删除数据记录 使用视图可以更新数据记录,但应该注意的是,更新的只是数据库中的基表。使用视图删除记录,可以删除任何基表中的记录,直接利用DELETE语句删除记录即可。但应该注意,必须指定在视图中定义过的字段来删除记录。 例7-10 创建了一个基于表employees的视图v_employees,然后通过该视图修改表employees中的记录。 程序清单如下: create view v_employees as select * from employees update v_employees set name=’张然’ where name=’张三’ 例7-11 利用视图v_employees删除表employees中姓名为张然的记录。 程序清单如下: delete from v_employees where name=’张然’
本文档为【第7章 视图的操作与管理】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_082674
暂无简介~
格式:ppt
大小:239KB
软件:PowerPoint
页数:0
分类:互联网
上传时间:2010-09-16
浏览量:21