1、视图的作用

视图的作用:

第一点:使用视图,可以定制用户数据,聚焦特定的数据。

解释:

    在实际过程中,公司有不同角色的工作人员,我们以销售公司为例的话,

    采购人员,可以需要一些与其有关的数据,而与他无关的数据,对他没

    有任何意义,我们可以根据这一实际情况,专门为采购人员创建一个视

    图,以后他在查询数据时,只需select * from view_caigou 就

    可以啦。

第二点:使用视图,可以简化数据操作。

解释:我们在使用查询时,在很多时候我们要使用聚合函数,同时还要

    显示其它字段的信息,可能还会需要关联到其它表,这时写的语句可能

    会很长,如果这个动作频繁发生的话,我们可以创建视图,这以后,我

    们只需要select * from view1就可以啦~,是不是很方便呀~

第三点:使用视图,基表中的数据就有了一定的安全性

解释:

    因为视图是虚拟的,物理上是不存在的,只是存储了数据的集合,我们可以

    将基表中重要的字段信息,可以不通过视图给用户,视图是动态的数据的集

    合,数据是随着基表的更新而更新。同时,用户对视图,不可以随意的更改

    和删除,可以保证数据的安全性。

第四点:可以合并分离的数据,创建分区视图(//目前我没用到)

解释:

    随着社会的发展,公司的业务量的不断的扩大,一个大公司,下属都设有很

    多的分公司,为了管理方便,我们需要统一表的结构,定期查看各公司业务

    情况,而分别看各个公司的数据很不方便,没有很好的可比性,如果将这些

    数据合并为一个表格里,就方便多啦,这时我们就可以使用union关键字,

    将各分公司的数据合并为一个视图。

2、Sql server中创建视图和创建表是一样的

2.1)创建表是这样的

--------创建表-------
--判断是否存在--
if exists (select * from sysobjects where name = 'Tab_EdsProd')
drop table Tab_EdsProd
go
--创建表
create table Tab_EdsProd
(
Mid int identity(1,1) primary key,
Code varchar(10) null,
Name varchar(20) null
)
--添加数据--
insert into Tab_EdsProd(Code,Name) values('001','张三');
insert into Tab_EdsProd(Code,Name) values('002','李四')
--查询数据--
select * from Tab_EdsProd

2.3)创建视图是这样的

--------创建视图-------
--判断是否存在--
if exists (select * from sysobjects where name = 'View_EdsProd')
drop view View_EdsProd
go
--创建视图
create view View_EdsProd
as
select * from Tab_EdsProd where Mid>1
go
--使用视图--
select *from View_EdsProd
--------创建加密视图-------
--判断是否存在--
if exists (select * from sysobjects where name = 'View_Jm_EdsProd')
drop view View_Jm_EdsProd
go
--创建视图
create view View_Jm_EdsProd
with encryption
as
select * from Tab_EdsProd where Mid>1
go
--使用视图--
select *from View_Jm_EdsProd

(转)Sql server中 如何用sql语句创建视图的更多相关文章

  1. Sql server中 如何用sql语句创建视图

    1.视图的作用 视图的作用: 第一点:使用视图,可以定制用户数据,聚焦特定的数据. 解释: 在实际过程中,公司有不同角色的工作人员,我们以销售公司为例的话, 采购人员,可以需要一些与其有关的数据,而与 ...

  2. SQL Server中常用的SQL语句(转):

    SQL Server中常用的SQL语句 转自:http://www.cnblogs.com/rainman/archive/2013/05/04/3060428.html 1.概述 名词 笛卡尔积.主 ...

  3. 使用CASE表达式替代SQL Server中的动态SQL

    原文:使用CASE表达式替代SQL Server中的动态SQL 翻译自: http://www.mssqltips.com/sqlservertip/1455/using-the-case-expre ...

  4. SQL Server中常用的SQL语句

    1.概述 名词 笛卡尔积.主键.外键 数据完整性 实体完整性:主属性不能为空值,例如选课表中学号和课程号不能为空 参照完整性:表中的外键取值为空或参照表中的主键 用户定义完整性:取值范围或非空限制,例 ...

  5. SQL Server中UPDATE和DELETE语句结合INNER/LEFT/RIGHT/FULL JOIN的用法

    在SQL Server中,UPDATE和DELETE语句是可以结合INNER/LEFT/RIGHT/FULL JOIN来使用的. 我们首先在数据库中新建两张表: [T_A] CREATE TABLE ...

  6. SQL Server中如何让SQL语句对字符串大小写敏感

    在SQL Server中默认对大小写是不敏感的,例如fname='peter'和fname='PETER'结果是一样的.但有时候用户会要求区分大小写,如验证密码等.这种情况下的处理办法就是在字段后加上 ...

  7. SQL SERVER 中如何用脚本管理作业

    在SQL SERVER中用脚本管理作业,在绝大部分场景下,脚本都比UI界面管理作业要高效.简洁.打个简单的比方,如果你要查看作业的运行时长,如果用UI界面查看,100个作业,你就得在历史记录里面至少查 ...

  8. SQL Server中如何用mdf,ldf文件还原数据库

    不论是手动还原还是写个脚本还原,首先都要修改文件的属性为可读写,另外这个用户能够修改 1.手动Attach 2.写个脚本还原 我个人比较喜欢写个脚本去还原 Exec sp_attach_db @dbn ...

  9. sql server中的开窗函数over、视图、事物

    一.开窗函数over的作用有两个: 1.排序order by,row_number,翻页 2.划区partition by,结合聚合函数针对某部分数据进行汇总 翻页的sql server 语句: an ...

随机推荐

  1. 深入浅出 Java Concurrency (29): 线程池 part 2 Executor 以及Executors[转]

    Java里面线程池的顶级接口是Executor,但是严格意义上讲Executor并不是一个线程池,而只是一个执行线程的工具.真正的线程池接口是ExecutorService. 下面这张图完整描述了线程 ...

  2. 模板——Treap

    不得不说平衡树博大精深,除了Treap,还有splay,非旋Treap和可持久化数据结构,今天先讲讲Treap,也很感谢这位大佬的博客给予我帮助:http://www.360doc.com/conte ...

  3. String类的endsWith()方法和startsWith()方法

    String 的endsWith() 方法用于测 试字符串是否以指定的后缀结束.如果参数表示的字符序列是此对象表示的字符序列的后缀,则返回 true:否则返回 false.注意,如果参数是空字符串,或 ...

  4. 用python获取ip信息

    1.138网站 http://user.ip138.com/ip/首次注册后赠送1000次请求,API接口请求格式如下,必须要有token值 import httplib2 from urllib.p ...

  5. Jetty启动配置解析

    目录 1. jetty概述 2. spring-jetty启动配置 1. jetty概述 维基百科:Jetty是一个纯粹的基于Java的网页服务器和Java Servlet容器. Jetty Serv ...

  6. 关于MQ 消息队列的通俗理解和 rabbitMQ 使用

    消息队列,一听很高大上,现在很多分布式系统都在用这个消息中间件 网上一搜, 说的都是些原理. 说下我的通俗理解, 你网上买了, 快递员给你投递, 会出现什么问题呢? 1  你不定时在家, 快递员 来了 ...

  7. 可怜的baidu,可怜的音库

    baidu词典中用的中文音库竟然全都是汉典的中文音库   真可怜,baidu这么大个公司竟然连着1250个发音都懒得录   汉典的音库布都是同一格式,导致一部分音频文件MCI函数无法播放   真他妈可 ...

  8. leetcode 996. Number of Squareful Arrays

    给定一个长度小于 12 的数组 要求排列方式的种数 使得相邻和为完全平方 不考虑数学结构 将问题转化为 一笔画问题 和为完全平方代表 之间存在通路 回溯法 N^N 记忆化搜索 NN 2^N 判断是否是 ...

  9. Leetcode958. Check Completeness of a Binary Tree二叉树的完全验证性

    给定一个二叉树,确定它是否是一个完全二叉树. 百度百科中对完全二叉树的定义如下: 若设二叉树的深度为 h,除第 h 层外,其它各层 (1-h-1) 的结点数都达到最大个数,第 h 层所有的结点都连续集 ...

  10. 关于Cocos2d-x多线程异步载入资源的问题

    我们通常使用CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("xxx.plist" ...