在Oracle过程中声明变量

时间:2018-03-27 20:35:31

标签: oracle variables procedures

mystrtID的声明存在一些问题。我正在尝试实现分页,需要从起始ID

中选择一个范围
    create or replace procedure GET_WORKFLOW_Range(p_Dataset OUT 
                                                   Sys_Refcursor,
                                                   strtID IN integer,
                                                   quantity IN integer)

    as

    BEGIN
      mystrtID:= strtID;

      IF mystrtID = 0 Then
        mystrtID := 2147483647;
      end IF;

      Open p_Dataset For
      Select WKF_ID,
        WKF_WORKFLOW_ID,
        WKF_WORKFLOW_NAME,
        WKF_WORKFLOW_VERSION,
        WKF_WORKFLOW_SCHEMA
      FROM CTS.WKF_WORKFLOW_MASTER
      WHERE WKF_WORKFLOW_ACTIVE = '1' AND 
            WKF_ID < mystrtID AND 
            ROWNUM <= quantity
      ORDER BY WKF_ID DESC;
    END GET_WORKFLOW_Range;

1 个答案:

答案 0 :(得分:0)

mystrtID之后的integer之前,只需使用numberBEGIN之类的正确类型定义as

  

mystrtID 整数;

相关问题