Ejecuta un procedimiento almacenado
En este ejemplo, se muestra cómo ejecutar un procedimiento almacenado cuando usas una conexión de base de datos. En el ejemplo, se supone que estás familiarizado con los siguientes conceptos:
- Cómo crear integraciones con Application Integration
- Tarea de conector
- Conectores de Integration
- Procedimientos almacenados de la base de datos
Todos los procedimientos almacenados en una conexión de base de datos se te muestran como acciones en la tarea del conector. Una acción es un primer elemento
de clase que está disponible para la integración a través de la interfaz del conector. Las acciones te permiten realizar cambios en una entidad 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:
- BigQuery
- Cloud SQL - MySQL
- Cloud SQL - PostgreSQL
- Cloud SQL - SQL Server
- MySQL
- Base de datos de Oracle
- PostgreSQL
- SQL Server
- MariaDB
- AlloyDB
- Snowflake
- Redshift
Ejemplo
Supongamos que tienes una base de datos de MySQL que tiene el siguiente procedimiento almacenado que obtiene un
información del 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 muestra el nombre y el correo electrónico del cliente especificado. Lleva
en el ID de cliente a través de la variable de entrada p_customer_id
y muestra el
y el correo electrónico en las variables de salida p_name
y p_email
, respectivamente.
Ahora, supongamos que deseas obtener el nombre y el ID de correo electrónico del cliente con customer_id=1001
.
debes realizar las siguientes tareas:
- Crea una conexión a tu base de datos de MySQL.
- Abre o crea una integración nueva.
- Agrega la tarea de Connectors a tu integración.
- En la sección Configuración, haz clic en Configurar tarea para abrir el panel Configurar tarea del conector.
- Configura la tarea Conectores para usar la conexión que creaste en el paso 1.
- En la columna Conexión, selecciona la conexión requerida de la lista de conexiones disponibles.
Después de seleccionar una conexión, aparece la columna Tipo con los valores
Entities
yActions
. Todos los procedimientos almacenados aparecerán en Acciones. - Selecciona Acciones > get_customer_info.
- Haz clic en Listo para completar la configuración de conexión y cerrar el panel.
- En la columna Conexión, selecciona la conexión requerida de la lista de conexiones disponibles.
- Haz clic en el elemento de tarea
Connectors
y, luego, enconnectorInputPayload
. en la secciónTask Input
. - Especifica la siguiente carga útil de JSON en el campo
Default Value
:{ "customer_id": 1001 }
- Haz clic en el botón Probar en la barra de herramientas del editor de integración para ejecutar la integración.
Si la integración se ejecuta de forma correcta, la variable
connectorOutputPayload
tendrá una carga útil JSON similar a la siguiente:{ "name": "John", "email": "john@test.com" }