これはカーソル使用法の例です。ここで使用されているカーソルはサンプル・データベースの Employees テーブルから情報を取り出します。カーソルは静的に宣言されています。つまり、情報を取り出す実際の SQL 文はソース・プログラムにハード・コードされています。この例はカーソルの機能を理解するには格好の出発点です。動的カーソルのサンプルでは、この最初のサンプルを使って、これを動的 SQL 文を使用するものに書き換えます。動的カーソルのサンプルを参照してください。
ソース・コードのある場所とサンプル・プログラムの構築方法については、サンプル Embedded SQL プログラムを参照してください。
open_cursor ルーチンは、特定の SQL クエリ用のカーソルを宣言し、同時にカーソルを開きます。
1 ページ分の情報の表示は print ルーチンが行います。このルーチンは、カーソルから 1 つのローをフェッチして表示する動作を pagesize 回繰り返します。フェッチ・ルーチンが警告条件 (「ローが見つかりません
」など) を検査し、適切なメッセージを表示することに注意してください。また、このプログラムは、カーソルの位置を現在のデータ・ページの先頭に表示されているローの前に変更します。
move、top、bottom ルーチンは適切な形式の FETCH 文を使用して、カーソルを位置付けます。この形式の FETCH 文は実際のデータの取得はしないことに注意してください。単にカーソルを位置付けるだけです。また、汎用の相対位置付けルーチン move はパラメータの符号に応じて移動方向を変えるように実装されています。
ユーザがプログラムを終了すると、カーソルは閉じられ、データベース接続も解放されます。カーソルは ROLLBACK WORK 文によって閉じられ、接続は DISCONNECT によって解放されます。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |