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 を使用したアプリケーション開発 » カーソルの使用法

 

カーソルを使用する利点

サーバ側のカーソルはデータベースアプリケーションでは必要ありませんが、いくつかの利点があります。次の理由により、サーバ側のカーソルはクライアント側のカーソルより推奨されます。

  • 応答時間   サーバ側のカーソルでは、最初のローがクライアントによってフェッチされる前に、結果セット全体をアセンブルする必要がありません。クライアント側のカーソルでは、最初のローがクライアントによってフェッチされる前に、結果セット全体を取得して転送する必要があります。

  • クライアント側メモリ   結果セットのサイズが大きい場合、結果セット全体をクライアント側で取得すると、クライアントに必要なメモリ容量が増えることがあります。

  • 同時実行性の制御   アプリケーションでデータを更新する場合にサーバ側のカーソルを使用しない場合、変更を適用するために UPDATE、INSERT、DELETE などの別の SQL 文をデータベースサーバに送信します。この方法では、結果セットがクライアントに送信されたためにデータベースの対応するローが変わった場合には、同時実行性の問題が生じる可能性があります。結果として、他のクライアントによる更新が失われる可能性があります。

    サーバ側のカーソルは基本となるデータへのポインタとして機能します。したがって、適切な独立性レベルを設定することによって、クライアントが加えた変更に適切な同時性制約を課すことができます。