Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie kann man verschiedene Schemas durchlaufen und auf jedem etwas SQL ausführen?

Ich biete den folgenden halbautomatischen Weg an, der Ihre Aufgabe nicht automatisiert, aber das Suchen und Ersetzen reduziert.

Wenn Sie SQL*Plus verwenden, können Sie eine Datei mit der folgenden Syntax ausführen:

@myscriptfile.sql

Wenn Sie dies einmal für jedes Schema tun möchten, können Sie den Code generieren, indem Sie das Wörterbuch abfragen:

select 'ALTER SESSION SET current_schema = ' || owner || ';
       @myscriptfile.sql'
  from dba_users
 where <your filter>;

Dann würden Sie einfach das Ergebnis dieser Abfrage in sqlplus kopieren/einfügen. Es ist wahrscheinlich möglich, das in eine Datei zu spoolen und auszuführen.