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

SQL Anywhere 12.0.1 » SQL Anywhere サーバー SQL の使用法 » トランザクションと独立性レベル

 

ロックの仕組み

ロックは、複数のトランザクションを同時に実行しているときにデータの整合性を保護する同時制御メカニズムです。SQL Anywhere では、2 つの接続によって同じデータが同時に変更されないようにするために、また変更処理の最中に他の接続によってデータが読み込まれないようにするために、自動的にロックが適用されます。ロックによって、更新中の情報が保護され、クエリ結果の一貫性が高められます。

データベースサーバーは自動的にこれらのロックを設定するので、明示的な指示は必要ありません。あるトランザクションによって獲得されたすべてのロックは、たとえば COMMIT 文または ROLLBACK 文によってそのトランザクションが完了するまで、データベースサーバーで保持されます。このルールには 1 つのみ例外があります。

ローにアクセスしているトランザクションは、ロックを保持しているといえます。ロックの種類により、他のトランザクションのそのローへのアクセスは限定されるか、まったくできなくなります。

 参照

ロックできるオブジェクト
ロック情報の取得方法
スキーマロック
ローロック
テーブルロック
位置ロック
ロックの競合
クエリ時のロック
挿入時のロック
更新時のロック
削除時のロック
ロック期間