Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 » SQL Anywhere サーバ SQL の使用法 » トランザクションと独立性レベル » 独立性レベルのチュートリアル

 

チュートリアル:幻ローの知識

このチュートリアルでは、複数のトランザクションを同時に実行するときに発生する可能性のある矛盾である、幻ローを再現してみます。このシナリオでは、小規模商社の 2 人の従業員が会社のデータベースに同時にアクセスします。1 人は会社の Sales Manager で、もう 1 人は Accountant です。

Sales Manager は、新しく Foreign Sales と Major Account Sales の部署を作りたいと考えています。Accountant は、会社に存在するすべての部署を確認したいと考えています。

この例では、独立性レベル 0 ではなく 2 を使って、両方の接続を開始します。独立性レベル 0 は SQL Anywhere サンプルデータベースのデフォルト値です。独立性レベルを 2 に設定することで、ダーティリードと繰り返し不可能読み出しの可能性を減らします。

注意

このチュートリアルを正常に機能させるには、Interactive SQL の [データベースロックの自動解放] オプションをオフにする必要があります。このオプションの設定を確認するには、[ツール] » [オプション] をクリックし、左ウィンドウ枠の [SQL Anywhere] をクリックします。

 権限
 参照

レッスン 1:幻ローの作成
レッスン 2:スナップショットアイソレーションを使用して幻ローを防ぐ