see

go here

다음 섹션에는 트리거에서 프로시저로 사용자 지정 오류 번호를 전달하는 예제가 포함되어 있습니다. AUTHID 절은 모든 패키지된 하위 프로그램이 정의자(기본값) 또는 호출자의 권한으로 실행되는지 여부와 스키마 개체에 대한 정규화되지 않은 참조가 정의자 또는 호출자의 스키마에서 해결되는지 여부를 결정합니다. 자세한 내용은 “호출기의 권한 과 정의자 권한 사용(AUTHID 절)”을 참조하십시오. 형식 정의, 커서 선언, 가변 선언, 상수 선언, 예외 선언, PL/SQL 하위 프로그램 사양 및 호출 사양을 포함할 수 있는 패키지 사양을 지정합니다. PL /SQL로 표현 된 자바 루틴. 다른 프로시저를 읽고 직접 쓰지 않으려면 패키지 변수에 대한 메서드를 가져옵니다. 패키지 DBMS_OUTPUT를 사용하면 PL/SQL 블록, 하위 프로그램, 패키지 및 트리거의 출력을 표시할 수 있습니다. 이 패키지는 PL/SQL 디버깅 정보를 표시하는 데 특히 유용합니다. PUT_LINE 프로시저는 다른 트리거, 프로시저 또는 패키지에서 읽을 수 있는 버퍼에 정보를 출력합니다. GET_LINE 프로시저를 호출하거나 SQL*Plus에서 서버 출력을 켜서 정보를 표시합니다. 예제 9-4는 PL/SQL 블록의 출력을 표시하는 방법을 보여 주었습니다.

반환 유형(결과 값의 데이터 형식)은 Oracle 기본 제공 유형이어야 합니다. 커서 변수의 힘은 다른 커서를 가리키는 능력에서 비롯됩니다. 다음 패키지 예제에서는 판별자가 커서 변수를 열어 두 개의 서로 다른 커서 중 하나를 가리키는 데 사용됩니다. DBMS_SQL 패키지를 사용하여 실행됩니다. 프로시저의 EXECUTE 권한은 사용자에게 다른 사용자가 소유한 프로시저를 실행할 수 있는 권한을 부여합니다. 권한이 있는 사용자는 프로시저 소유자의 보안 도메인에서 프로시저를 실행합니다. 따라서 사용자는 프로시저에서 참조하는 개체에 대한 권한을 부여할 필요가 없습니다. 이를 통해 데이터베이스 응용 프로그램 및 사용자와 보다 엄격하고 효율적인 보안 전략을 수립할 수 있습니다.

또한 모든 프로시저 및 패키지는 데이터 사전(SYSTEM 테이블스페이스)에 저장됩니다. 할당량은 프로시저 및 패키지를 만드는 사용자가 사용할 수 있는 공간의 양을 제어하지 않습니다. pragma 제한_REFERENCES을 사용하는 경우 패키지 본문이 아닌 패키지 사양에 배치합니다. 하위 프로그램(함수 또는 프로시저)의 선언을 따라야 하지만 즉시 따를 필요는 없습니다. 하나의 pragma만 지정된 하위 프로그램 선언을 참조할 수 있습니다. Java를 사용하면 ncomp 도구를 사용하여 사용자 고유의 패키지 및 클래스를 컴파일할 수 있습니다. 일부 대화형 도구를 사용하면 세션 변수를 만들 수 있습니다. 예를 들어 SQL*Plus를 사용하는 경우 다음 문은 세션 변수를 만듭니다. 패키지가 있는 스키마 소유자의 권한으로 실행되고 패키지가 있는 스키마에서 외부 이름이 확인됨을 나타내도록 DEFINER을 지정합니다.