我在返回指向查询的指针时遇到了一些麻烦。
这是我当前的代码:
create or replace procedure getRoute(route IN varchar, routeday IN varchar)
return sys_refcursor is
v_rc sys_refcursor;
begin
select DISTINCT BBT_JOURNEYSTOPS.SERVICE "Service", BBT_JOURNEYSTOPS.STOP_REFERENCE "StopNo",
STOP_NAME "Near", BBT_STOPS.ROAD_NAME "On", BBT_JOURNEYSTOPS.JOURNEYTIME "Duration"
from BBT_JOURNEYSTOPS
inner join BBT_WEEKLYSCHEDULE
on BBT_WEEKLYSCHEDULE.SERVICE = BBT_JOURNEYSTOPS.SERVICE
inner join BBT_STOPS
on BBT_JOURNEYSTOPS.STOP_REFERENCE = BBT_STOPS.STOPREF
where (UPPER(BBT_JOURNEYSTOPS.SERVICE) LIKE UPPER('%'|| :route || '%')) AND
(TO_NUMBER(SUBSTR(BBT_WEEKLYSCHEDULE.TIMEUNTIL, 1, 2)) > TO_NUMBER(TO_CHAR(SYSDATE, 'HH24')))
ORDER BY BBT_JOURNEYSTOPS.SERVICE, BBT_JOURNEYSTOPS.JOURNEYTIME;
return timetable;
end;
/
DECLARE
rc refcursor;
BEGIN
exec :rc := getRoute(:route, :routeday);
END;
我在第一行得到一个语法错误,上面写着“Expected AUTHID,EXTERNAL”但是我也不确定我编写的代码是否也能正确执行。任何提示或提示将不胜感激。