www.1862.net > sql视图怎么删除记录

sql视图怎么删除记录

视图是动态查询你的表的结果的,不能清空.举个例子:create view emp_dept_view as select emp.*,dept.dname,dept.loc from emp inner join dept on emp.deptno=dept.deptno 那么视图查询出来的结果随着emp,dept 变化的 视图本身是不包含数据的(物化视图除外,它是一个查询的快照)

看看你视图的创建语句是不是一个连接查询建立的,还有这个视图是不是只读的如果是连接查询创建的视图的话,你这么操作的话删除的可能不止是一个表里的数据,数据库为了保证数据的完整性,不会允许你这么做.如果是只读的话,当然也就是只有读权限.不过看报错,你这应该是第一种情况,所以,你只能从这个构建这个视图的表里逐步删除数据,才能把你要删除视图的数据删除,这么说懂吗?

你好!视图不能清空,只能清空表.如果视图连的表你没办法动,你可以采用临时表.就是自己创建一张临时表给视图用.想清空时就删除临时表数据,想有数据时可以从原表导出数据到临时表.希望对你有所帮助,望采纳.

就像基于表进行插入,更新和删除数据一样,分别用insert, update, delete语句进行.只是对视图有些限制.具体的限制请参考联机丛书.

视图中的数据是不能删除的,因为视图其实并不真实存在,只是一个Sql语句,要删除视图的数据就要找到视图对应的表,将表的数据删除

从数据库项目中删除数据库视图对象方法如下: 1、如果未显示“架构视图”,请打开“视图”菜单,然后单击“架构视图”. 2、在“架构视图”中单击要删除的对象. 3、在“编辑”菜单上单击“删除”.也可以单击此对象,然后按 Delete 键. 4、将出现一个确认对话框. 5、单击确认对话框中的“确定”. 注:对象即从“解决方案资源管理器”和“架构视图”的数据库项目中删除.如果数据库项目受版本控制,则删除对象时,将签出项目文件.从“架构视图”中删除对象也会删除所有子对象.例如,如果删除某个表,则所有密钥、触发器、索引、约束和统计信息也会被删除.

视图不能清空,只能清空表.如果视图连的表你没办法动,你可以采用临时表.就是自己创建一张临时表给视图用.想清空时就删除临时表数据,想有数据时可以从原表导出数据到临时表.

给你几个方案思路供参考:一、删除记录表+触发器的方式1. 建立删除记录表,包含ID、删除的表名,要保留关键信息对应的列(比如删除时间、学号)2. 在course表上设置触发器,on delete事件出发,然后将删除的操作,对象行数据记录到删除记录表 二、优化表设计和删除逻辑 很多如ORACLE EBS的应用的HR模块中,程序是不直接执行删除记录的 而是在记录的主键中增加一个有效期(DATE_FROM和DATE_TO控制) 删除的程序实际在更新有效期的时间范围 以便查询历史数据

创建视图 CREATE [OR REPLACE] VIEW 视图名(列1,列2) AS SELECT (列1,列2) FROM ; [WITH [CASCADED|LOCAL] CHECK OPTION]修改视图 CREATE OR REPLACE VIEW 视图名 AS SELECT [ ] FROM [ ]; [WITH [CASCADED

以前我回答过类似问题,是批量删除表,跟你修改下,批量删除视图--第一步,读取所有视图 select identity(int,1,1) flag,[name] names into #tmp from sysobjects where xtype='v' --第二步循环删除 declare @tb varchar(1000) ,@a int,@b int,@sql

网站地图

All rights reserved Powered by www.1862.net

copyright ©right 2010-2021。
www.1862.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com