sql >> データベース >  >> RDS >> Oracle

Oracleでテーブルを切り捨ててエラーが発生する

    TRUNCATEステートメントをDELETEステートメントに交換する必要があります。速度が遅くログに記録されますが、制約が設定されている場合はそれを行う方法です。

    DELETE mytablename;
    

    それか、問題のテーブルを参照している外部キーを見つけて、一時的に無効にすることができます。

    select 'ALTER TABLE '||TABLE_NAME||' DISABLE CONSTRAINT '||CONSTRAINT_NAME||';'
    from user_constraints
    where R_CONSTRAINT_NAME='<pk-of-table>';
    

    pk-of-tableの場所 切り捨てられるテーブルの主キーの名前です

    上記のクエリの出力を実行します。これが完了したら、それらを再度有効にすることを忘れないでください。DISABLE CONSTRAINTを変更するだけです。 ENABLE CONSTRAINT



    1. MySQLはテーブルがすでに存在するかどうかをチェックします

    2. MySQLをCSVと比較し、違いを見つけます

    3. bind_param()は、ユーザーが入力した値またはすべてにのみ必要ですか?

    4. MySQLで特定の文字のASCIIコードを見つける方法