データベースに2つの大きなテーブルがあり、テストのためにテーブルをコピーしました(select * from online_table to backup_table with (NOLOCK) )postfix _backupを使用して同じDBにコピーしました。バックアップ テーブルで、nvarchar(50) 列の datetime 形式への変換を開始します。それらの後、主キーといくつかのインデックスを設定しました。インデックスのコピー、変換、およびセットアップを開始する前に、データベース バックアップを [簡易] に設定し、ステップの後で完全バックアップ モードに戻します。
問題は、データベースがオンライン テーブルで非常に遅いことです。2 つのテーブルを結合するストアド プロシージャは、多くの場合、完了するまでに 1 分以上かかります。通常は 1 秒以内に終了します。説明した手順の 1 時間後、ストアド プロシージャの速度に問題はなくなりました。それらは以前と同じように機能し、インデックスはすべて良好で、断片化は 1% 未満です。テーブルを nolock でコピーするため、オンライン テーブルには影響しません。誰かが問題を知っていて、おそらく解決策を持っていますか? または、この手順を実行する他の方法がありますか?