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 Web サービス

 

結果セットからの選択

SELECT 文を使用して、結果セットから値を取り出します。取り出した値はテーブルに保存したり、変数を設定したりするために使用します。

CREATE PROCEDURE test( INOUT parm CHAR(128) ) 
URL 'HTTP://localhost/test'
TYPE 'HTTP';

このプロシージャは、HTTP タイプであるため、前の項で説明した 2 つのカラムから成る結果セットを返します。最初のカラムは属性名、2 番目のカラムは属性値です。キーワードは、HTTP 応答ヘッダ・フィールドにあるものと同様です。Body 属性には、メッセージの本文が含まれ、これは通常 HTML ドキュメントです。

以下のように結果セットをテーブルに挿入する方法があります。

CREATE TABLE StoredResults(
     Attribute LONG VARCHAR,
     Value     LONG VARCHAR
);

結果セットは、次のようにこのテーブルに挿入します。

INSERT INTO StoredResults SELECT *
FROM test('Storing into a table') 
WITH (Attribute LONG VARCHAR, Value LONG VARCHAR);

SELECT 文の通常の構文に従い、句を追加できます。たとえば、結果セットの特定のローのみが必要な場合は、WHERE 句を追加して SELECT の結果を 1 つのローに限定することができます。

SELECT Value
FROM test('Calling test for the Status Code')
WITH (Attribute LONG VARCHAR, Value LONG VARCHAR) 
WHERE Attribute = 'Status';

この文は、結果セットからステータス情報のみを選択します。この文は呼び出しが成功したことを確認するために使用できます。