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 的用法 » 存储过程和触发器 » 使用过程、触发器和批处理 » 过程简介

 

在参数中返回过程结果

过程通过以下方式之一将结果返回到调用环境:

  • 单独的值作为 OUT 或 INOUT 参数返回。

  • 结果集可被返回。

  • 过程可以使用 RETURN 语句返回单个结果。

♦  创建并运行此过程并显示其输出 (SQL)
  1. 使用 Interactive SQL,作为 DBA 连接到 SQL Anywhere 示例数据库。

  2. 在 [SQL 语句] 窗格中,键入以下内容以创建过程 (AverageSalary),该过程用于将雇员的平均薪水作为 OUT 参数返回:

    CREATE PROCEDURE AverageSalary( OUT avgsal NUMERIC(20,3) )
    BEGIN
       SELECT AVG( Salary )
       INTO avgsal
       FROM Employees;
    END;
  3. 创建用于保存过程输出值的变量。在此例中,输出变量为数值型,具有三位小数,因此按如下所示创建变量:

    CREATE VARIABLE Average NUMERIC(20,3);
  4. 使用所创建的用来保存结果的变量调用过程:

    CALL AverageSalary( Average );

    如果该过程已正确创建并运行,则 Interactive SQL [消息] 选项卡不会显示任何错误。

  5. 要检查该变量的值,请执行以下语句:

    SELECT Average;

    查看输出变量 Average 的值。[结果] 窗格的 [结果] 选项卡会显示此变量的值 49988.623,这是雇员的平均薪水。

另请参见