SQLServer2008データベースのテーブルに配置されているdatastageからのデータがありますstg_table_outside_data
。私たちの側の情報源は、毎朝そのテーブルにデータを入れています。数日分のデータを保持している場所に stg_table_outside_data
データを移動したい。table_outside_data
stg_table_outside_Data
からデータを挿入してからtable_outside_data
切り捨てるストアドプロシージャを作成しましたstg_table_outside_Data
。外部のdatastageプロセスは制御できないため、これはすべてSQL Server 2008内で行う必要があります。当初は単純なafterinsertステートメントを使用することを計画していましたが、datastageは100,000行ごとにコミットを実行しています。トリガーは最初のコミットの後に実行され、データステージプロセスでデッドロックエラーが発生します。
アフターインサートを設定して30分待機し、その時間枠内に新しいコミットがないことを確認する方法はありますか?私の問題に対するより良い解決策はありますか?目標は、データをステージングテーブルから作業テーブルに複製せずに取得し、翌朝のロードのためにステージングテーブルを切り捨てることです。
お手数をおかけしますが、よろしくお願いいたします。