Skip Headers

오라클 10g 함수
10g Release 1 (10.1)
Go to Documentation Home
HOME
Go to Book List
ORA_home
Go to Table of Contents
연구회
Go to Index
자료실
Go to Master Index
ORA_10G
Go to Feedback page
MAIL

Go to previous page
Previous
Go to next page
Next

USERENV

문법

MAIN

userenv::=
Description of userenv.gif follows

그림 설명

목적

 

MAIN

주 의 :

USERENV함수는 후행 호환을 위해 유지되는 유산 함수이다. 오라클은 현행 기능에 대하여 이미 있는 USERENV 네임 스페이스와 함께 SYS_CONTEXT함수를 이용하는 것을 추천한다. SYS_CONTEXT 참조.

USERENV함수는 현재 세션에 대한 정보를 반환한다. 이 정보는 주의사항 감사 행적 테이블을 쓰거나, 세션에 의해 현재 이용되는 언어 특성 문자를 정의하는데 유용하다. CHECK 제약 조건에서 USERENV함수는 사용할수 없다.Table 7-12 는 parameter 인수값을 서술한다.

USERENV에 모든 콜은 NUMBER를 반환하는 SESSIONID,ENTRYID,COMMITSCN파라미터를 가지는 call을 제외하고 VARCHAR2데이터를 반환한다.

USERENV 함수는 현재 세션의 환경 정보를 반환합니다.
  - ENTRYID : 사용 가능한 Auditing entry Identifier를 반환합니다.
  - LABEL : 현재 세션의 Label을 반환합니다.
  - LANGUAGE : 현재 세션에서 사용중인 언어와 테리토리 값을 반환합니다.
  - SESSIONID : Auditing(감사) Session ID를 반환 합니다.
  - TERMINAL : 현재 세션 터미널의 OS ID를 반환 합니다.  

Table 7-12 Parameters of the USERENV Function

Parameter Return Value
CLIENT_INFO CLIENT_INFO는 DBMS_APPLICATION_INFO패키지를 이용하는 어플리케이션에 의해 저장될수 있는 사용자 세션 정보의 64바이트까지를 반환한다.
ENTRYID

현재 감사 엔티리 번호를 반환한다. 감사 엔트리 ID순서는 fine-grained 감사 레코드와 통상 감사 레코드 사이를 공유한다. 분산 SQL문에서 이 속성을 이용할수 없다.

참고: 코스 그레인드(coarse-grained)와 파인 그레인드(fine-grained)는 우리말 한마디로 옮기기에는 무척 버거운 개념이다. grain은 원래 보리나 밀 같은 곡식을 낟알로 만드는 작업이나 표면을 우둘투둘하게 하는 일을 뜻 하는데, 그때아주 곱고 섬세하게 하느냐, 아니면 듬성 듬성 크게 하느냐에 따라 fine와 coarse라 는형용사를 붙인다. 이것이 소프트웨어공학에 도입되어 어떠한 프로세스를 아주 잘게 쪼개느냐 아니면 굵게 쪼개서 뭉뚱그려 놓느냐를 표현할 때 쓰게 되었다. 웹서비스에서의서비스라는 단위에 비해 상대적으로 자바의 메소드는 더 세분화되어있다는 뜻에서 코스그레인드 서비스-파인그레인드 메소드라는 대칭이 생겼다고 봐도 좋다.

ISDBA

ISDBA는 만약 사용자가 운영 시스템 또는 패스워드 파일에 의해서 사용자가 DBA권한 소유가 인증되었을 경우에 'TRUE'를 반환한다.

LANG

LANG는 언어명에 대한 ISO 약칭을 반환한다. 'LANGUAGE' 파라미터의 축약

LANGUAGE LANGUAGE는 이 형태에서 데이터베이스 문자 세트 현행 세션에 의해 이용되는 언어와 지역을 반환한다.
language_territory.characterset
SESSIONID

SESSIONID는 감사 세션 식별자를 반환한다.분산 SQL문장에서 이 파라미터를 지정할수 없다.

TERMINAL TERMINAL은 현재 세션의 터미널에 대한 운영 시스템 식별자를 반환한다. 분산 SQL문자에서, 이 파라미터는 로컬 세션의 식별자를 반환한다. 분산 환경에서, 이 파라미터는 리모트 SELECT문장에 대하여 지원될수 있으나, 리모트 INSERT,UPDATE,DELETE 에서는 이용될수 없다.

예제

MAIN

다음 예제는 현재 세션의 LANGUAGE 파라미터를 반환한다.

SELECT USERENV('LANGUAGE') "Language" FROM DUAL;

Language
-----------------------------------
AMERICAN_AMERICA.WE8ISO8859P1