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,因此该过程将返回上节所述的两列式结果集。第一列中是属性名,第二列中是属性值。关键字位于 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 Value
FROM test('Calling test for the Status Code')
WITH (Attribute LONG VARCHAR, Value LONG VARCHAR) 
WHERE Attribute = 'Status';

此语句仅从结果集中选择状态信息。它可用于验证调用是否成功。