Stored Procedure
Descubra mais sobre o componente Stored Procedure e saiba como utilizá-lo na Digibee Integration Platform.
O Stored Procedure realiza operações através de uma conexão com um banco de dados e retorna dados de procedimento como um único objeto de JSON. Para consultar quais os bancos de dados suportados por esse componente, leia a documentação Bancos de dados suportados.
Importante: cuidado com o consumo de memória para datasets grandes. BLOB e CLOB ainda não são suportados.
Parâmetros
Dê uma olhada nas opções de configuração do componente. Parâmetros suportados por expressões Double Braces estão marcados com (DB)
.
Parâmetro | Descrição | Valor padrão | Tipo de dado |
---|---|---|---|
Account | Conta a ser utilizada pelo componente. Contas suportadas: Basic. | N/A | String |
Database URL | String de conexão ao banco de dados. | jdbc:mysql://ec2-54-233-172-214.sa-east-1.compute.amazonaws.com/digibee | String |
SQL Statement | Instrução SQL a ser executada. | call proc_test(:?{in;var1},:?{in;var2},:?{out;result;VARCHAR},:?{out;now;VARCHAR}) | String |
Fail On Error | Se a opção estiver habilitada, a execução do pipeline com erro será interrompida; do contrário, a execução do pipeline continua, mas o resultado vai mostrar um valor falso para a propriedade "success". | False | Booleano |
Custom Connection Properties | Propriedades de conexão definidas pelo usuário e específicas do banco de dados. | N/A | String |
Keep Connections | Se ativada, a opção vai manter as conexões com a base de dados por no máximo 30 minutos; do contrário, será por apenas 5 minutos. | True | Booleano |
Advanced | Configurações avançadas. | False | Booleano |
Connection Test Query | Instrução SQL a ser utilizada antes que cada conexão seja estabelecida. Esse parâmetro é opcional e deve ser aplicado a bancos de dados que não possuem informações confiáveis sobre o status da conexão. | N/A | String |
Fluxo de Mensagens
Entrada
:?{in;variable1} .
in: tipo de parâmetro (obrigatório).
variable1: nome da variável que veio com a entrada de JSON no corpo da solicitação (obrigatório).
Exemplo
Digamos que você queira realizar uma chamada a um procedimento com um parâmetro de entrada (Oracle, MySql, etc.):
call proc (:?{in; variable})
SQL Server:
exec proc :?{in; variable}
Importante: ainda não é possível configurar o tipo IN (VARCHAR, FLOAT, INTEGER, etc.).
Saída
:?{out;propertyToOutput;Type;java_type_library} .
out: tipo de parâmetro (obrigatório).
propertyToOutput: nome da propriedade que o componente mostrará no resultado (obrigatório).
Type: CURSOR, VARCHAR, NUMERIC, FLOAT, etc. (obrigatório).
java_type_library: caso você precise utilizar um procedimento em que OUT seja um Oracle CURSOR, será necessário especificar a seguinte Biblioteca: oracle.jdbc.OracleTypes (opcional).
Exemplo
Digamos que você queira realizar uma chamada a um procedimento com um parâmetro de entrada e saída (Oracle, MySql, etc.):
call proc (:?{in; variable}, :?{out; nameResultOut;VARCHAR})
SQL Server
exec proc :?{in; variable}, :?{out; nameResultOut;VARCHAR}
In Out
:?{in; variable|out;propertyToOutput;Type;java_type_library} .
in: tipo de parâmetro (obrigatório).
variable1: nome da variável que veio com a entrada de JSON no corpo da solicitação (obrigatório).
out: tipo de parâmetro (obrigatório).
propertyToOutput: nome da propriedade que o componente mostrará no resultado (obrigatório).
Type: CURSOR, VARCHAR, NUMERIC, FLOAT, etc. (obrigatório).
java_type_library: caso você precise utilizar um procedimento em que OUT seja um Oracle CURSOR, será necessário especificar a seguinte Biblioteca: oracle.jdbc.OracleTypes (opcional).
Exemplo
Digamos que você queira realizar uma chamada a um procedimento com um parâmetro de entrada e saída (Oracle, MySql, etc.):
call proc (:?{in; variable|out; nameResultOut;VARCHAR})
SQL Server
exec proc :?{in; variable|out; nameResultOut;VARCHAR}
Entrada
O componente espera uma mensagem no seguinte formato:
Saída
Saída com erro
Atualizado