asensitive カーソルには、メンバシップ、順序、値に対する明確に定義された感知性はありません。感知性の持つ柔軟性によって、asensitive カーソルのパフォーマンスは最適化されます。
asensitive カーソルは、読み取り専用のカーソル・タイプだけに使用されます。
asensitive カーソルは、ISO/ANSI 規格で定めた asensitive カーソルの定義と、感知性について特別な指定のない ODBC カーソルに対応しています。
インタフェース | カーソル・タイプ |
---|---|
ODBC、ADO/OLE DB | 感知性は未指定 |
Embedded SQL | DYNAMIC SCROLL |
SQL Anywhere がクエリを最適化してアプリケーションにローを返すときに使用する方法に対して、asensitive カーソルの要求では制約がほとんどありません。このため、asensitive カーソルを使うと最高のパフォーマンスを得られます。特に、オプティマイザは中間結果をワーク・テーブルとして実体化するというような措置をとる必要はありません。また、クライアントはローをプリフェッチできます。
SQL Anywhere では、基本のローに加えた変更の表示については保証されません。表示されるものと、されないものがあります。メンバシップと順序はフェッチのたびに変わります。特に、基本のローを更新しても、カーソルの結果には、更新されたカラムの一部しか反映されないことがあります。
asensitive カーソルでは、クエリの選択内容と順序に一致するローを返すことは保証されません。ローのメンバシップはカーソルが開いたときは固定ですが、その後加えられる基本の値への変更は結果に反映されます。
asensitive カーソルは常に、カーソルのメンバシップが確立された時点で顧客の WHERE 句と ORDER BY 句に一致したローを返します。カーソルが開かれた後でカラム値が変わると、WHERE 句や ORDER BY 句に一致しないローは返される場合があります。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |