カーソルの実装方法
ODBC アプリケーションでは SQL ステートメントを実行する前に、1 つ以上のステートメント属性を設定することにより、カーソルの動作を制御します。ODBC には、カーソルの特性を指定する方法として、次の 2 つが用意されています。
カーソルの種類
カーソルの種類は、SQLSetStmtAttr の SQL_ATTR_CURSOR_TYPE 属性を使用して設定します。ODBC カーソルの種類には、順方向専用、静的、キーセット ドリブン、混合、および動的があります。カーソルの種類を設定することは、カーソルを指定するための ODBC 独自の方法でした。
カーソル動作
カーソル動作は、SQLSetStmtAttr の SQL_ATTR_CURSOR_SCROLLABLE 属性と SQL_ATTR_CURSOR_SENSITIVITY 属性を使用して設定します。これらの属性は、ISO 標準で DECLARE CURSOR ステートメント用に定義されている SCROLL キーワードと SENSITIVE キーワードをモデルにしたものです。これら 2 つの ISO オプションは、ODBC Version 3.0 で導入されました。
ODBC カーソルの特性は、これら 2 つの方法のいずれかを使用して指定する必要がありますが、ODBC カーソルの種類を使用することをお勧めします。
ODBC アプリケーションではカーソルの種類を設定すること以外に、1 回のフェッチで返される行数、同時実行オプション、トランザクション分離レベルなど、他のオプションも設定します。これらのオプションは、ODBC 形式のカーソル (順方向専用、静的、キーセット ドリブン、混合、および動的) または ISO 形式のカーソル (スクロール機能と感度) に対して設定できます。
SQL Server Native Client ODBC ドライバでは、各種のカーソルを物理的に実装するためのさまざまな方法をサポートしています。このドライバでは、いくつかの種類のカーソルは SQL Server の既定の結果セットを使用して実装されます。また ODBC カーソル ライブラリを使用してサーバー カーソルとして実装される場合もあります。