La sentencia CALL llama una rutina que se ha definido mediante la sentencia CREATE PROCEDURE o CREATE FUNCTION.
Puede implementar la sentencia CALL en ESQL o externamente como procedimiento almacenado de base de datos.
La sentencia CALL pasa los parámetros al procedimiento en el orden que se le ha dado. Los parámetros definidos como IN o INOUT se evalúan antes de realizar CALL, pero los parámetros definidos como OUT se pasan siempre como parámetros NULL del tipo correcto. Cuando se haya completado el procedimiento, los parámetros declarados como OUT o INOUT se actualicen para reflejar los cambios efectuados en ellos durante la ejecución del procedimiento. Los parámetros definidos como IN no se cambian nunca durante la causa de la ejecución de un procedimiento.
Cuando el parámetro brokerSchemaName no se especifica, el analizador SQL del intermediario busca el procedimiento con nombre utilizando el algoritmo descrito en la sentencia PATH (consulte el apartado Cláusula PATH).
Cuando se especifica el parámetro brokerSchemaName, el analizador SQL de intermediario invoca el procedimiento con nombre sin buscar primero la vía de acceso.
El parámetro opcional brokerSchemaName no está soportado en WebSphere Business Integration Message Broker Versión 2.1 ni en intermediarios anteriores. Todo ESQL que se difunda en la Versión 2.1 o en un intermediario anterior, debe definirse en el mismo esquema de intermediario que el flujo de mensajes, que es el <esquema nodo>.
Cada esquema de intermediario proporciona
un espacio de símbolo de función y procedimiento exclusivo.
Si llama un nombre de procedimiento almacenado que se
ha definido con un nombre comodín de esquema de base de datos especificado como
un único carácter de porcentaje en la sentencia CREATE PROCEDURE, también debe
incluir la cláusula EXTERNAL
SCHEMA y proporcionar databaseSchemaName en esta
sentencia.
En todos los demás casos, la cláusula no es obligatoria y se emite una
excepción si se especifica.
Las funciones incorporadas, en efecto, se colocan en un esquema de intermediario predefinido denominado SQL. Por lo tanto, las funciones de nivel de módulo definidas por el usuario del mismo nombre tienen preferencia sobre estas funciones incorporadas.
Para ver un ejemplo del uso de CALL, vea los ejemplos del apartado Sentencia CREATE PROCEDURE.
Conceptos relacionados
ESQL
Tareas relacionadas
Desarrollo de ESQL
Invocar procedimientos almacenados
Referencia relacionada
Preferencia de sintaxis
Sentencias ESQL
Sentencia CREATE PROCEDURE
Sentencia BROKER SCHEMA
Cláusula PATH
Avisos |
Marcas registradas |
Descargas |
Biblioteca |
Soporte |
Información de retorno (feedback)
![]() ![]() |
ak04920_ |