- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库课程详细教程 第07章课件
第7章 视图管理
本章导读
本章介绍了视图的概念和优点,并结合实例介绍了在SQL Server 2005中如何实现创建、修改和管理视图。
学习目的与要求
(1)了解视图的概念和优点
(2)掌握在SQL Server2005中如何创建、修改和管理视图 。;1.视图的概念
视图是一个虚拟表,用户可以根据其对数据的特殊要求,通过视图从一个表或多个表中提取一组记录,在基本表的基础上自定义数据表格。
2.视图的作用
(1)定制数据
(2)简化操作
(3)提供安全机制
(4)改进性能;7.1.2 创建视图;7.1.2 创建视图;3.视图设计器;1.视图设计器
(1)关系图窗格
(2)网格窗格
(3)SQL 窗格
(4)结果窗格
;【例7.2】创建一个视图clanguageview用于显示所有选修了‘C语言’课程的学生的学号、课程名和成绩,并按成绩从高到低排列。
方法一:使用Management Studio视图设计器创建视图
方法二:使用CREATE VIEW语句创建视图
CREATE VIEW dbo.clanguageview
As
SELECT C.学号, SC.课程名,.SC.成绩
FROM C INNER JOIN SC ON C.课程号 =SC.课程号
WHERE C.课程名 = C语言
ORDER BY SC.成绩 DESC;
1.语句格式
ALTER VIEW [架构名 . ] 视图名 [ (列名 [ ,...n ] ) ]
[ WITH ENCRYPTION | | VIEW_METADATA ]
AS
SQL语句
[ WITH CHECK OPTION ]
2.功能
ALTER VIEW的用法和CREATE VIEW基本类似,各参数的作用相同,参照CREATE VIEW语句。;【例7.3】修改视图clanguageview用于显示所有选修了‘C语言’课程,并且是‘管理信息系’的学生的学号、课程名、成绩和所在系,并按成绩从高到低排列。
方法一:使用Management Studio视图设计器修改视图
方法二:使用ALTER VIEW语句修改视图
ALTER VIEW clanguageview
As
SELECT sc.学号, sc.成绩
FROM c INNER JOIN sc ON c.课程号 = sc.课程号
INNER JOIN s ON sc.学号 = s.学号
WHERE c.课程名 = C语言 AND s.系 = 管理信息系
ORDER BY SC.成绩 DESC;1.语句格式
DROP VIEW [ 架构名 . ] 视图名 [ ...,n ]
2.功能
删除指定名称的视图。
【例7.4】删除视图clanguageview。
方法一:使用Management Studio视图设计器删除视图
方法二:使用DROP VIEW语句删除视图
DROP VIEW dbo.clanguageview;语法格式:
sp_rename [ @objname = ] 对象名 , [ @newname = ] 新对象名 ,
[ @objtype = ] 对象类型 ]
【例7.5】重命名视图clanguageview为cview。
方法一:使用Management Studio视图设计器为视图重命名
方法二:利用系统存储过程sp_rename为视图重命名。
sp_rename ‘clanguageview’,’cview’;【例7.6】为【例7.1】3]中修改好的视图clanguageview,显示依赖关系。
方法:使用Management Studio视图设计器为查看视图依赖关系;【例7.7】利用例7-2创建的视图clanguageview,查询‘C语言’课程成绩在80分以上的学生的学号和成绩,并按成绩从高到低排列。
SELECT 学号,成绩
FROM clanguageview
WHERE 成绩80
【例7.8】利用例7-3修改的视图clanguageview,查询管理信息系选修了‘C语言’和‘数据库’课程,并且两门课程成绩在80分以上的学生的学号。
SELECT 学号
FROM clanguageview a JOIN sc b on a.学号=b.学号
WHERE b.课程名=‘数据库’and a.成绩80 and b.成绩80;1.通过视图更新数据的更新规则
2.通过视图插入数据
1)语法格式
INSERT INTO 视图名 (列名1,列名2……)
VALUES (列值1,列值2,……)
3.通过视图修改数据
可以利用视图修改基础表中的数据列值,语法格式为:
UPDATE 视图名
SET 列1=列值1,列2=列值2,……
WHERE 条件
文档评论(0)