# node-red-contrib-dfdatabase **Repository Path**: dfskgh/node-red-contrib-dfdatabase ## Basic Information - **Project Name**: node-red-contrib-dfdatabase - **Description**: 东方数科数据库操作节点,提供统一、安全的数据库连接与操作接口。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 0 - **Created**: 2025-12-11 - **Last Updated**: 2025-12-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # node-red-contrib-dfdatabase > 东方数科数据库操作节点,提供统一、安全的数据库连接与操作接口。 ## 功能特性 DFDatabase 节点封装了多种数据库的常用操作,提供以下核心功能: - **多数据库支持**:MySQL、PostgreSQL、MongoDB、Redis 等主流数据库 - **可视化查询构建**:通过界面配置 SQL 查询语句,降低使用门槛 - **连接池管理**:优化的数据库连接管理,提升性能与稳定性 - **数据安全**:参数化查询,有效防止 SQL 注入攻击 - **事务支持**:提供完整的事务操作能力,保证数据一致性 ## 安装方法 ### 前提条件 - Node.js 版本 14.0 或更高版本 - Node-RED 版本 1.0 或更高版本 - 目标数据库服务(如 MySQL、PostgreSQL 等) ### 安装步骤 bash 通过 npm 安装 npm install node-red-contrib-dfdatabase 复制 ## 配置说明 ### 数据库连接配置 1. 拖动 `dfdatabase-connection` 节点到工作区 2. 配置数据库类型、主机地址、端口、认证信息 3. 测试连接并保存配置 ### 查询配置节点 创建不同类型的数据库操作节点: - **查询节点**:执行 SELECT 查询操作 - **插入节点**:执行 INSERT 操作 - **更新节点**:执行 UPDATE 操作 - **删除节点**:执行 DELETE 操作 - **原始 SQL 节点**:执行自定义 SQL 语句 ## 使用示例 ### 基础查询流程 json [ { "id": "db-query", "type": "dfdatabase-query", "name": "用户查询", "connection": "db-conn", "sql": "SELECT * FROM users WHERE status = ?", "params": ["active"], "wires": [["result-processor"]] } ] ### 数据操作流程 json [ { "id": "data-insert", "type": "dfdatabase-insert", "name": "日志记录", "connection": "db-conn", "table": "system_logs", "columns": ["log_type", "message", "created_at"], "wires": [["debug-output"]] } ] ## 数据格式 ### 输入参数格式 javascript msg.params = ["value1", "value2"]; // 查询参数 msg.options = { timeout: 30000, // 超时设置 transaction: true // 启用事务 }; ### 输出结果格式 javascript msg.payload = { rows: [...], // 查询结果集 affectedRows: 0, // 影响行数 insertId: null, // 插入ID executionTime: 45 // 执行时间(ms) }; ## 性能优化建议 ### 连接池配置 javascript // 在 settings.js 中配置 databaseConnections: { maxConnections: 20, idleTimeout: 30000, connectionTimeout: 5000 } ### 查询优化 - 使用参数化查询避免 SQL 注入 - 合理设置查询超时时间 - 对大数据集查询使用分页 ## 故障排除 ### 常见连接问题 1. **连接超时**:检查网络连通性和防火墙设置 2. **认证失败**:验证用户名和密码是否正确 3. **数据库不存在**:确认指定的数据库是否存在 ### 调试模式 启用详细日志记录帮助诊断问题: javascript // 在节点配置中启用调试 { "debug": true, "logLevel": "verbose" } ## 相关资源 - [数据库配置指南](https://docs.east-digital.com/database) - [SQL 最佳实践](https://docs.east-digital.com/database/best-practices) - [性能调优手册](https://docs.east-digital.com/database/performance) ## 许可证 Apache-2.0 License © 2025 东方数科