视图可以被UPDATE吗
今天在工作过程中发现一个问题,进过排查发现原来是一个视图被update操作,开始比较不能理解视图为何被修改,通过查询资料,并进行验证发现:当Oracle数据库中对于单一表查询创建视图,可以进行update;对于多表查询创建视图,不能直接update。
1、对于单表验证过程如下:
(1) 查询表T_XZQ:
(2) 创建视图V_XZQ:
(3) 执行UPDATE语句,可以执行成功:
(4) 提交事务,查询当前结果:
2、对于多表验证如下:
(1) 查询表T_XZQ,T_XZQ_1:
(2) 创建视图V_XZQ_1:
(3) 执行update语句,更新V_XZQ_1: