Как исправить ошибку «таблица или представление не существует» - PullRequest
0 голосов
/ 27 января 2019

Имя пакета 'emp_helper' создано под пользователем 'emp'.

  1. Был создан новый пользователь 'emp_client', которому предоставлены права на выполнение и отладку для пакета 'emp_helper'.
  2. Он имеет функцию, а его код указан ниже

Когда я запустил процедуру с вводом (111 и FULL), я получаю значение ниже

ORA-00942: table or view does not exist
ORA-06512: at "EMP.EMP_HELPER", line 18
ORA-06512: at line 10

**Note:** Line 10: v_lst_no   NUMBER;
Line 18: SELECT

CREATE OR REPLACE PACKAGE BODY emp.emp_helper AS

    FUNCTION get_version_no (
        p_countryid          IN VARCHAR2,
        p_emp_type           IN VARCHAR2,
        p_processed_version  OUT NUMBER
    ) RETURN NUMBER
    AS
        v_latest_no        NUMBER;
        v_lst_no           NUMBER;
        v_job_in_progress  VARCHAR2(1);
        v_result           NUMBER;
        v_cust_cnt         NUMBER;
    BEGIN
        BEGIN
            SELECT MIN(version_no) INTO v_lst_no
            FROM   emp_identification
            WHERE  country_id = p_countryid;                 
        END;

        p_processed_version := v_lst_no;
        RETURN v_latest_no;
    END;

END emp_helper;

Я ожидаю, что число будет возвращено при выполнении.

1 Ответ

0 голосов
/ 28 января 2019

Используйте EMP.emp_identification вместо emp_identification и GRANT SELECT ON EMP.emp_identification TO emp_user. Или вы можете создать SINONYM для EMP.emp_identification (общедоступный или просто в схеме emp_user).

...