次のOracle SQLがあります。
Begin
-- tables
for c in (select table_name from user_tables) loop
execute immediate ('drop table '||c.table_name||' cascade constraints');
end loop;
-- sequences
for c in (select sequence_name from user_sequences) loop
execute immediate ('drop sequence '||c.sequence_name);
end loop;
End;
別の開発者から提供されたもので、どのように機能するのかわかりませんが、データベース内のすべてのテーブルが削除されます.
それは機能しますが、永遠にかかります!
すべてのテーブルを削除するのにそれほど時間がかかるとは思いません。どうしたんだ?そして、このスクリプトを改善できますか?
注:約 100 のテーブルがあります。