0

SQLサーバーでは、アーカイブシステムを作成する必要があります。毎月末に、先月に投稿されたすべての行を月名で名前が付けられたテーブルに移動したいだけでなく、そのターゲットテーブルから既存のすべてのデータを最初に削除します(この古いデータは 1 年前から投稿されているので、もう必要ありません)。

私の質問:

1-これを行うためのより良い方法は何ですか。テーブル自体を削除してからselect-into文で新しいテーブルを作成するか、delete文を使用してすべての行を削除してから元のテーブルから新しい行を挿入します。(膨大なデータを使用すると、これが違いを生む可能性があると思います)

2-その操作を自動的に行う方法、時間に基づくトリガーはありますか?、またはasp.netまたはサーバーの何かがこれを実行できますか?.

手伝ってくれてありがとう。

4

2 に答える 2

3
  1. TRUNCATE TABLE ステートメントを使用します。これにより、テーブルからすべてが削除されますが、構造は保持されます

  2. SQL エージェントを使用して SQL Server でジョブを設定し、ジョブを定期的に実行できます。

于 2013-01-29T12:29:10.767 に答える
0

また、月末に実行され、ジョブを実行するプロシージャを実行するcron/スケジューラをWindowsで作成することもできます。

于 2013-01-29T12:40:27.343 に答える