Aplicar SQLEXEC en una sentencia TABLE o MAP

Cuando se utiliza en una sentencia TABLE o MAP, SQLEXEC puede transferir y aceptar parámetros. Se puede utilizar para procedimientos y consultas, pero no para comandos de base de datos.

Sintaxis

Esta sintaxis ejecuta un procedimiento dentro de una sentencia TABLE o MAP.

SQLEXEC (SPNAME *sp_name*,
[ID *logical_name*,]
{PARAMS *param_spec* | NOPARAMS})
Argumento Descripción

| — | — |

SPNAME
Palabra clave necesaria que inicia una cláusula para ejecutar un procedimiento almacenado.
sp_name
Especifica el nombre del procedimiento almacenado que se debe ejecutar.
ID logical_name
Define un nombre lógico para el procedimiento. Utilice esta opción para ejecutar el procedimiento varias veces en una sentencia TABLE o MAP. No es necesario cuando se ejecuta un procedimiento solo una vez.
PARAMS param_spec | NOPARAMS
Especifica si el procedimiento acepta o no parámetros. Se debe utilizar una de estas opciones (consulte Uso de Parámetros de Entrada y Salida).

Sintaxis

Esta sintaxis ejecuta una consulta dentro de una sentencia TABLE o MAP.

SQLEXEC (ID *logical_name*, QUERY ' *query* ',
{PARAMS *param_spec* | NOPARAMS})
Argumento Descripción

| — | — |

ID logical_name
Define un nombre lógico para la consulta. Se necesita un nombre lógico para extraer valores de los resultados de la consulta. ID logical_name hace referencia a los valores de columna devueltos por la consulta.
QUERY ' sql_query '

Especifica la sintaxis de consulta SQL que se va a ejecutar en la base de datos. Puede devolver resultados con una sentencia SELECT o cambiar la base de datos con una sentencia INSERT, UPDATE o DELETE. La consulta debe estar entre comillas simples y debe estar incluida en una sola línea. Especifique nombres de objetos sensibles a mayúsculas/minúsculas de la forma en que se almacenan en la base de datos, como entre comillas para nombres sensibles a mayúsculas/minúsculas de Oracle.

SQLEXEC 'SELECT "col1" from "schema"."table"'
{::nomarkdown} <pre class="pre codeblock">PARAMS param_spec NOPARAMS</code></pre> {:/} Define si la consulta acepta o no parámetros. Se debe utilizar una de estas opciones (consulte Uso de Parámetros de Entrada y Salida).

Si desea ejecutar una consulta en una tabla que reside en una base de datos diferente a la base de datos actual, se debe especificar el nombre de la base de datos diferente con la tabla. El delimitador entre el nombre de la base de datos y el nombre de tabla debe ser dos puntos (:).

A continuación, se muestran algunos ejemplos de casos de uso:

select col1 from db1:tab1
select col2 from db2:schema2.tab2
select col3 from tab3
select col3 from schema4.tab4