SQL Server 2008 の一括削除: 探索
一括削除の概念は、SQL Server 2008 から大量の行を削除しようとするときに発生します。テーブルを効率的に。 SQL Server の TRUNCATE コマンドは、テーブルからすべての行を迅速に削除する方法を提供しますが、WHERE 句を使用してデータを選択的に削除することはできません。
一括コピーは削除に適用できますか?
残念ながら、SQL Server 2008 には削除用の一括コピー (bcp) に直接相当するものはありません。ただし、別のアプローチを利用して一括削除を行うこともできます。
バッチ削除
バッチ削除では、削除操作を小さなバッチに分割します。これは、次の構文を使用して実現できます。
SELECT 'Starting' --sets @@ROWCOUNT WHILE @@ROWCOUNT <> 0 DELETE TOP (xxx) MyTable WHERE ...
「Starting」ステートメントは、各バッチで削除される行数を決定する @@ROWCOUNT 変数を設定します。 WHILE ループは、すべての行が削除されるまで継続します。
保持テーブルの使用
行の大部分を削除する必要がある場合は、保持テーブルを使用できます。このアプローチの概要を次の手順に示します。
結論
SQL Server 2008 では削除用の一括コピーに直接代わるものはありませんが、上で説明した手法は実行可能な代替手段となります。バッチ削除は少数の行を選択的に削除するのに適していますが、保持テーブルのアプローチは大規模な削除に有益です。
以上がSQL Server 2008 で一括削除を効率的に実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。