ORACLE中使用动态游标的例子

来源:互联网 发布:轩辕剑1 知乎 编辑:程序博客网 时间:2024/05/01 12:06
create or replace function get_ope_popedom(sta_id varchar2) return varchar2
  /*
   * NAME:
   *   get_ope_popedom
   *
   * PARAMETER:
   *   sta_id   - 车站编号,多个站时以逗号分隔
   *
   * RETURN:
   *   --对应车站编号的车站名称,多个站时以逗号分隔
   *
   * AUTHOR:
   *   舵手
   *
   * DESCRIPTION:
   *   --根据传入的车站编号返回相应的车站名称
   *
   */
as
Result varchar2(1000);
name_temp varchar2(40);
type cursor_t is ref cursor;
emp_cur cursor_t ;
begin
  OPEN emp_cur FOR 'SELECT sta_name FROM station_code where sta_code =:1'
  using sta_id;
  LOOP
      FETCH emp_cur INTO name_temp;
      If (emp_cur%NOTFOUND) Then
         EXIT;
      End if;
      Result := Result || name_temp || ',';
  end loop;
  close emp_cur;
  Result := substr(Result,1,(length(Result)-1));
  return(Result);
end get_ope_popedom;
/  
原创粉丝点击