Date: Tue, 27 Jun 2006 07:29:53 +0900
From: who@example.ne.jp (堀江正浩)
--***kiritorisen***
Content-Type: text/plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
いつもお世話になっております。堀江といいます。
排他ロックについて、教えていただければと思います。
(SQL SERVER2000を使ってます。)
たとえば
CREATE TABLE TEST(
A INTEGER PRIMARYKEY,
B INTEGER)
GO
INSERT INTO TEST(A,B) VALUES (1,10)
GO
としておきます。
�.�エリアナライザーで接続し下記処理を実行します。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
BEGIN TRAN
UPDATE TEST set B = 2 where A=1
わざとコミットしない
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
�▲�エリアナライザーで接続し下記処理を実行します。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
BEGIN TRAN
SET TRANSACTION ISOLATION LEVEL READ COMMITTED
select * from TEST where A=1
COMMIT TRAN
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
�△任蓮▲蹈奪�タイムアウトします。
それは、�,杷啾哨蹈奪�を掛けているからです。
では、�,鬮 �の様にかえて、�△鮗孫圓垢襪函�
� �クエリアナライザーで接続し下記処理を実行します。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
BEGIN TRAN
SELECT * FROM TEST WITH (XLOCK) where A=1
わざとコミットしない
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
�△鮗孫圓垢襪函�読み込みが出来てしまいます。
� �でも、排他ロックを掛けていますし、トランザクションもわざとコミットし
てません。
私の希望では、SELECT時から排他ロックを掛け、他の接続から見れないようにし
たいのですが、
何がいけないのでしょうか?
ご教授いただけますでしょうか?
よろしくお願いいたします。
--***kiritorisen***
Content-Type: application/x-postpet; name="temp.ppd"; x-mac-type="70444154"; x-mac-creator="6D4F6D4F"
Content-Transfer-Encoding: base64
Content-Disposition: inline
Content-Description: Following data is used by PostPet(tm) mailer for its PetData.
AAAAAQAAAC0AAAMtAAAAAQfWAAYAGwAHAB8ACgACBIOCg4IIg32BW4N7g0VCRUFSAAROtAAAAABA
UGuuFHuvK0BY/Rc1jrYiP8qKG5RJP34AAAAAAAAAAEBZAAAAAAAAQFkAAAAAAABAKaPXCj01xgfP
AAIAFQAKACcADwAAFFFaQjEwMzczQG5pZnR5Lm5lLmpwAAAAAARARoAAAAAAAEBIgAAAAAAAQFkA
AAAAAABANvFEzL6tC0BZAAAAAAAAQFYITQE6iMkAAAAAAAAAAEBZAAAAAAAAQEkAAAAAAABAWQAA
AAAAAEBJ3Cj1wo9XQEmAAAAAAABASoAAAAAAAAAAAAAAAAAAQFkAAAAAAABAWQAAAAAAAEBIgAAA
AAAAQFkAAAAAAABAUHPAGjeOjEBZAAAAAAAAAAAAAEDExQAAAAAAQG/gAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAGIATQAAAAAAAAAAAAAAZAAAAAAAAAAAAAAAAAAAAT4AAAAA
--***kiritorisen***
Content-Type: text/plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
--***kiritorisen***--
| [MSDE/SQLServerに関して、今、どんなことにお困りですか?] |
| よろしければお困りの内容を、電子メールで教えて下さい。 |
|
質問を電子メールで作成する
|
[ウィンドを閉じる][MSDE/SQLServer FAQ ][MSDE / MSDE2000 技術サポート情報一覧]
|