クエリへのポインターを返すのに問題があります。
これが私の現在のコードです:
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」という構文エラーが表示されますが、書いたコードが正しく実行されるかどうかもわかりません。ヒントやヒントをいただければ幸いです。