カーソルの使用 (ODBC)

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

ODBC では、次のことを可能にするカーソル モデルがサポートされます。

  • 複数種類のカーソル

  • カーソル内でのスクロールと位置指定

  • 複数のコンカレンシー オプション。

  • 配置された更新。

ODBC アプリケーションでは、カーソルを宣言して開いたり、カーソル関連の Transact-SQL ステートメントを使用したりすることはほとんどありません。 ODBC では、SQL ステートメントから返されたすべての結果セットに対して自動的にカーソルを開きます。 カーソルの特性は、SQL ステートメントが実行される前に SQLSetStmtAttr で設定されたステートメント属性によって制御されます。 結果セットの処理に使用する ODBC API 関数では、フェッチ、スクロール、位置指定更新など、すべてのカーソル機能がサポートされます。

これは、Transact-SQL スクリプトと ODBC アプリケーションがカーソルを操作する方法の比較です。

アクション Transact-SQL ODBC
カーソル動作を定義する DECLARE CURSOR パラメーターによる指定 SQLSetStmtAttr を使用してカーソル属性を設定する
カーソルを開く DECLARE CURSOR OPEN cursor_name SQLExecDirect または SQLExecute
行をフェッチする FETCH SQLFetch または SQLFetchScroll
位置指定更新を行う UPDATE または DELETE の WHERE CURRENT OF 句 SQLSetPos
カーソルを閉じる CLOSE cursor_name DEALLOCATE SQLCloseCursor

SQL Serverに実装されているサーバー カーソルは、ODBC カーソル モデルの機能をサポートします。 SQL Server Native Client ドライバーは、サーバー カーソルを使用して ODBC API のカーソル機能をサポートします。

このセクションの内容

参照

SQL Server Native Client (ODBC)
CLOSE (Transact-SQL)
カーソル
DEALLOCATE (Transact-SQL)
DECLARE CURSOR (Transact-SQL)
FETCH (Transact-SQL)
OPEN (Transact-SQL)