서비스에서 일부 XML 데이터를 요청하는 저장 프로 시저를 만들려고합니다. 온라인에서 몇 가지 예제를 찾았으며 모두이 UTL_HTTP 패키지 사용을 가리 킵니다. 그러나 저장 프로 시저를 컴파일하려고 할 때마다 오류가 발생합니다.
PLS-00201: identifier 'UTL_HTTP' must be declared
사용하려는 코드의 기본 골격은 다음과 같습니다.
PROCEDURE GET_XML_DATA2 AS
BEGIN
DECLARE
v_soap_request VARCHAR2(32767);
v_soap_response VARCHAR2(32767);
v_http_request UTL_HTTP.req; --Fails here
v_http_response UTL_HTTP.resp; -- Fails here too
v_action VARCHAR2(4000) := '';
BEGIN
null;
END;
END GET_XML_DATA2;
표시된 줄에서 실패하고 컴파일되지 않습니다. Oracle Express Edition을 사용하고 있으며 이미 사용자에게 해당 패키지에 대한 실행 권한을 부여하려고 시도했습니다. 그것은 작동하지 않았다. 또 무엇을 볼 수 있습니까? 다른 원인은 무엇입니까? 감사!
이미 자신을 파악했듯이 이것은 권한 문제인 것 같습니다. 사용자는 UTL_HTTP 패키지에 대한 액세스 권한이 없습니다. 사용자에게 패키지에 대한 EXECUTE 권한이 있는지 확인하십시오.
GRANT EXECUTE ON SYS.UTL_HTTP TO my_user;
이 작업을 SYS로 수행해야 할 수도 있습니다.
SQL Developer (PL / SQL 개발을 수행하는 경우 권장 할 수 있음)를 사용하여 어떻게 든 패키지를 살펴볼 수 있는지 확인하십시오. 그래도 도움이되지 않으면 사용자가 현재 가지고있는 권한을 게시하십시오.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다