データベース・サーバがトランザクションを処理するとき、テーブルのローを 1 つまたは複数ロックできます。ロックは他のトランザクションが同時にアクセスすることを防止し、データベースに格納されている情報の信頼性を維持します。また、更新中の情報を識別して、結果クエリの精度を高めます。
データベース・サーバは自動的にこれらのロックを設定するので、明示的な指示は必要ありません。あるトランザクションによって獲得されたすべてのロックは、たとえば COMMIT 文または ROLLBACK 文によってそのトランザクションが完了するまでデータベース・サーバで保持されます。このルールには 1 つだけ例外がありますが、読み込みロックの早期解放の項で説明します。
ローにアクセスしているトランザクションは、ロックを保持しているといえます。ロックの種類により、他のトランザクションのそのローへのアクセスは限定されるか、まったくできなくなります。
ロックできるオブジェクト
ロック情報の取得
スキーマ・ロック
ロー・ロック
テーブル・ロック
位置ロック
ロックの競合
クエリ時のロック
挿入時のロック
更新時のロック
削除時のロック
読み込みロックの早期解放
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |