Ejecutar un procedimiento almacenado

En este ejemplo se muestra cómo ejecutar un procedimiento almacenado cuando se usa una conexión de base de datos. En el ejemplo se da por hecho que conoces los siguientes conceptos:

Todos los procedimientos almacenados de una conexión de base de datos se muestran como acciones en la tarea del conector. Una acción es una función de primera clase que se pone a disposición de la integración a través de la interfaz del conector. Las acciones te permiten hacer cambios en una o varias entidades, y varían de un conector a otro. Sin embargo, es posible que un conector no admita ninguna acción, en cuyo caso la lista Actions estará vacía.

Los siguientes conectores admiten procedimientos almacenados:

Ejemplo

Supongamos que tienes una base de datos MySQL con el siguiente procedimiento almacenado que obtiene la información de un cliente de la tabla customers:

CREATE PROCEDURE get_customer_info
(IN p_customer_id INT, OUT p_name VARCHAR(50), OUT p_email VARCHAR(255))
BEGIN
    SELECT name, email INTO p_name, p_email
    FROM customers
    WHERE id = p_customer_id;
END

Este procedimiento almacenado devuelve el nombre y el correo del cliente especificado. Toma el ID de cliente a través de la variable de entrada p_customer_id y devuelve el nombre y el correo electrónico en las variables de salida p_name y p_email, respectivamente.

Supongamos que quiere obtener el nombre y el ID de correo del cliente con customer_id=1001. Para ello, debe hacer lo siguiente:

  1. Crea una conexión a tu base de datos MySQL.
  2. Abre o crea una integración.
  3. Añade la tarea Connectors a tu integración.
  4. En la sección Configuración, haz clic en Configurar tarea para abrir el panel Configurar tarea de conector.
  5. Configura la tarea Connectors para que use la conexión que has creado en el paso 1.
    1. En la columna Conexión, selecciona la conexión que necesites de la lista de conexiones disponibles.

      Después de seleccionar una conexión, aparecerá la columna Tipo con los valores Entities y Actions. Todos los procedimientos almacenados se mostrarán en Acciones.

    2. Selecciona Acciones > get_customer_info.
    3. Haz clic en Hecho para completar la configuración de la conexión y cerrar el panel.
  6. Haz clic en el elemento de tarea Connectors y, a continuación, en connectorInputPayload en la sección Task Input.
  7. Especifica la siguiente carga útil de JSON en el campo Default Value:
    {
    "customer_id": 1001
    }
  8. Haz clic en el botón Probar de la barra de herramientas del editor de integraciones para ejecutar la integración.

    Si la integración se ejecuta correctamente, la variable connectorOutputPayload tendrá una carga útil JSON similar a la siguiente:

    {
    "name": "John",
    "email": "john@test.com"
    }