Open Source RDBMS - Seamless, Scalable, Stable and Free

한국어 | Login |Register

Versions available for this page: CUBRID 8.3.0 |  CUBRID 8.3.1 |  CUBRID 8.4.0 |  CUBRID 8.4.1 | 

EVALUATE 문

설명

EVALUATE 문 또한 데이터베이스에 정의된 메소드를 호출하는데 사용된다.

EVALUATE 문에서 메소드 호출은 표현식의 용어(term)로 주어진다. 메소드의 결과가 상수 값이면, 다른 상수(또는 상수를 반환하는 메소드) 또한 표현식의 용어로 주어질 수 있다. 클래스 메소드와 인스턴스 메소드 모두 EVALUATE 문으로 호출할 수 있다.

구문

EVALUATE expression [ ; ]

 

expression:

• [ + | - ] term [ { + | - | * | / } term ]

 

term:

method_call

 

method_call :

method_name ( call_target [, arg_value [ {, arg_value }_ ] ] ) [ to_variable ]

            method_name ( [ arg_value [ {, arg_value }_ ] ] )

            ON call_target [ to_variable ]

arg_value :

literal

variable

expression

 

call_target :

CLASS class_name

• variable

• expression

• method_call

 

to_variable :

INTO variable

TO variable

EVALUATE 문에서 지명된 메소드를 위한 대상 인수는 method_name 뒤에 괄호 안에 기술된다. 대상은 리스트에서 첫 번째로 주어질 수 있으며, 메소드 인수들이 뒤따른다. 수행된 메소드가 클래스 메소드이면, CLASS 키워드가 반드시 리스트의 첫 항목으로써 목표 클래스 앞에 놓여야 한다. 괄호가 메소드 인수만 포함하고 있을 때 call_target은 반드시 ON 절에 주어진다.

EVALUATE 문 또한 한 메소드 호출이 또 다른 메소드의 대상이나 인수로 기술함으로써 중첩된 메소드 호출을 허용한다. 이러한 유형의 기술은 외부(outer) 메소드의 결과를 결정하기 위하여 내부(inner) 메소드의 결과를 사용한다.