Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - プログラミング » SQL Anywhere データ・アクセス API » SQL Anywhere Embedded SQL » サンプル Embedded SQL プログラム

 

静的カーソルのサンプル

これはカーソル使用法の例です。ここで使用されているカーソルはサンプル・データベースの Employees テーブルから情報を取り出します。カーソルは静的に宣言されています。つまり、情報を取り出す実際の SQL 文はソース・プログラムにハード・コードされています。この例はカーソルの機能を理解するには格好の出発点です。動的カーソルのサンプルでは、この最初のサンプルを使って、これを動的 SQL 文を使用するものに書き換えます。動的カーソルのサンプルを参照してください。

ソース・コードのある場所とサンプル・プログラムの構築方法については、サンプル Embedded SQL プログラムを参照してください。

open_cursor ルーチンは、特定の SQL クエリ用のカーソルを宣言し、同時にカーソルを開きます。

1 ページ分の情報の表示は print ルーチンが行います。このルーチンは、カーソルから 1 つのローをフェッチして表示する動作を pagesize 回繰り返します。フェッチ・ルーチンが警告条件 (「ローが見つかりません」など) を検査し、適切なメッセージを表示することに注意してください。また、このプログラムは、カーソルの位置を現在のデータ・ページの先頭に表示されているローの前に変更します。

move、top、bottom ルーチンは適切な形式の FETCH 文を使用して、カーソルを位置付けます。この形式の FETCH 文は実際のデータの取得はしないことに注意してください。単にカーソルを位置付けるだけです。また、汎用の相対位置付けルーチン move はパラメータの符号に応じて移動方向を変えるように実装されています。

ユーザがプログラムを終了すると、カーソルは閉じられ、データベース接続も解放されます。カーソルは ROLLBACK WORK 文によって閉じられ、接続は DISCONNECT によって解放されます。