2

SQL Server 2005/2008 で「バルク ロード時のテーブル ロック」の sp_tableoption を設定することの長所と短所を知りたいですか? 私のシナリオは、データベースで動作する 3 つのスレッド、1 つのクエリ スレッド、1 つの一括挿入スレッド、1 つの削除スレッドです。

sp_tableoption の MSDN 関連リンクは次のとおりです。

http://msdn.microsoft.com/en-us/library/ms173530.aspx

前もって感謝します、ジョージ

4

1 に答える 1

1

代わりに BULK INSERT でそれを行うだけです

テーブルをロックする一括挿入

BULK INSERT Northwind.dbo.[ORDER Details]
   FROM 'f:\orders\lineitem.tbl'
   WITH
     (
        FIELDTERMINATOR = '|',
        ROWTERMINATOR = ':\n',
        FIRE_TRIGGERS,
        TABLOCK  --this is it
      )

このステートメントはテーブルをロックしません

BULK INSERT Northwind.dbo.[ORDER Details]
       FROM 'f:\orders\lineitem.tbl'
       WITH
         (
            FIELDTERMINATOR = '|',
            ROWTERMINATOR = ':\n',
            FIRE_TRIGGERS
          )

-h (ヒント用) スイッチと "TABLOCK" を使用したタブロック付き BCP

bcp pubs..authors2 in authors.txt -c -t, -Sservername -Usa -Ppass -h "TABLOCK"

SSISまたはDTS内から、そこにあるテーブルロックに対して一括挿入を行うことができます

たとえば、データ変換タスクの下のDTSでオプションタブを見て、高速ロードとテーブルロックの使用を確認してくださいSSISには似たようなものがあります

于 2009-06-16T16:27:53.287 に答える