当前位置:  数据库>sqlserver

SQL Server 创建视图的语法

    来源: 互联网  发布时间:2014-08-29

    本文导语:      大家都知道,我们国家现在“神七”上天了。从美国的月球登月开始,人类上天不再是神话。听说,在美国,你只要出几十万美元,您就可以上一次月球进行太空旅行,所以,我们相信:在不久的将来,上天旅行将走进我...

    大家都知道,我们国家现在“神七”上天了。从美国的月球登月开始,人类上天不再是神话。听说,在美国,你只要出几十万美元,您就可以上一次月球进行太空旅行,所以,我们相信:在不久的将来,上天旅行将走进我们百姓的生活,那是一件多么新鲜神奇的事情啊。好多美国人上天后,他们用望远镜观看我们的地球,结果看到的地球形状各不相同。有的说象绿色的橘子,有的说象白色的大鸭梨,有的说象蓝色的大西瓜。这是为什么呢?你肯定会说:那是因为从不同的角度(视角),看到的不同形状而已。那么,从不同的视角,将看到不同的“图形”,这就是我们马上讲到的视图。我们的学员信息也是如此:对于学员的信息和成绩,老师比较关心学员成绩以及是否参加考试,包括姓名、学号、笔试、机试、是否通过等。班主任则比较关心学生档案,包括姓名、学号、性别和年龄。

其实,视图就是一张虚拟表,它表示一张表的部分数据或多张表的综合数据,其结构和数据是建立在对表的查询基础上
1. 视图中并不存放数据,而是存放在视图所引用的原始表(基表)中
2. 同一张原始表,根据不同用户的不同需求,可以创建不同的视图

视图的用途
– 筛选表中的行
– 防止未经许可的用户访问敏感数据
– 降低数据库的复杂程度
– 将多个物理数据库抽象为一个逻辑数据库

使用视图可以给用户和开发人员带来很多好处。
具体为:
1. 对最终用户的好处
(1)结果更容易理解
创建视图时,可以将列名改为有意义的名称,使用户更容易理解列所代表的内容。在视图中修改列名不会影响基表的列名。
(2)获得数据更容易
很多人对SQL不太了解,因此对他们来说创建对多个表的复杂查询很困难。可以通过创建视图来方便用户访问多个表中的数据。

2. 对开发人员的好处
(1)限制数据检索更容易
 开发人员有时需要隐藏某些行或列中的信息。通过使用视图,用户可以灵活地访问他们需要的数据,同时保证同一个表或其他表中的其他数据的安全性。要实现这一目标,可以在创建视图时将要对用户保密的列排除在外。
(2)维护应用程序更方便
 调试视图比调试查询更容易。跟踪视图中过程的各个步骤中的错误更为容易,这是因为所有的步骤都是视图的组成部分。

如何创建视图

使用T-SQL语句创建视图的语法
 

代码如下:

CREATE VIEW view_name
   AS
   
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 /*使用视图*/

从一个或者多个表或视图中导出的虚拟表,其结构和数据是建立在对表的查询基础上的。

理论上它可以像普通的物理表一样使用,例如增、删、改、查等,修改视图中的数据实际上是修改原始数据表。因为修改视图有许多限制,所以在实际开发中一般视图仅做查询使用。


    
 
 

您可能感兴趣的文章:

  • SQL SERVER先判断视图是否存在然后再创建视图的语句
  • sql 刷新视图
  • sql视图创建索引的方法
  • 如何查看表与视图结构?(sql数据库与mysql)
  • sql创建视图语法示例代码
  • 快速删除数据库表、视图、存储过程的sql语句
  • sql server判断数据库、表、列、视图是否存在
  • 查看SQL Server数据库表、索引视图等占用空间大小的方法
  • sql server索引与视图用法分享
  • SQL视图搞定所有Sql Server数据库字典的方法介绍
  • 怎么查看SQL SERVER加密存储过程/函数/触发器与视图
  • 用SQL语句操作数据库的例子(添加 删除 修改 字段 视图等)
  • 探讨SQL利用INFORMATION_SCHEMA系统视图如何获取表的主外键信息
  • 用SQL语法玩弄你的Redis RedisSQL
  • MySQL的SQL语法解析器 DBIx-MyParse
  • sql语法中什么类型的值需要用单引号‘’修饰?
  • SQL查询前10条记录(SqlServer/mysql/oracle)的语法分析
  • Oracle实现分页查询的SQL语法汇总
  • 基于sql语句的一些常用语法积累总结
  • sql server中创建链接服务器与远程账户映射的语法
  • sql 中 case when 语法使用方法
  • JDBC SQL语法
  • SQL Server高级内容之case语法函数概述及使用
  • Oracle和SQL语法区别整理
  • SQL语法 分隔符理解小结
  • MySQL prepare语句的SQL语法
  • SQL SERVER中各类触发器的完整语法及参数说明
  • ORACLE 常用的SQL语法和数据对象
  • 超详细的SQL语句语法汇总
  • SQL语句的基本语法
  • MySQL 最基本的SQL语法/语句
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • sql2005创建远程登录帐户的sql语句分享
  • 创建 sql server 链接服务器的sql代码
  • sql server 2008:您对无法重新创建的表进行了更改或者启用了“阻止保存重新创建表的更改”
  • sql server 创建主键(uuid和自增长)
  • 为什么用sqlserver生成的创建表的sql语句中都不包含主键信息???
  • sql server创建复合主键的2种方法
  • Sql Server 创建数据库脚本Create DATABASE
  • 关于创建数据库(SQL)和表的问题
  • SQL创建的几种存储过程
  • SQL Server创建链接服务器的存储过程示例分享
  • 使用sql语句创建和删除约束示例代码
  • 比较详细的完美解决安装sql2000时出现以前的某个程序安装已在安装计算机上创建挂起的文件操作。 原创
  • Oracle创建主键自增表(sql语句实现)及触发器应用
  • SQL学习笔记二 创建表、插入数据的语句
  • sql2008数据库创建与删除链接服务器
  • T-SQL语句创建数据库的例子(图文)
  • SQL语句创建Oracle Spatial的图层方法简介
  • sql server创建表、删除表的语句
  • 使用T-SQL语句创建、修改、删除数据库
  • c# asp .net 动态创建sql数据库表的方法
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 数据库 iis7站长之家
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • SQL客户端软件 PKLite SQL Client
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3