データベースサーバーがトランザクションを処理するとき、テーブルローを 1 つまたは複数ロックできます。ロックは他のトランザクションが同時にアクセスすることを防止し、データベースに格納されている情報の信頼性を維持します。また、更新中の情報を識別して、結果クエリの精度を高めます。
データベースサーバーは自動的にこれらのロックを設定するので、明示的な指示は必要ありません。データベースサーバーは、トランザクションが獲得したすべてのロックを、そのトランザクションが完了するまで保持します。ローにアクセスしているトランザクションは、ロックを保持しているといえます。ロックの種類により、他のトランザクションのそのローへのアクセスは限定されるか、まったくできなくなります。
頻繁に 1 つまたは複数のローに複数のユーザーが同時にアクセスすると、パフォーマンスは低下することがあります。ロックが問題になっていると考えられる場合は、sa_locks プロシージャーを使用して、データベースのロックに関する情報を入手できます。
ロックの問題が識別された場合は、関連する接続プロセス情報を AppInfo 接続プロパティを使って表示できます。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |