博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于视图的一些认识
阅读量:5838 次
发布时间:2019-06-18

本文共 789 字,大约阅读时间需要 2 分钟。

今天接触到了视图的概念,并应用到了系统上。在网上搜了下基础概念,记录下来以备需要。

1.关于视图 

视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。 

对其中所引用的基础表来说,视图的作用类似于筛选。定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。分布式查询也可用于定义使用多个异类源数据的视图。如果有几台不同的服务器分别存储组织中不同地区的数据,而您需要将这些服务器上相似结构的数据组合起来,这种方式就很有用。 
通过视图进行查询没有任何限制,通过它们进行数据修改时的限制也很少。 
2.视图的权限
视图可以隐藏基表,可以禁止所有用户访问数据库表,而要求用户只能通过视图操作数据。这种方法可以保护用户和应用程序不受某些数据库修改的影响。例如,如果可以创建一个名为 "本月销售额 "的视图。在每月的第一天,可以相应地修改视图的定义。如果没有这个视图,用户每月都必须重新编写查询以选择相应月份的销售额。 将用户限定在表中的特定行上。 
例如,只允许雇员看见工作跟踪表内记录其工作的行。 
将用户限定在特定列上。 
例如,对于那些不负责处理工资单的雇员,只允许他们看见雇员表中的姓名列、办公室列、工作电话列和部门列,而不能看见任何包含工资信息或个人信息的列。 
将多个表中的列联接起来,使它们看起来象一个表。 
聚合信息而非提供详细信息。 
例如,显示一个列的和,或列的最大值和最小值。

3.视图的写法

create or replace view v_name as select t1.*,t2.*,t3.* from A表 t1, B表 t2, C表 t3 where t1.a=t2.b and t2.b1=t3.c

 

转载地址:http://ifncx.baihongyu.com/

你可能感兴趣的文章
C/C++头文件一览
查看>>
搭建比较舒适的spark源码阅读环境
查看>>
我的友情链接
查看>>
建立网络连接的基本步骤及NSJSONSerialization(苹果自带)——JSON解析
查看>>
如何隐藏MAC地址和IP地址
查看>>
大型网站技术架构(二)架构模式
查看>>
【BZOJ 1010】 [HNOI2008]玩具装箱toy
查看>>
lamp的安装
查看>>
大型网站技术架构(四)网站的高性能架构
查看>>
Java基础学习总结(22)——异常处理
查看>>
Java基础学习总结(28)——Java对各种排序算法的实现
查看>>
CentOS7手动安装OpenStack Pike版--(neutron)
查看>>
线性筛法及积性函数总结(欧拉函数、莫比乌斯函数、约数和函数、约数个数函数)...
查看>>
[9-1]磁盘分区、创建文件系统、挂载以及链接文件
查看>>
show下自己的第一份奖品
查看>>
zabbix客户端错误代码汇总
查看>>
vim产生的.swap文件
查看>>
GimageX v2.1.1.0 中文版 - 微软系统备份恢复工具神器
查看>>
Storm-kafka【接口实现】4-1:ZKCoordinator: ZK协调器
查看>>
进度条对话框ProgressDialog
查看>>