PL/SQL 全テーブル データ削除の効率的な方法
PL/SQLでは、以下のステートメントを使用してすべてのテーブルデータを削除することができます:
BEGIN
FOR cur_rec IN (SELECT table_name FROM user_tables) LOOP
EXECUTE IMMEDIATE 'DELETE FROM ' || cur_rec.table_name;
END LOOP;
END;
/
このコードは、ユーザーが所有するすべてのテーブルを巡回し、各テーブルにDELETE文を実行して、テーブル内のすべてのデータを削除します。このコードを実行する前に慎重に注意してください。なぜなら、それは永久にすべてのテーブルのデータを削除するからです。