Partilhar via


Função try_reflect

Aplica-se a: Marque Sim Databricks SQL Marque Sim Databricks Runtime 14.1 e superior

Chame um método com reflexão, retornando NULL se o método retornar uma exceção.

Para retornar um erro, use reflect.

Sintaxe

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

Argumentos

  • class: Um STRING literal especificando a classe java.
  • method: Um STRING literal especificando o método java.
  • argN: Uma expressão com um tipo apropriado para o método selecionado.

Devoluções

A STRING.

Exemplos

> 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