Du kan inte uppdatera column_from_table2
i den här vyn är den inte uppdateringsbar.
För att kontrollera om någon kolumn är uppdateringsbar eller inte, kör den här frågan:
SELECT * FROM USER_UPDATABLE_COLUMNS
WHERE table_name = 'MY_DATAVIEW';
OWNER TABLE_NAME COLUMN_NAME UPDATABLE INSERTABLE DELETABLE
------------------------------ ------------------------------ ------------------------------ --------- ---------- ---------
TEST MY_DATAVIEW KEY1 YES YES YES
TEST MY_DATAVIEW KEY2 YES YES YES
TEST MY_DATAVIEW COLUMN_FROM_TABLE1 YES YES YES
TEST MY_DATAVIEW COLUMN_FROM_TABLE2 NO NO NO
Varför går det inte att uppdatera? Det är en stor fråga.
Det finns ett helt kapitel i dokumentation om detta ämne:
http://docs.oracle.com/cd/B28359_01/server.111/b28310/views001.htm#i1006234
hitta "Uppdatera vyer som involverar yttre kopplingar", det finns ett exempel på en vy med yttre koppling och detaljerad förklaring vilka kolumner i denna vy som kan och inte kan uppdateras och varför.