Conectores de Base de Datos
Descripción
Sección titulada «Descripción»Este directorio contiene modulos auxiliares de conexión directa a bases de datos externas. No son nodos de workflow independientes con metadata.json, sino librerias de funciones que otros modulos pueden utilizar para ejecutar consultas contra bases de datos de terceros.
Cada conector expone una función query que recibe la configuración de conexión, la consulta y los parámetros, y retorna los resultados.
Conectores disponibles
Sección titulada «Conectores disponibles»PostgreSQL (postgresql.js)
Sección titulada «PostgreSQL (postgresql.js)»Utiliza la libreria pg (Pool). Acepta configuración con host, user, database, password, port. Ejecuta queries parametrizadas y retorna result.rows.
MySQL (mysql.js)
Sección titulada «MySQL (mysql.js)»Utiliza la libreria mysql2/promise. Crea una conexión, ejecuta la query con execute y retorna las filas resultantes.
MongoDB (mongodb.js)
Sección titulada «MongoDB (mongodb.js)»Utiliza la libreria mongodb (MongoClient). Requiere configuración con url y database. La función query recibe el nombre de la colección y un filtro, ejecuta find(filter).toArray().
SQL Server (sqlserver.js)
Sección titulada «SQL Server (sqlserver.js)»Utiliza la libreria mssql. Requiere configuración con user, password, server, database. Ejecuta queries SQL y retorna result.recordset.
Configuración
Sección titulada «Configuración»| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| host / server / url | text | Si | Dirección del servidor de base de datos |
| user / username | text | Si | Usuario de la base de datos |
| password | text | Si | Contrasena |
| database | text | Si | Nombre de la base de datos |
| port | number | No | Puerto de conexión |
Ejemplo de Uso
Sección titulada «Ejemplo de Uso»PostgreSQL
Sección titulada «PostgreSQL»const pg = require('./conectores/postgresql');const rows = await pg.query( { host: 'localhost', user: 'admin', database: 'mydb', password: 'pass', port: 5432 }, 'SELECT * FROM users WHERE status = $1', ['active']);const mysql = require('./conectores/mysql');const rows = await mysql.query( { host: 'localhost', user: 'root', password: 'pass', database: 'mydb' }, 'SELECT * FROM orders WHERE id = ?', [123]);MongoDB
Sección titulada «MongoDB»const mongo = require('./conectores/mongodb');const docs = await mongo.query( { url: 'mongodb://localhost:27017', database: 'mydb' }, 'users', { status: 'active' });SQL Server
Sección titulada «SQL Server»const mssql = require('./conectores/sqlserver');const rows = await mssql.query( { user: 'sa', password: 'pass', server: 'localhost', database: 'mydb' }, 'SELECT TOP 10 * FROM Products');- Estos modulos no tienen metadata.json ni aparecen como nodos en el editor visual
- Son utilidades de bajo nivel destinadas a ser usadas por otros modulos del workflow
- Las conexiones se cierran automáticamente después de cada consulta
- PostgreSQL usa Pool que se cierra con pool.end()
- MySQL crea una conexión nueva por consulta y la cierra al finalizar
- MongoDB usa MongoClient.connect y cierra con client.close()
- SQL Server usa mssql.connect y gestiona el pool internamente
- No incluyen manejo de credenciales integrado; la configuración se pasa directamente
Nodos Relacionados
Sección titulada «Nodos Relacionados»- Modulos de integración que requieran acceso directo a bases de datos externas