oracle删除视图会对原有数据产生影响吗?

如题所述

第1个回答  2022-11-16
首先,要明白视图的原理。\r\n视图的数据都产生于表,视图本身是没有数据的,而表才是真正的数据来源。\r\n还有多级的视图,就是从视图还可以继续创建视图。\r\n所以,视图的数据来源是表或视图。但是最终的数据源一定是表。\r\n什么样的视图数据是可以使用DELETE的?只有从单表引过来的视图是可以的,这样的视图操作实际就相当于操作表,但是DROP VIEW不会对数据有任何影响。其他形势的视图,都是不可能删除数据的。但是DROP VIEW同样可以。\r\n视图只是根据关联关系从表中抓取数据。实际并没有像表一样有专门的存储这些数据。只是从表里引过来而已。只要你时刻记住,视图实际上并没有实际的存储数据,而是借用表的数据,这就够了。无论你创建或者删除视图,都不会影响数据本身。否则你想想,你创建了一个视图的时候,没想过为什么一下子就有了那么多数据了呢?也不是你插入的,因为就是从表引过来的而已。\r\n删除视图的语句是DROP VIEW 视图名字\r\n所以删除视图,不会对数据有任何影响。因为数据都在表中。想要恢复视图,重新创建,你的几千万条数据就又会出现了。视图的效果和SELECT查询一样,只是能把这个查询固定了,以便你直接拿来用。
相似回答