create or replace function ISFLOWSUIQIAN(offerId in integer) return varchar2 is
  Result varchar2(1);
   cursor findSuiqian is
    select '1'
      from ES_IT_FLOWINSTANCE
       WHERE FLOW_ID = 12680
       AND FLOW_VARIABLE = offerId;
begin
   Result := 0;
  open findSuiqian;
  FETCH findSuiqian
    into Result;
  close findSuiqian;
  return(Result);
end ISFLOWSUIQIAN;这里面 begin 开始就不知道哥哥名称的意思了  

解决方案 »

  1.   


    Result := 0; -- 初始化返回值为 0-- 打开游标
    open findSuiqian; 
    -- 提取 select '1' from ES_IT_FLOWINSTANCE WHERE FLOW_ID = 12680 AND FLOW_VARIABLE = offerId; 查询结果。也就是检查 ES_IT_FLOWINSTANCE 表中是否有满足条件的记录。
    FETCH findSuiqian into Result; 
    -- 关闭游标
    close findSuiqian;-- 返回结果
    -- 0 表示 ES_IT_FLOWINSTANCE 表中没有满足条件的记录;1 表示有
    return(Result);
      

  2.   

    begin
      Result := 0;  ---赋值初始值
      open findSuiqian;--显示打开游标
      FETCH findSuiqian 
      into Result;---游标遍历取值赋给Result
      close findSuiqian;-- 关闭游标
      return(Result); --返回函数的结果
    end ISFLOWSUIQIAN;--结尾标志