SQL Serverでは、(SQL Serverの事情により)レコードをロックできない条件があります。
下記に、DBリンクキットヘルプよりこの条件を抜粋しておきますので、問題のテーブルが、この条件に当てはまるかどうか、ご確認下さい。
<レコード排他機能に関する注意>
以下のようなテーブルでは、レコードをロックすることはできません(I-O PROTECTED、I-O SHAREDオープンで、WITH UNLOCKなしの READ命令は成功しますが、レコードはロックされません)。
・text型とtimestamp型の列のみからなるテーブル
・クラスタ化インデックスが付加されており、そのクラスタ化インデックスに
timestamp列が含まれているテーブル
・クラスタ化インデックスおよびtimestamp型以外のデータ型の一意な
単一インデックスが付加されていない場合で、付加されている一意な
インデックスのうち一番インデックスID が低いものにtimestamp列が
含まれているテーブル