加入收藏 | 设为首页 | 会员中心 | 我要投稿 佛山站长网 (https://www.0757zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQLServer 2008对视图或函数的更新或插入失败 - MSSQL教程

发布时间:2013-12-09 11:49:56 所属栏目:MsSql教程 来源:站长网
导读:环境:SQLServer 2008 R2 问题:对视图或函数XXX的更新或插入失败,因其包含派生域或常量 域解决 创建视图命令: create view D_S_G(sno,avg_grade) asselect s
环境:SQLServer 2008 R2

问题:对视图或函数’XXX’的更新或插入失败,因其包含派生域或常量 域解决

创建视图命令:

create view D_S_G(sno,avg_grade)  
as
select sno,avg(grade)  
from SC  
group by sno;

原因:视图view不允许修改。

解决:重新创建一个表,结构内容都一样。

执行以下命令:

--d_s_t是表名,d_s_g是视图名  
select * into d_s_t from d_s_g where 1<>1  
      
insert into d_s_t select * from d_s_g

说明:表名(d_s_t)和以前的表名、视图名不一样,因 为都是SQLServer对象。

解释:因为所创建的视图对其属性值进行了计算的其他形式上的改变,而对 视图的更改最终表现为对表的更改而表中不存在视图的某一属性,或属性的性质不相同,则无法更改,这是一 种视图机制。

(编辑:佛山站长网)

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

    热点阅读