Oracleで全ての表のデータをクリアする方法は何ですか?

Oracleデータベース内のすべてのテーブルのデータをクリアするには、以下の2つの方法があります。

Option:
手段1:truncate文を使用する

  1. Oracleデータベースで管理者アカウントにログインします。
  2. 以下のSQL文を実行してください。
BEGIN
  FOR cur_rec IN (SELECT table_name FROM all_tables WHERE owner = '用户名') LOOP
    EXECUTE IMMEDIATE 'TRUNCATE TABLE ' || cur_rec.table_name;
  END LOOP;
END;
/

「ユーザー名」を、データベースの内容をクリアしたいユーザーの名前に変更してください。

Option: 2:deleteステートメントを使用する。

  1. Oracleデータベースに管理者アカウントでログインします。
  2. 以下のSQL文を実行してください。
BEGIN
  FOR cur_rec IN (SELECT table_name FROM all_tables WHERE owner = '用户名') LOOP
    EXECUTE IMMEDIATE 'DELETE FROM ' || cur_rec.table_name;
  END LOOP;
END;
/

“「ユーザー名」をデータベースユーザーの名前に置き換えることに注意してください。”

どの方法を使用しても、データベース内のテーブルにアクセスして変更するためには、適切な権限が必要です。さらに、これらの操作を実行する前に、データベースのバックアップを必ず取るようにしてください。意外な事態に備えて。

bannerAds