SQL —— 视图
1. 为什么使用视图
1) 提高数据的安全型,不同权限的用户可以查看数据的不同。
2) 符合用户日常业务逻辑
2. 什么是视图
视图是一种查看数据库中一个或多个表中的数据的方法。
视图是一种虚拟表。 通常是作为来自一个或多个表中的行或列的子集创建的,当然他也可以包含全部的行和列。
视图并不是数据库中存储的数据值的集合,它的行和列来自查询中引用的表。在执行时,他直接显示来自表中的数据。
3. 视图的作用
筛选表中的行
防止未经许可的用户访问敏感数据
将多个物理数据表抽象为一个逻辑数据表
4. 如何创建视图
方法一: 使用SSMS,选中数据库, 选择“视图”选项并右击,在弹出的快捷菜单中选择“新建视图项”, 添加药学查询的表, 选择希望查看到的列,保存视图。
方法二: 使用语句创建,语法:
create view view_name
as
<select 语句>
5. 视图语法整理:
1) 创建视图
create view view_name
as
<select 语句>
2) 修改视图
alter view view_name
as
<select 语句>
3)删除视图
drop view view_name
4)修改视图名称
exec sp_rename view_oldname view_newname
5) 查看视图
select 列名 from view_name
6. 注意事项
每个视图中可以使用多个表
与查询相似,一个视图可以嵌套另一个视图,但最好不要超过3层。
视图定义中 select 语句不能包括一下内容
order by 字句,除非在select 语句的选择列中也有一个top字句
into 关键字
引用临时表或表变量
7. 视图的优缺点
优点: 简单、 安全、逻辑数据独立
缺点: 性能,修改限制
如果视图中存在函数或涉及复杂的多表查询,那么用户在查询视图的过程中会花费一定的时间。
对于简单的视图可以使用update 语句更新,如果对于复杂的视图可能就不能使用了。删除亦是如此。所以对于视图的用法最好只停留到查询上面。
SQL —— 视图的更多相关文章
- SQL视图&触发器
SQL视图 在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表. 视图包含行和列,就像一个真实的表.视图中的字段就是来自一个或多个数据库中的真实的表中的字段.我们可以向视图添加 SQL 函数 ...
- 关于SQL视图的创建和使用方法
SQL视图的创建和使用 视图这个东西在其他的软件中,我们也经常看得到,例如word中就有视图,我们不难发现,视图似乎是一种显示方式,就像WORD一样,有几种显示版面,这就是视图,那么SQL中的视图又该 ...
- ylb:SQL 视图(View)基础
ylbtech-SQL Server: SQL Server-SQL 视图(View)基础 SQL 视图(View)基础. 1,ylb:视图(View)基础返回顶部 -- ============== ...
- SQL 视图(Views)
SQL 视图(Views) 视图是可视化的表. 本章讲解如何创建.更新和删除视图. SQL CREATE VIEW 语句 在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表. 视图包含行和列 ...
- GeoServer 查询sql视图
说明: 最近项目中遇到一个需求,需要统计管网的长度,但管网数据量非常大,前端用openlayers接口统计直接就奔溃了. 后尝试使用调后台接口查数据库的方式,虽然可行但是又要多一层与后台交互的工作. ...
- sql 视图的用法
在一个项目的实际开发过程中牵涉到复杂业务的时候,我们不可避免的需要使用中间表来进行数据连接,有的同学就说了,我可以采用Hibernate进行主外键进行关联啊?多对多,多对一,一对一,等,采用主外键关联 ...
- 多语言架构下如何正确的使用SQL视图
产品的定位 做产品的都知道,是否支持多语言直接影响到产品的定位问题. 如果一个产品周期是一年的话,要完美支持多语言最少也得在加3个月!所需时间和页面数量.数据库表的数量和表的数据量成正比. 可以看出代 ...
- sql视图实例
一个视图是一个或一组SQL语句,存储在数据库中相关的名称.一个视图实际上是一个预定义的SQL查询中的表的形式组成. 一个视图可以包含一个表的所有行,或选择表中的行.从一个或多个表上写SQL查询创建一个 ...
- 简单的3个SQL视图搞定所有SqlServer数据库字典
网上有很多SQL SERVER数据库字典的SQL语句,七零八落,我在工作整理了一下思路,总结SQL代码如下.数据库字典包括表结构(分2K和2005).索引和主键.外键.约束.视图.函数.存储过程.触发 ...
- sql视图学习笔记--视图
视图是为用户对数据多种显示需求而创建的,其主要用在一下几种情况: (1)限制用户只能访问特定表特定条件的内容,提高系统的安全性. (2)隐藏表结构.创建多种形式的数透视,满足不同用户需求. (3)将复 ...
随机推荐
- C#中集合汇总
平时敲代码,只关注如何使用,没有深入去研究一些本质性的东西,靠死记硬背,不去真正理解,其实最后是很难记住的. 对于C#常见的集合,自己平时好像只有用到List,Dictionary,ArrayList ...
- pch找不到pod里头文件
1. 问题描述 将文件用pod管理起来后,pod install成功,而且这些文件也可以搜索得到,但是pch文件里import的头文件找不到,而这些头文件又确确实实在你的pod项目下. 2. 解决办法 ...
- 查看CentOS上Apache位置,版本,停止,启动
查看Apache是否被安装: [root@asg11 ~]# find / -name 'httpd'/etc/sysconfig/httpd/etc/httpd/etc/logrotate.d/ht ...
- SVN Working Copy locked ,并且进行clean up也还是不行
标题:working copy locked 提示:your working copy appears to be locked. run cleanup to amend the situation ...
- SQL-Server2008 数据库发布订阅
参考博客园文章http://www.cnblogs.com/tyb1222/archive/2011/05/31/2064944.html 添加安全数据库 更改数据库名称 SQL语句 select @ ...
- 第四篇 Replication:事务复制-订阅服务器
本篇文章是SQL Server Replication系列的第四篇,详细内容请参考原文. 订阅服务器就是复制发布项目的所有变更将传送到的服务器.每一个发布需要至少一个订阅,但是一个发布可以有多个订阅. ...
- vs2015 使用 visual studio on line 在线版本控制
将visual studio on line 作为一个免费在线版本控制器还是不错的,可以支持5个免费用户共同开发, 以下作为记录,贴在此. 一 申请visual studio on line 账户. ...
- 计算NSString含有多少个相同字符串
// // NSString+NSStringExt.m // 01-NSString类 // // Created by apple on 14-3-20. // Copyright (c) ...
- 这是我定位的Bug
https://github.com/danielgindi/ios-charts/issues/406
- 连接sql server数据库的两种方式
class DB { private static SqlConnection conn; public static SqlConnection getConn() { //conn = n ...