oracle删除视图的方法是什么?

如题所述

第1个回答  2022-11-16

首先,要明白视图的原理。

视图的数据都产生于表,视图本身是没有数据的,而表才是真正的数据来源。

还有多级的视图,就是从视图还可以继续创建视图。

所以,视图的数据来源是表或视图。但是最终的数据源一定是表。

什么样的视图数据是可以使用DELETE的?只有从单表引过来的视图是可以的,这样的视图操作实际就相当于操作表,但是DROP VIEW不会对数据有任何影响。其他形势的视图,都是不可能删除数据的。但是DROP VIEW同样可以。

视图只是根据关联关系从表中抓取数据。实际并没有像表一样有专门的存储这些数据。只是从表里引过来而已。只要你时刻记住,视图实际上并没有实际的存储数据,而是借用表的数据,这就够了。无论你创建或者删除视图,都不会影响数据本身。否则你想想,你创建了一个视图的时候,没想过为什么一下子就有了那么多数据了呢?也不是你插入的,因为就是从表引过来的而已。

删除视图的语句是DROP VIEW 视图名字

所以删除视图,不会对数据有任何影响。因为数据都在表中。想要恢复视图,重新创建,你的几千万条数据就又会出现了。视图的效果和SELECT查询一样,只是能把这个查询固定了,以便你直接拿来用。

相似回答