0
データベースがダウンしている場合、メッセージがキューに入るシナリオをテストする必要があります。しかし、私はデータベースをダウンすることはできません。データベーステーブルのロックを取得する方法は?
上記のシナリオがテストされるように、どのようにテーブルをロックできるか教えてください。
データベースがダウンしている場合、メッセージがキューに入るシナリオをテストする必要があります。しかし、私はデータベースをダウンすることはできません。データベーステーブルのロックを取得する方法は?
上記のシナリオがテストされるように、どのようにテーブルをロックできるか教えてください。
あなたが悲観的に編集を防止する、テーブル全体をロックすることができ(挿入/更新/削除など)を用いて、以下の:
lock table MY_TABLE in exclusive mode nowait;
テーブルロックがトランザクションが終了したときに除去され、それが発行することにより、ありますコミットまたはロールバック
'MyTableから更新するnowait'を選択しますか? –
@ドミトリーBychenkoとどのようにそれが解放されるでしょう。 –
'Commit'; 'select ... for update nowait'は、DML操作(' update'、 'delete')を実行するためにテーブルの一部に排他ロックをかけます。終了すると( 'commit' /' rollback')ロックが解除されます。 –