Aplicar SQLEXEC em uma instrução TABLE ou MAP
Quando usado em uma instrução TABLE ou MAP, o SQLEXEC pode especificar e aceitar parâmetros. Ela pode ser usada para procedimentos e consultas, mas não para comandos de banco de dados.
Sintaxe
Essa sintaxe executa um procedimento em uma instrução TABLE ou MAP.
SQLEXEC (SPNAME *sp_name*,
[ID *logical_name*,]
{PARAMS *param_spec* | NOPARAMS})
| — | — |
SPNAME |
Palavra-chave obrigatória que inicia uma cláusula para executar um procedimento armazenado. |
sp_name |
Especifica o nome do procedimento armazenado a ser executado. |
ID logical_name |
Define um nome lógico para o procedimento. Use essa opção para executar o procedimento várias vezes dentro de uma instrução TABLE ou MAP. Não é necessário ao executar um procedimento apenas uma vez. |
Sintaxe
Essa sintaxe executa uma consulta em uma instrução TABLE ou MAP.
SQLEXEC (ID *logical_name*, QUERY ' *query* ',
{PARAMS *param_spec* | NOPARAMS})
| — | — |
ID logical_name |
Define um nome lógico para a consulta. É necessário um nome lógico para extrair valores dos resultados da consulta. ID logical_name faz referência aos valores de coluna retornados pela consulta. |
QUERY ' sql_query ' |
Especifica a sintaxe de consulta SQL a ser executada no banco de dados. Ele pode retornar resultados com uma instrução SELECT ou alterar o banco de dados com uma instrução INSERT, UPDATE ou DELETE. A consulta deve estar entre aspas simples e deve estar contida em uma linha. Especifique nomes de objetos com distinção entre maiúsculas e minúsculas da maneira como são armazenados no banco de dados, como entre aspas para nomes com distinção entre maiúsculas e minúsculas da Oracle. SQLEXEC 'SELECT "col1" from "schema"."table"' |
{::nomarkdown} <pre class="pre codeblock">PARAMS param_spec |
NOPARAMS</code></pre> {:/} |
Define se a consulta aceita ou não parâmetros. Uma dessas opções deve ser usada (consulte Usando Parâmetros de Entrada e Saída). |
Se você quiser executar uma consulta em uma tabela que reside em um banco de dados diferente do banco de dados atual, o nome do banco de dados diferente deverá ser especificado com a tabela. O delimitador entre o nome do banco de dados e o nome da tabela deve ser dois-pontos (:).
Veja a seguir alguns exemplos de casos de uso:
select col1 from db1:tab1
select col2 from db2:schema2.tab2
select col3 from tab3
select col3 from schema4.tab4