Nemůžete aktualizovat column_from_table2
v tomto zobrazení není aktualizovatelný.
Chcete-li zkontrolovat, zda je některý sloupec aktualizovatelný nebo ne, spusťte tento dotaz:
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
Proč to není aktualizovatelné? Je to velká otázka.
V dokumentaci k tomuto tématu je celá kapitola:
http://docs.oracle.com/cd/B28359_01/server.111/b28310/views001.htm#i1006234
najděte "Aktualizace pohledů, které zahrnují vnější spojení", je tam příklad pohledu s vnějším spojením a podrobné vysvětlení, které sloupce v tomto zobrazení lze a nelze aktualizovat a proč.