Bỏ qua, đến nội dung

Cấu hình node - SQL

Node chạy SQL query trực tiếp trên data source, hỗ trợ SELECT, INSERT, UPDATE, DELETE, JOIN, subquery.

Bảng tham số cấu hình

Tham sốKiểuBắt buộcMặc địnhMô tả
dataSourcestringKhôngmainTên data source (main, external, ...)
sqlstringCâu lệnh SQL (hỗ trợ template biến và placeholders ?)
paramsarrayKhông[]Parameterized values (chống SQL injection), theo thứ tự ?

Dữ liệu đầu ra (Output)

TênKiểuMô tả
rowsarrayMảng object kết quả (SELECT)
affectedRowsnumberSố dòng bị ảnh hưởng (INSERT/UPDATE/DELETE)
fieldsarrayMetadata các cột kết quả

Parameterized query

Luôn dùng parameterized query khi giá trị đến từ biến workflow:

An toàn (parameterized):

sql
SELECT * FROM orders WHERE customer_id = ? AND status = ?
  • params: [customerId, "pending"]

Không an toàn (template trực tiếp):

sql
SELECT * FROM orders WHERE customer_id = [customerId]

Lưu ý quan trọng

  • LUÔN dùng parameterized query khi giá trị đến từ user input - tránh SQL injection
  • Query DDL (CREATE TABLE, ALTER) không được khuyến khích trong workflow
  • Kết quả SELECT trả về tối đa theo cấu hình server (thường 1000 rows)
  • Mỗi SQL node chạy trong transaction riêng, không share transaction với node khác
  • SQL dialect phụ thuộc vào database engine (PostgreSQL, MySQL, SQLite)
  • Dùng dataSource để query trên database ngoài đã kết nối (không chỉ main DB)