2016-08-03 11 views

Antwort

2

können Sie all_tab_columns abfragen, bauen Sie Ihre update und dann execute immediate dass update.

begin 
    for rc in (select 'update '||table_name || ' set '||column_name||' = 2016 where '||column_name||' = 2014' as stmt from all_tab_columns where column_name in ('DEP_YEAR', 'MAIN_YEAR')) 
    loop 
     execute immediate (rc.stmt); 
    end loop; 
    commit; 
end; 
0

Für jede Spalte erforderlich, können Sie alle Tabellen es enthält finden:

SELECT table_name FROM user_tab_columns WHERE column_name = :columnName; 

mit jedem Tabellennamen, die Sie gerade gefunden, Update-Abfrage ausführen:

Execute immediate ('Update ' || table_name || ' set ' || column_name || ' = 2016 where ' || column_name || ' = 2014 ') 
Verwandte Themen