HOME»データベーススペシャリスト掲示板»デッドロックの原因に関して

データベーススペシャリスト掲示板

掲示板検索:

デッドロックの原因に関して[0116]

デッドロックさん(No.1)

H17 設問4
デッドロックの原因に
  複数のトランザクションが’在庫’テーブルの複数の行に対して互いに逆順に更新することがあるから
とありました。

逆順というのがいまいちイメージできていません
  トランザクションAが@⇒Aと処理を実行する
  トランザクションAがA⇒@と処理を実行する
ことがあるのでしょうか?
トランザクションの処理は上から番号順に実行されるのではないのですか?

よろしくお願いします。

2020.03.07 09:46
localdbさん(No.2)

トランザクションの処理は上から番号順に実行されます。

「複数のトランザクションが’在庫’テーブルの複数の行に対して互いに逆順に更新することがあるから」
これは、F内で在庫テーブルの行の更新順が逆ということです。
トランザクションA:商品番号の昇順で更新
トランザクションB:商品番号の降順で更新

受注入力画面の行番号順に処理を行うとこのようなことが発生してしまうので
ソートしましょうということです。

2020.03.07 15:04
デッドロックさん(No.3)

ありがとうございます!
それで次の問の答えが商品順にソートとなるんですね。

納得できました。
ありがとうございます。

2020.03.07 21:41

【返信投稿用フォーム】

お名前(10文字以内)

顔アイコン


本文(2,000文字以内)

記事削除用パスワード(20文字以内)

プレビュー

※宣伝や迷惑行為を防止するため当サイトとIPAサイト以外のURLを含む記事の投稿は禁止されています。

投稿記事削除用フォーム

投稿No. パスワード 
© 2016-2020 データベーススペシャリストドットコム All Rights Reserved.

Pagetop