#Oracle がすべてのテーブルを削除する方法は
#1.すべての外部キー制約を無効にする
pl/sql 開発者で次のステートメントを実行します。SELECT 'ALTER TABLE ' || table_name || ' disable CONSTRAINT ' || constraint_name || ';' FROM user_constraints where CONSTRAINT_TYPE = 'R';クエリ結果をコピーし、pl/sql 開発者で実行します。
PL/SQL 開発者をお持ちでない場合は、sqlplus で操作できます。方法は次のとおりです:
1. sqlplus を開き、該当するユーザーに接続します。
2. ページサイズをより大きく設定します (set pagesize 20000
など)。スプールを使用して、対応する結果をファイルにインポートします (
SQL> spool /home/oracle/constraint.sql SQL> SELECT 'ALTER TABLE ' || table_name || ' disable CONSTRAINT ' || constraint_name || ';' FROM user_constraints where CONSTRAINT_TYPE = 'R'; SQL> spool off4 など)。対応するステートメントは次のようになります。生成されたスクリプトですが、スクリプトファイルの先頭と末尾に冗長なステートメントがあります。テキストエディタで開き、無駄なステートメントを削除してください##5. 該当するユーザーで再度sqlplusにログインし、以下のコマンドを実行してください
SQL> @/home/oracle/constraint.sql
SELECT 'DELETE FROM '|| table_name || ';' FROM USER_TABLES
ORDER BY TABLE_NAME;
または
SELECT 'TRUNCATE TABLE '|| table_name || ';' FROM USER_TABLES ORDER BY TABLE_NAME;
## の場合は注意が必要です。
# 3. 「外部キーを開く」を無効にします。
SELECT 'ALTER TABLE ' || table_name || ' enable CONSTRAINT ' || constraint_name || ';' FROM user_constraints where CONSTRAINT_TYPE = 'R';推奨チュートリアル: 「Oracle Tutorial」
以上がOracleですべてのテーブルを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。