sql >> Database teknologi >  >> RDS >> Oracle

Opdatering af en deltagelsesvisning uden at få en fejlmeddelelse om ikke-nøglebevaret

Du kan ikke opdatere column_from_table2 i denne visning kan den ikke opdateres.
Kør denne forespørgsel for at kontrollere, om en kolonne kan opdateres eller ej:

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   

Hvorfor kan den ikke opdateres? Det er et stort spørgsmål.
Der er et helt kapitel i dokumentationen om dette emne:
http://docs.oracle.com/cd/B28359_01/server.111/b28310/views001.htm#i1006234
find "Opdatering af visninger, der involverer ydre sammenføjninger", der er et eksempel på en visning med ydre sammenføjning og detaljeret forklaring, hvilke kolonner i denne visning, der kan og ikke kan opdateres, og hvorfor.



  1. Sådan konfigureres WebLogic Server til eksisterende Eclipse

  2. Fejl ved import af SQL-dump til MySQL:Ukendt database / Kan ikke oprette database

  3. Google-lignende søgemaskine i PHP/mySQL

  4. Skal PDO-tokens matche bindingsværdien 1:1?