PLS-00103: обнаружен символ «СОЗДАТЬ» для упаковки - PullRequest
0 голосов
/ 05 октября 2018

Мне нужно выполнить файл SQL (я не очень разбираюсь в SQL, я просто должен его выполнить), но есть ошибка, которую я не понимаю:

Ошибки: проверьте компиляторlog
Ошибки для ПАКЕТА USER1.TST_MAI_FILTER:
ОШИБКА LINE / COL


29/1 PLS-00103: Обнаружен символ "CREATE"

Thisтакое ПАКЕТ29:

CREATE SEQUENCE S_TRD START WITH 1 INCREMENT BY 1 MINVALUE 1 CACHE 20 NOORDER;

и это остальная часть пакета, но он не попадает туда, пока разработчик не остановится после этой ошибки:

CREATE OR REPLACE PACKAGE BODY TST_MAI_FILTER IS

FUNCTION TRADE_TYPE
RETURN NUMBER
IS    
BEGIN
RETURN 1;
END;

FUNCTION ORDER_TYPE
RETURN NUMBER
IS    
BEGIN
RETURN 2;
END;

FUNCTION MRKT_EVT_TYPE
RETURN NUMBER
IS    
BEGIN
RETURN 3;
END;

FUNCTION DAILY_DATA_TYPE
RETURN NUMBER
IS    
BEGIN
RETURN 4;
END;


PROCEDURE log_mai_filter(p_run_id NUMBER, p_config_id NUMBER)
IS
v_mesg  VARCHAR2(4000 BYTE) := NULL;
BEGIN

INSERT INTO mai_filter_log (run_id, mai_query_id, sql_query, config_id, type_id, mai_class_id)
SELECT p_run_id, mai_query_id, sql_query,  config_id, type_id, mai_class_id
FROM mai_filter
WHERE config_id = p_config_id;        

LOG_INFO(p_run_id, 'I', 'RUN_LOG: Log mai_filter: ' || SQL%ROWCOUNT );

EXCEPTION
  WHEN OTHERS THEN
    v_mesg := 'An error has occured when executing log_mai_filter - ' || SQLCODE || ' -ERROR- ' || SQLERRM;
    raise_application_error(-20085, v_mesg);
    LOG_INFO(p_run_id, 'E', v_mesg); 
END;

PROCEDURE is_valid_filter
(p_mai_class_id IN NUMBER,
 p_type_id IN NUMBER,
 v_where  CLOB) IS 
v_tbl VARCHAR2(400 BYTE) := NULL;
BEGIN
SELECT type_name INTO v_tbl
FROM mai_filter_type
WHERE type_id = p_type_id;

EXECUTE IMMEDIATE 'SELECT run_id FROM ' || v_tbl || ' WHERE run_id = 0 AND '|| v_where;    

END;

END TST_MAI_FILTER;
/
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...