MySQLPrincipalComponent
El componente MySQLPrincipalComponent actúa como el nodo fundamental para conectar y administrar bases de datos MySQL dentro de tu sistema de automatización Nappai. Su función principal es facilitar la interacción con tu base de datos de manera estandarizada, permitiéndote ejecutar operaciones, recuperar información y gestionar flujos de datos de manera confiable. Al ser un componente “principal”, centraliza la lógica de conexión y ejecución, asegurando que todas las interacciones con MySQL sigan las mejores prácticas del sistema y sean compatibles con tus flujos de trabajo.
¿Cómo funciona?
Este componente funciona como un puente seguro entre tus flujos de trabajo y tu base de datos MySQL. Internamente, actúa como un nodo que captura la configuración que tú proporcionas (como la tabla a consultar, filtros o consultas personalizadas) y delega la ejecución real a una lógica base optimizada. Esto garantiza que la comunicación con MySQL sea eficiente y consistente. El componente recibe tus instrucciones, las procesa según el tipo de operación y configuración seleccionada, y devuelve los resultados estructurados en la salida, listos para ser consumidos por otros nodos en tu dashboard gráfico.
Conexión y Credenciales
Este componente requiere configurar previamente una credencial en el panel de Nappai para poder interactuar con tu base de datos MySQL:
- Dirígete a la sección de Credenciales en tu panel de Nappai.
- Crea una nueva credencial del tipo MySQL y guarda los campos requeridos (Método de conexión, URL de conexión, Usuario, Contraseña, Host, Puerto y Base de datos).
- En tu flujo de trabajo, selecciona la credencial guardada en el campo de entrada Credential de este nodo.
Entradas
Campos de Entrada
Los siguientes campos están disponibles para configurar este componente:
- Operation: Selecciona la operación de MySQL que deseas realizar en la base de datos.
- Return All: Indica si deseas devolver todos los resultados obtenidos o solo hasta un límite especificado.
- Table Name: Selecciona la tabla específica de la base de datos sobre la cual realizarás la acción.
- Custom Query: Escribe tu consulta SQL aquí. Puedes redactar consultas simples o complejas con múltiples líneas.
- Select Filter Type: Elige cómo deseas construir tus condiciones de búsqueda: Modo Cadena (recomendado para filtros simples en estilo SQL) o Modo Construcción Manual (para crear filtros visuales paso a paso).
- Filter String: Define las condiciones de búsqueda. Usa comillas simples para texto (ej.
'Madrid'), sin comillas para números y palabras claveANDoORen mayúsculas para unir condiciones. Si se deja vacío en operaciones de obtención, se devolverán todos los registros. - Limit: Especifica el número máximo de resultados que se desean devolver.
- Filters: Indica la cantidad de filtros que se aplicarán para decidir qué filas se recuperan.
- Field to Update: Indica el número de campos que serán modificados en la operación.
- Mode: Selecciona cómo se insertarán los datos: Dinámico (utiliza las columnas de la tabla) o Personalizado (utiliza datos de ingestión).
- Ingest Data: Proporciona los datos que se insertarán en la tabla de la base de datos.
Salidas
El componente produce dos tipos de salidas principales que puedes conectar a otros nodos:
- Data: Contiene los resultados de la operación realizada. Puede incluir registros recuperados, datos insertados o estructuras de información devueltas por la base de datos.
- Database Info: Devuelve información adicional sobre el estado de la base de datos o la operación, como confirmaciones de éxito o detalles técnicos.
Ejemplo de Respuesta JSONjson
{ “Data”: [ { “id”: 101, “name”: “Ana López”, “city”: “Madrid”, “salary”: 35000 }, { “id”: 102, “name”: “Carlos Ruiz”, “city”: “Barcelona”, “salary”: 42000 } ], “Database Info”: { “status”: “success”, “rows_returned”: 2, “message”: “Consulta ejecutada correctamente”, “timestamp”: “2024-05-20T10:30:00Z” } }
Conectividad
Este nodo se integra lógicamente en el centro de flujos relacionados con la gestión de datos. Sus salidas Data y Database Info suelen conectarse a componentes que procesan información, como transformadores de datos, visualizadores de tablas, nodos de decisión basados en los resultados, o acciones de almacenamiento. Las entradas de filtro y consulta pueden recibir valores de nodos de texto, de IA o de parámetros de usuario para generar consultas dinámicas. La conexión con la credencial asegura que el nodo tenga acceso autorizado a tu infraestructura de datos.
Ejemplo de Uso
Escenario: Recuperar empleados con un salario superior a un umbral
- Configura tu credencial MySQL en el panel de Nappai.
- En este componente, selecciona la tabla
empleadosen Table Name. - En Filter String, escribe la condición:
salary >= 30000. - Si quieres ver todos los que cumplan, deja Limit vacío o ajusta el valor máximo deseado.
- Conecta la salida Data a un componente de tabla para visualizar los resultados o a un nodo de envío de notificaciones para procesarlos.
Consejos y Mejores Prácticas
- Eficiencia con Filtros: Siempre utiliza filtros en Filter String cuando sea posible. Esto evita cargar grandes volúmenes de datos innecesarios en tu flujo, mejorando el rendimiento general.
- Consultas Personalizadas: Para operaciones avanzadas, usa Custom Query, pero asegúrate de validar la sintaxis SQL para evitar errores de ejecución.
- Modo de Ingesta: Elige correctamente el Mode según tus datos: usa Dinámico para basarte en la estructura de la tabla o Personalizado para mapeos complejos con ingest data.
- Revisión de Créditos: Verifica que la credencial seleccionada tenga los permisos adecuados para la operación que vas a ejecutar (lectura, escritura o actualización).
Consideraciones de Seguridad
- Prevención de Inyección SQL: Al usar Custom Query o filtros generados dinámicamente, ten cuidado con el origen de los datos. Asegúrate de validar y sanitizar cualquier entrada externa para prevenir vulnerabilidades de inyección SQL.
- Privacidad de Datos: Maneja con responsabilidad la información que pasa por este componente. Evita almacenar datos sensibles en logs si no es necesario y cumple con las normativas de privacidad de tu organización.
- Acceso Mínimo: Configura las credenciales MySQL con permisos mínimos necesarios para la automatización. No utilices credenciales con privilegios de administrador si solo se necesitan operaciones de lectura o escritura específicas.
- Seguridad de Credenciales: Protege tus credenciales MySQL y evita compartirlas públicamente dentro de tu espacio de trabajo de Nappai.