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

クラスター化インデックスを含むテーブルで DELETE コマンドが遅すぎる

    大規模な削除では大きなトランザクション ログが生成されるため、処理が遅くなる可能性があります。次のようにまとめて削除してみてください:

    WHILE 1 = 1
    BEGIN
        DELETE TOP (256) FROM FTPLog WHERE FTPLogId <= @MaxFTPLogId
        IF @@ROWCOUNT = 0
            BREAK
    END
    

    これにより、より小さなトランザクションが生成されます。また、他のプロセスのための呼吸スペースを作成することで、ロックの問題を軽減します。

    パーティション分割されたテーブル も調べてください。 .これらにより、パーティション全体を削除することで古いエントリをパージできる可能性があります。



    1. C#のTreeviewからチェックボックスチェック値を取得するにはどうすればよいですか?

    2. datetimeoffset休止状態マッピング

    3. MySQL区切り文字ステートメントエラー

    4. Java Logging API(java.util.logging)を使用したOracleJavaストアドプロシージャのロギング