加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

Sql Server 视图数据的增删改查方法

发布时间:2022-03-03 23:06:48 所属栏目:MsSql教程 来源:互联网
导读:视图是SQL学习中很重要的一个知识点,是需要掌握的,对此,这篇文章就给大家介绍一下关于视图的概念,使用和视图的增删查改操作,有这方面学习需要的朋友就继续往下看吧。 一、视图的基本概念 视图是用于查询的另外一种方式。 与实际的表不同,它是一个虚
       视图是SQL学习中很重要的一个知识点,是需要掌握的,对此,这篇文章就给大家介绍一下关于视图的概念,使用和视图的增删查改操作,有这方面学习需要的朋友就继续往下看吧。
 
       一、视图的基本概念
       视图是用于查询的另外一种方式。 与实际的表不同,它是一个虚表;因此数据库中只存在视图的定义,而不存在视图中相对应的数据,数据仍然存放在原来的基本表中。视图是一种逻辑对象。
 
       二、 视图能做什么
       导出数据; 在导出数据时,常常需要多个表联合查询,这个时候就可以使用视图;转换字段,如把status(0/1 Int类型)字段转换成启用/停用(文字) ,然后用视图保存定义。
 
       数据安全,可以给视图加密。
 
       三、视图操作
       3.1 查询数据
 
       (一)准备素材:
 
       使用两张表,其中一张是家电表,另外一张字典表(只需要知道这两张表有一个连接字段brandID-RowID:注意两个表没有强制使用外键约束),准备好素材
 
SELECT TOP 1000 [appliancesName]
  ,[appliancesType]
  ,[code]
  ,[**brandId**]
  ,[standard]
  ,[appliancesStatus]
  ,[appliancesIsNew]
  ,[appliancesIsKey]
  ,[appliancesRemark]
  ,[appliancesId]
 FROM sfa_t_appliances
 
       (二)创建视图:
 
create view appliances_view(id,name,brandName)
as
select s.appliancesId,s.appliancesName,d.DicVal
from sfa_t_appliances s,sfa_t_TSysDictionary d
where s.brandId = d.RowID
 
 
       (三)查询:
 
       查询数据,可以将视图看做一张实实在在的数据表,能够执行各种查询操作。
 
       如下图所示,执行一个查询操作:
 
 
 
       (四)备注
 
       有些书上说:可以对任何查询结果进行排序,但是只有当视图包括Top子句时才能排序视图。这样看来书上确实是有问题的。动手实践出真知
 
       3.2 插入数据
 
       实验一
 
       往视图中插入一条数据:
 
 
 
       解释:
 
       往视图中插入数据时,能够往sfa_t_appliances 中插入数据。但是视图为什么读取不到呢?
 
create view appliances_view(id,name,brandName)
as
select s.appliancesId,s.appliancesName,d.DicVal
from sfa_t_appliances s,sfa_t_TSysDictionary d
where s.brandId = d.RowID
       注意视图的创建语法:是通过关联关系获取到的数据。注意观看视图的三个字段的来源。自然,在appliancesID为112233的记录中没有brandID,所以自然不能读取到数据。
 
       实验二
 
 
 
       说明: 往只含一个基本字段中插入数据是完全没有问题的。上图也插入成功了。
 
       实验三
 
       将多个基表的字段都插入试试:
 
insert into appliances_view(id,name,brandName) values(112234,'视图','冰箱')
 
 
       3.3 修改数据
 
 
 
       解释
 
       能够对数据进行修改,但是只能修改一张表中的数据。查看下图,修改基于两个表的字段:
 
 
 
       失败了,说明只能修改一张表中的字段。

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读