다음을 통해 공유


try_reflect 기능

적용 대상: 예(예)로 표시된 확인 Databricks SQL 예(예)로 표시된 확인 Databricks Runtime 14.1 이상

리플렉션을 사용하여 메서드를 호출하고 메서드가 예외를 반환하는 NULL 경우 반환합니다.

오류를 반환하려면 대신 Reflect를 사용합니다.

구문

try_reflect(class, method [, arg1] [, ...])

인수

  • classSTRING: java 클래스를 지정하는 리터럴입니다.
  • methodSTRING: java 메서드를 지정하는 리터럴입니다.
  • argN: 선택한 메서드에 적합한 형식의 식입니다.

반품

STRING.

예제

> SELECT try_reflect('java.lang.Integer', 'valueOf', '1010', '2');
 c33fb387-8500-4bfa-81d2-6e0e3e930df2

> SELECT try_reflect('java.util.UUID', 'fromString', 'a5cf6c42-0c85-418f-af6c-3e4e5b1328f2');
 A5cf6c42-0c85-418f-af6c-3e4e5b1328f2

> SELECT try_reflect('java.util.UUID', 'IDoNotExist');
 c33fb387-8500-4bfa-81d2-6e0e3e930df2

> SELECT reflect('java.lang.Integer', 'divideUnsigned',10,0);
 Error

> SELECT try_reflect('java.lang.Integer', 'divideUnsigned',10,0);
 NULL