2012-02-10 10 views
1

私はjsonの文字列をキャッシュするために使用するテーブルを持っており、しばらくそれをクリアする必要があります。テーブルの内容を消去する最も速い方法は何ですか?テーブルの内容を削除する最速の方法

私は現時点でlinq-to-sqlを使用していますが、私のL2Sクエリーよりも速くジョブを実行するone-linerタイプのコマンドがないのだろうかと思います。

ありがとうございます。

+0

この投稿を参照してください:http://stackoverflow.com/questions/9103037/truncate-or-drop-and-create-table –

答えて

2

SQL文

truncate table [name of table] 
1

最速の方法は間違いなく使用してだろう。すべての個別削除をロギング迂回し、すべての行を削除します

TRUNCATE TABLE <テーブル名>

2
context.ExecuteCommand("TRUNCATE TABLE Entity"); 
1

外部キー制約がない場合は、DROP TABLEを使用してから再作成してください。私はTRUNCATEよりも早くその作業を見てきました。あなたはそれの作成もスクリプト化するだけです。

+0

削除と作成がなぜ切り詰めより優れているのかを説明してください。私が見ることができる限り、ドロップのロギングの面では[いくらか高いオーバーヘッドがあります](http://dba.stackexchange.com/questions/4163/why-use-both-truncate-and-drop/7685#7685)どちらも同じ作業をしますが、 'drop'はシステムテーブルから余分な削除を行い、テーブルとカラムに関するすべてのメタデータを削除します。 –

+0

私が言ったように、私はいくつかのケースでドロップ作業が速くなるのを見ました。私はそれが完全に異なっていると言っているわけではありません。 –

+0

具体的なケースでは、それはより速く動作しますか?それは若干多くの仕事をしているようです。 –

関連する問題