Я получаю ошибку:
ORA-06575: Package or function GET_CONC_NAMES is in an invalid state
Когда я пытаюсь вызвать функцию get_conc_names с помощью:
SELECT get_conc_names(EVENT_ID) FROM DT_EVENT_SERVICE;
Сама функция:
CREATE OR REPLACE FUNCTION get_conc_names( p_event_id IN dt_event_service.event_id%type )
RETURN VARCHAR2
IS
l_conc_names VARCHAR2(32676);
-- You may want a smaller variable if you know the result will be smaller
BEGIN
SELECT LTRIM(SYS_CONNECT_BY_PATH(name, ', '),',') conc_names
INTO l_conc_names
FROM (
SELECT id, name, rownumber, cnt
FROM (SELECT es.EVENT_ID as id
,s.SERVICE_NAME as name
,ROW_NUMBER() OVER (order by name) as rownumber
,COUNT(*) OVER () as cnt
FROM DT_SERVICES s
JOIN DT_EVENT_SERVICE es ON s.SERVICE_ID = es.SERVICE_ID
WHERE es.EVENT_ID = p_event_id )
) data
WHERE rownumber = cnt
START WITH rownumber = 1
CONNECT BY PRIOR rownumber = rownumber-1;
RETURN l_conc_names;
END;
Ошибки компиляции:
Компиляция не удалась, строка 13 (10:58:37) PL / SQL: ORA-00904: «ИМЯ»: недопустимый идентификаторКомпиляция не выполнена, строка 7 (10:58:37) PL / SQL: Оператор SQL игнорируется