11-10SQLserver基础--数据库之视图
视图
视图实际就是对表的连接展现出来的结果建成的虚拟表。简单来说,视图实际上就是一个虚拟的表,通过表与表之间的关系连接起来,方便查询时使用。
首先,将需要连接的语句存储到数据库中,定义新的视图名代替连接的这段语句;
然后,每次查询这个新的视图名的时候,实际上是执行了表连接的代码查询。
1、将两个表(student,score表)联合写成一个表来用,形成一个新的表。
(select student.Sno,Sname,Ssex,Sbirthday,Class,score.Cno,Degree from student
join score on student.Sno=score.Sno) as --作为一个新表,方便查询时使用
2、创建视图
方法一:通过视图---新建视图来操作。
步骤1:在“对象资源管理器” 选择想要建视图的数据库(xinxibiao)名下,点击“+”号后,
在子目录中选中“视图”,右键“新建视图”。
步骤2:在弹出的“添加表”对话框中,选择想要建立关系的表,然后点击“添加”,关闭即可。

步骤3:当两个或几个表建立好关系之后,发现它们之间存在主键与外键的关系,下图就是它们之间的关系表。

步骤4:建立好关系后,完成创建视图,就会显示想要的结果。

方法二:通过代码创建视图
书写格式:
create +(视图英文名)+创建的视图名称 ---类似表的创建格式
as
建立两个或多个表之间的关系的查询语句
go
例:create view studentscore ----创建视图
as
select student.Sno,Sname,Ssex,Sbirthday,Class,score.Cno,Degree from student
join score on student.Sno=score.Sno ---建立student,score 表的关系语句
go
select*from studentscore ----查询结果的语句

【注意事项】视图里面不存在order by, 聚合函数,in,not in 关系运算等语句,它不是一个真正的表,是虚拟的表,数据来源在student,score表中,只能使用表连接的join...on组合数据,方便查询使用。
练习题1:

3、删除视图
方法1:

方法2:通过代码删除
drop view+视图名称
例如: drop view studentscore
4、修改视图
alter view studentscore ---相当于删除视图重写
as
(
select student.Sno,Sname,Ssex,Sbirthday,Class,score.Cno,Degree from student
join score on student.Sno=score.Sno
)
go
【注意事项】同一个关系视图只能建一次,修改之后需重新建立关系,视图本身就是虚拟的不存在,只是为了查询方便使用。
11-10SQLserver基础--数据库之视图的更多相关文章
- day 53-1 Django基础三之视图函数
Django基础三之视图函数 本节目录 一 Django的视图函数view 二 CBV和FBV 三 使用Mixin 四 给视图加装饰器 五 Request对象 六 Response对象 一 Dja ...
- day 67 Django基础三之视图函数
Django基础三之视图函数 本节目录 一 Django的视图函数view 二 CBV和FBV 三 使用Mixin 四 给视图加装饰器 五 Request对象 六 Response对象 一 Dja ...
- MySQL数据库之视图
1 引言 为了简化复杂SQL语句编写,以及提高数据库安全性,MySQL数据库视图特性.视图是一张虚拟表,不在数据库中以储存的数据值形式存在.在开发中,开发者往往只对某些特定数据和所负责的特定任务感兴趣 ...
- MySQL/MariaDB数据库的视图(VIEW)
MySQL/MariaDB数据库的视图(VIEW) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.视图概述 1>.什么是视图 视图就是一个虚拟的表,保存有实表的查询结果 ...
- iOS系列 基础篇 05 视图鼻祖 - UIView
iOS系列 基础篇 05 视图鼻祖 - UIView 目录: UIView“家族” 应用界面的构建层次 视图分类 最后 在Cocoa和Cocoa Touch框架中,“根”类时NSObject类.同样, ...
- 在Oracle 11.2的数据库中建表时遇到 RESULT_CACHE (MODE DEFAULT) ORA-00922: missing or invalid option
在Oracle 11.2的数据库中建表时遇到 RESULT_CACHE (MODE DEFAULT) ORA-00922: missing or invalid option hostdr:[/ho ...
- Oracle数据库之视图与索引
Oracle数据库之视图与索引 1. 视图简介 视图是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的数据进行查询和修改. 视图基于的表称为基表,视图是存储在数据字典里的一条SE ...
- [SQL基础教程] 5-1视图
[SQL基础教程] 5-1视图 视图和表 从SQL角度看视图就是一张表 视图与表的差别 表保存了实际的数据,视图保存的是SELECT语句: 视图的优点 节省存储空间: 将常用的Select 语句保存成 ...
- 小程序开发基础-swiper 滑块视图容器
小编 / 达叔小生 参考官方文档:https://developers.weixin.qq.com/miniprogram/dev/component/ 小程序开发基础-swiper 滑块视图容器 根 ...
随机推荐
- StringToInt(atoi) 字符串转换成整数
public class StringToInt { public int atoi(String s) { long num = 0; int minus = 0; if(s==null) { re ...
- Eclipse里面新建servlet 是否需要配置web.xml
在新建的时候可选时候映射,如果选择了映射,那么就会在servle开头的地方有一行@servlet(""),这就完成了映射.注释掉这行就需要在web.xml中设置了
- 51nod 1010 stl/数论/二分
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1010 1010 只包含因子2 3 5 基准时间限制:1 秒 空间限制:1 ...
- dga-5.29~6.4
ahzoyr.codtuqb.netvzugk.bizyfewr.bizbgqjyk.bizcdychl.comcjgfuk.comcnncfc.cometypsc.comfaouli.comffjj ...
- 在sql查询中为了提高查询效率,我们常常会采取一些措施对查询语句进行sql优化,下面总结的一些方法,有需要的可以参考参考。
转载https://www.cnblogs.com/zhang-bo/p/9138151.html 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建 ...
- python sort() sorted() 与argsort()函数的区别
1.python的内建排序函数有 sort.sorted两个 sort函数只定义在list中,sorted函数对于所有的可迭代序列都可以定义. for example: ls = list([5, 2 ...
- MySQL分片 --转自Peter Zaitsev对MySQL分片的建议
本文作者Peter Zaitsev是知名数据库专家,2006年联合创立了Percona.负责维护网站“MySQL性能”.同时,他也是<高性能MySQL>一书的联合作者.以下是他对MySQL ...
- mysql 关联关系
一 单表查询的语法 SELECT 字段1,字段2... FROM 表名 WHERE 条件 GROUP BY field HAVING 筛选 ORDER BY field LIMIT 限制条数 二 关键 ...
- mac环境下利用MAMP配置PHPStorm
刚刚准备搞php稍微研究一下,结果第一步就卡到了.各种配置问题,教程找了又找,找了又找,总算是成功了.纪念一下.配置截图.同时解决phpstorm 不能接受post 表单数据的问题. 推荐大家支持正版 ...
- linux monitor and maintanence
@cacti 1.install epel extends source 2.install lamp use yum method yum install -y httpd php php-mysq ...