什么是视图
大家都知道,我们国家现在“神七”上天了。从美国的月球登月开始,人类上天不再是神话。听说,在美国,你只要出几十万美元,您就可以上一次月球进行太空旅行,所以,我们相信:在不久的将来,上天旅行将走进我们百姓的生活,那是一件多么新鲜神奇的事情啊。好多美国人上天后,他们用望远镜观看我们的地球,结果看到的地球形状各不相同。有的说象绿色的橘子,有的说象白色的大鸭梨,有的说象蓝色的大西瓜。这是为什么呢?你肯定会说:那是因为从不同的角度(视角),看到的不同形状而已。那么,从不同的视角,将看到不同的“图形”,这就是我们马上讲到的视图。我们的学员信息也是如此:对于学员的信息和成绩,老师比较关心学员成绩以及是否参加考试,包括姓名、学号、笔试、机试、是否通过等。班主任则比较关心学生档案,包括姓名、学号、性别和年龄。
其实,视图就是一张虚拟表,它表示一张表的部分数据或多张表的综合数据,其结构和数据是建立在对表的查询基础上
• 视图中并不存放数据,而是存放在视图所引用的原始表(基表)中
• 同一张原始表,根据不同用户的不同需求,可以创建不同的视图
视图的用途
– 筛选表中的行
– 防止未经许可的用户访问敏感数据
– 降低数据库的复杂程度
– 将多个物理数据库抽象为一个逻辑数据库
使用视图可以给用户和开发人员带来很多好处。具体为:
1.对最终用户的好处
(1)结果更容易理解
创建视图时,可以将列名改为有意义的名称,使用户更容易理解列所代表的内容。在视图中修改列名不会影响基表的列名。
(2)获得数据更容易
很多人对SQL不太了解,因此对他们来说创建对多个表的复杂查询很困难。可以通过创建视图来方便用户访问多个表中的数据。
2.对开发人员的好处
(1)限制数据检索更容易
开发人员有时需要隐藏某些行或列中的信息。通过使用视图,用户可以灵活地访问他们需要的数据,同时保证同一个表或其他表中的其他数据的安全性。要实现这一目标,可以在创建视图时将要对用户保密的列排除在外。
(2)维护应用程序更方便
调试视图比调试查询更容易。跟踪视图中过程的各个步骤中的错误更为容易,这是因为所有的步骤都是视图的组成部分。
如何创建视图
• 使用T-SQL语句创建视图的语法
CREATE VIEW view_name
AS
<select语句>
IF EXISTS (SELECT * FROM sysobjects WHERE /*检测是否存在*/
name = 'view_stuInfo_stuMarks')
DROP VIEW view_stuInfo_stuMarks /*删除视图*/
GO
CREATE VIEW view_stuInfo_stuMarks /*创建视图*/
AS
SELECT 姓名=stuName,学号=stuInfo.stuNo,
笔试成绩 =writtenExam, 机试成绩=labExam,
平均分=(writtenExam+labExam)/2
FROM stuInfo LEFT JOIN stuMarks
ON stuInfo.stuNo=stuMarks.stuNo
GO
SELECT * FROM view_stuInfo_stuMarks /*使用视图*/
从一个或者多个表或视图中导出的虚拟表,其结构和数据是建立在对表的查询基础上的。
理论上它可以像普通的物理表一样使用,例如增、删、改、查等,修改视图中的数据实际上是修改
原始数据表。因为修改视图有许多限制,所以在实际开发中一般视图仅做查询使用。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lenotang/archive/2008/11/18/3329550.aspx
分享到:
相关推荐
SQL Server 2008 创建视图 - SQL 语句方式 本资源主要介绍了在 SQL Server 2008 中使用 SQL 语句创建视图的方法和语法结构。视图是从一个或多个表中导出的虚拟表,通过视图可以简化复杂的查询操作,提高数据访问...
在SQL Server数据库中,存储文件或二进制大对象(Binary Large Object,简称BLOB)是一种常见的需求。这里我们主要关注如何使用SQL Server中的特定字段类型来存储文件,并结合Delphi进行操作。在SQL Server 2000及...
sql临时创建视图.sql
SQL server2005 创建视图视频 SQL\创建视图(上).exe
在SQL Server 2000中,引入了索引视图的概念,使得视图不仅可以作为数据的安全访问机制和逻辑展示方式,还可以通过创建唯一群集索引和非群集索引来优化查询效率。 传统的视图在运行时会被临时实体化,即每次查询...
3. **使用SQL命令创建视图**:这是最灵活也是最常用的方式,通过`CREATE VIEW`命令可以直接编写SQL查询来定义视图,这种方式可以实现更复杂的数据逻辑。 #### 三、视图与查询的区别 - **查询**是在数据库中临时...
1. 创建视图: - `WITH CHECK OPTION` 是一个重要的子句,它确保对视图的更新、插入操作的结果仍然符合视图的筛选条件。例如,在创建`stuview2`时,我们限制了只有性别为"男"的学生信息会被显示,如果尝试更新或...
Delphi创建SQLserver数据库视图的例子,使用create View语句来生成视图,当然本程序创建好视图后,也可删除视图,下面是详细的代码: //创建一个视图: procedure TForm1.Button1Click(Sender: TObject); ...
资源名称:SQL Server 视图及索引的创建及使用内容简介: 本文档主要讲述的是SQL Server 视图及索引的创建及使用;目的是通过企业管理器和Transact_SQL语句对视图进行创建、修改和删除通过企业管理器。希望本文档会给...
- **利用视图**:创建视图可以帮助封装复杂的查询逻辑,并简化日常的数据查询任务。 - **理解系统函数**:熟练掌握系统函数如`COLUMNPROPERTY()`等可以更灵活地获取元数据信息。 - **文档参考**:SQL Server官方文档...
5.掌握应用SQL Server Management Studio创建数据库的方法。 6.掌握应用SQL Server Management Studio修改和查看数据库的方法。 7.掌握应用SQL Server Management Studio删除数据库的方法。 8.掌握应用Transact-SQL...
1,什么是视图? 2,为什么要用视图; 3,视图中的ORDER BY; 4,刷新视图; ...当你查询视图时,无论是获取数据还是更新数据,Sql server都用视图的定义来访问基础表; 视图在我们日常操作也扮演
创建视图通常使用CREATE VIEW语句,格式如下: ```sql CREATE VIEW 视图名 AS SELECT column1, column2, ... FROM 表名 WHERE 条件; ``` 这将创建一个基于指定表和条件的视图,只包含满足条件的行和指定列。 ### ...
这篇文档主要讲述了如何使用SQL语句在SQL Server中创建用户角色并进行授权。首先,我们从创建登录账户开始,然后创建数据库用户,接着将登录账户与数据库用户关联,并通过加入数据库角色来赋予用户特定的权限。 1. ...
在SQL Server 2008中,创建视图是一项重要的数据库管理任务,它允许用户根据需求定制数据查询的结果,提供了一种虚拟表的形式,显示来自一个或多个表的数据。视图并不存储数据本身,而是基于已有表的查询结果。下面...
- **使用T-SQL语句创建视图**:通过`CREATE VIEW`语句可以定义视图的结构和数据源。例如: ```sql CREATE VIEW VIEW_CP_PRICE2000 WITH ENCRYPTION AS SELECT * FROM dbo.产品 WHERE 价格 ; ``` 这里使用了...
开发者可以使用SSDT创建、调试和部署SQL Server数据库项目,同时支持版本控制和团队协作。此外,SSDT还包含了一个强大的数据库比较工具,可以对比不同数据库实例之间的结构差异,并生成同步脚本。 对于远程访问和跨...
创建索引视图需要遵循特定的语法和规则,例如确保视图定义的确定性以及符合SQL Server对视图的要求等。 #### 十四、使用SET选项获得一致的结果 为了确保在创建索引视图时获得一致的结果,需要设置特定的选项,如`...
2. 在 Sql Server 2005 中创建目标数据库 jmmaj(为空),然后打开用 Sql Server 2008 生成的.sql 脚本文件,并将脚本添加到 jmmaj 数据库中。 三、将数据从 Sql Server 2008 导入到 Sql Server 2005 1. 右击 Sql ...