ORA-01733: virtual column not allowed here, ora-01733allowed
Base table: hr. tt scott. tt
View 1: Based on hr. tt union all scott. tt --- scott. ttt
View 2: Create system. tt Based on View 1-scott. ttt
Problem reproduction:
SQL> create table hr. tt (a number );
Table created.
SQL> create table lixora. tt (a number );
Table created.
SQL> create view scott. tt as select * from hr. tt union all select * from lixora. tt;
View created.
SQL> create view system. tt as select * from scott. tt;
View created.
SQL> select * from system. tt
A
----------
1
Update view 2:
SQL> update system. tt set a = 2;
Update system. tt set a = 2
*
ERROR at line 1:
ORA-01733: virtual column not allowed here
Update view 1:
SQL> update scott. tt set A = 2;
Update scott. tt set A = 2
*
ERROR at line 1:
ORA-01732: data manipulation operation not legal on this view
SQL>! Oerr ora 1732.
ORA-01733: virtual column not allowed here Cause:An attempt was made to use an INSERT, UPDATE, or DELETE statement on an expression in a view. Action: INSERT, UPDATE, or DELETE data in the base tables, instead of the view. |
Summary:
Unable to perform dml operations on views containing expressions