Table of ContentsPreviousNext

Ispirer             Ispirer


Ispirer SQLWays データベース移行ソフトウェア

クライアントへ結果セットを返す

クエリにより返されるひと組のローは結果セットと呼ばれます。結果セットには、検索条件を満たすローの数によってゼロ、1、または複数のローが含まれます。

結果セットを返すことにより、クライアントアプリケーションはプロシージャが返したローを取得し処理することができます。

TABLE 73. プロシージャの結果セットをクライアントへ返す
データベース
構文
説明
Microsoft SQL Server
create procedure proc_name
as
begin
select_statement
end 
Microsoft SQL Serverのプロシージャ内での単独のSELECTステートメントはクライアントアプリケーションへ結果セットを返します
 
例えば、"SELECT * FROM Products" は Products テーブルの全てのproductのデフォルトの結果セットを生成します。SQL Server はこの結果セットをクライアントに送ります。
IBM DB2
create procedure proc_name ()
LANGUAGE SQL
[DYNAMIC RESULT SETS N
begin
declare cursor_name CURSOR WITH     
RETURN [TO CALLER | TO CLIENT]
FOR select_statement;
open cur1;
end 
WITH RETURN属性付きでプロシージャ本体ではクローズされないカーソルはクライアントに結果セットを返します
 
WITH RETURN はカーソルがストアドプロシージャからの結果セットとして使用されることを示します
 
DYNAMIC RESULT SETS N - はストアドプロシージャ用の結果セットの見積り上限数です
 
SQLプロシージャの中で、WITH RETURN句付きで宣言されたカーソルがそのSQLプロシージャの末尾でもオープンされたままである場合、カーソルはそのSQLプロシージャの結果セットです。他の全てのオープン中のカーソルはそのSQLプロシージャ終了時にクローズされます。
 
WITH RETURN TO CALLER は全てのカーソルのデフォルトです
TO CALLER - はカーソルが結果セットを呼出し元に返す事ができることを示します。例えば、もし呼出し元が他のストアドプロシージャである場合、結果セットはそのストアドプロシージャに返されます。もし、呼出し元がクライアントアプリケーションである場合、結果セットはそのクライアントアプリケーションに返されます。
TO CLIENT - はカーソルが結果セットをクライアントアプリケーションに返すことを示します。このカーソルは中間のネストしたプロシージャでは参照する事ができません。


Table of ContentsPreviousNext
Ispirer             Ispirer
Copyright © 1999-2015 Ispirer Systems Ltd. Ispirer and SQLWays are trademarks of Ispirer Systems Ltd. All other product names may be trademarks of the respective companies. All rights reserved.