Skip to content

Database

MongoDB, MySQL, PostgreSQL, and Redis database operations.

9 modules

ModuleDescription
Chèn cơ sở dữ liệuChèn dữ liệu vào các bảng cơ sở dữ liệu
Truy vấn cơ sở dữ liệuThực thi truy vấn SQL trên cơ sở dữ liệu PostgreSQL, MySQL hoặc SQLite
Cập nhật cơ sở dữ liệuCập nhật dữ liệu trong các bảng cơ sở dữ liệu
MongoDB FindTruy vấn tài liệu từ collection MongoDB
MongoDB InsertChèn một hoặc nhiều tài liệu vào collection MongoDB
Truy vấn MySQLThực thi truy vấn SQL trên cơ sở dữ liệu MySQL và trả về kết quả
Truy vấn PostgreSQLThực thi truy vấn SQL trên cơ sở dữ liệu PostgreSQL và trả về kết quả
Redis GetLấy giá trị từ cache Redis
Redis SetĐặt giá trị trong cache Redis

Modules

Chèn cơ sở dữ liệu

database.insert

Chèn dữ liệu vào các bảng cơ sở dữ liệu

Parameters:

NameTypeRequiredDefaultDescription
tablestringYes-Name of the table
dataobjectYes-Data to insert or update
database_typeselect (postgresql, mysql, sqlite)NopostgresqlDatabase type to connect to
connection_stringstringNo-Database connection string
hoststringNo-Database host
portnumberNo-Database port
databasestringNo-Database name
userstringNo-Database username
passwordstringNo-Database password
returningarrayNo-Columns to return after insert (PostgreSQL)

Output:

FieldTypeDescription
inserted_countnumberSố hàng đã chèn
returning_dataarraySố hàng đã chèn

Example: Insert single row

yaml
table: users
data: {"name": "John", "email": "john@example.com"}
database_type: postgresql

Truy vấn cơ sở dữ liệu

database.query

Thực thi truy vấn SQL trên cơ sở dữ liệu PostgreSQL, MySQL hoặc SQLite

Parameters:

NameTypeRequiredDefaultDescription
querystringYes-SQL query to execute
paramsarrayNo[]Parameters for parameterized queries (prevents SQL injection)
database_typeselect (postgresql, mysql, sqlite)NopostgresqlDatabase type to connect to
connection_stringstringNo-Database connection string
hoststringNo-Database host
portnumberNo-Database port
databasestringNo-Database name
userstringNo-Database username
passwordstringNo-Database password
fetchselect (all, one, none)NoallHow many rows to return from the query

Output:

FieldTypeDescription
rowsarrayCác hàng kết quả truy vấn
row_countnumberCác hàng kết quả truy vấn
columnsarrayCác hàng kết quả truy vấn

Example: Select with parameters

yaml
query: SELECT * FROM users WHERE status = $1
params: ["active"]
database_type: postgresql

Cập nhật cơ sở dữ liệu

database.update

Cập nhật dữ liệu trong các bảng cơ sở dữ liệu

Parameters:

NameTypeRequiredDefaultDescription
tablestringYes-Name of the table
dataobjectYes-Data to insert or update
whereobjectYes-WHERE conditions (column: value for equality)
database_typeselect (postgresql, mysql, sqlite)NopostgresqlDatabase type to connect to
connection_stringstringNo-Database connection string
hoststringNo-Database host
portnumberNo-Database port
databasestringNo-Database name
userstringNo-Database username
passwordstringNo-Database password

Output:

FieldTypeDescription
updated_countnumberSố hàng đã cập nhật

Example: Update user status

yaml
table: users
data: {"status": "active"}
where: {"id": 123}
database_type: postgresql

MongoDB Find

db.mongodb.find

Truy vấn tài liệu từ collection MongoDB

Parameters:

NameTypeRequiredDefaultDescription
connection_stringstringNo-MongoDB connection string (defaults to env.MONGODB_URL)
databasestringYes-Database name
collectionstringYes-Collection name
filterobjectNo{}MongoDB query filter (empty object {} returns all)
projectionobjectNo-Fields to include/exclude in results
limitnumberNo100Maximum number of documents to return
sortobjectNo-Sort order (1 for ascending, -1 for descending)

Output:

FieldTypeDescription
documentsarrayMảng các tài liệu khớp
countnumberMảng các tài liệu khớp

Example: Find all active users

yaml
database: myapp
collection: users
filter: {"status": "active"}
limit: 50

Example: Find with projection and sort

yaml
database: myapp
collection: orders
filter: {"total": {"$gt": 100}}
projection: {"_id": 0, "order_id": 1, "total": 1, "created_at": 1}
sort: {"created_at": -1}
limit: 20

MongoDB Insert

db.mongodb.insert

Chèn một hoặc nhiều tài liệu vào collection MongoDB

Parameters:

NameTypeRequiredDefaultDescription
connection_stringstringNo-MongoDB connection string (defaults to env.MONGODB_URL)
databasestringYes-Database name
collectionstringYes-Collection name
documentobjectNo-Document to insert (for single insert)
documentsarrayNo-Array of documents to insert (for bulk insert)

Output:

FieldTypeDescription
inserted_countnumberSố tài liệu đã chèn
inserted_idsarraySố tài liệu đã chèn

Example: Insert single document

yaml
database: myapp
collection: users
document: {"name": "John Doe", "email": "john@example.com", "created_at": "${timestamp}"}

Example: Insert multiple documents

yaml
database: myapp
collection: products
documents: [{"name": "Product A", "price": 19.99}, {"name": "Product B", "price": 29.99}]

Truy vấn MySQL

db.mysql.query

Thực thi truy vấn SQL trên cơ sở dữ liệu MySQL và trả về kết quả

Parameters:

NameTypeRequiredDefaultDescription
hoststringNo-Database host
portnumberNo3306Database port
userstringNo-Database username
passwordstringNo-Database password
databasestringNo-Database name
querystringYes-SQL query to execute
paramsarrayNo[]Parameters for parameterized queries (prevents SQL injection)

Output:

FieldTypeDescription
rowsarrayMảng các hàng kết quả dưới dạng đối tượng
row_countnumberMảng các hàng kết quả dưới dạng đối tượng
columnsarrayMảng các hàng kết quả dưới dạng đối tượng

Example: Select products

yaml
query: SELECT id, name, price FROM products WHERE stock > 0 ORDER BY price DESC LIMIT 20

Example: Parameterized query

yaml
query: SELECT * FROM orders WHERE customer_id = %s AND created_at > %s
params: ["${customer_id}", "2024-01-01"]

Truy vấn PostgreSQL

db.postgresql.query

Thực thi truy vấn SQL trên cơ sở dữ liệu PostgreSQL và trả về kết quả

Parameters:

NameTypeRequiredDefaultDescription
connection_stringstringNo-Database connection string
querystringYes-SQL query to execute
paramsarrayNo[]Parameters for parameterized queries (prevents SQL injection)

Output:

FieldTypeDescription
rowsarrayMảng các hàng kết quả dưới dạng đối tượng
row_countnumberMảng các hàng kết quả dưới dạng đối tượng
columnsarrayMảng các hàng kết quả dưới dạng đối tượng

Example: Select users

yaml
query: SELECT id, email, created_at FROM users WHERE active = true LIMIT 10

Example: Parameterized query

yaml
query: SELECT * FROM orders WHERE user_id = $1 AND status = $2
params: ["${user_id}", "completed"]

Redis Get

db.redis.get

Lấy giá trị từ cache Redis

Parameters:

NameTypeRequiredDefaultDescription
keystringYes-Redis key
hoststringNo-Redis host (from env.REDIS_HOST or explicit)
portnumberNo6379Redis port
dbnumberNo0Redis database number

Output:

FieldTypeDescription
valueanyGiá trị trả về
existsbooleanGiá trị trả về
keystringGiá trị trả về

Example: Get cached value

yaml
key: user:123:profile
host: ${env.REDIS_HOST}

Example: Get from remote Redis

yaml
key: session:abc
host: redis.example.com
port: 6379
db: 1

Redis Set

db.redis.set

Đặt giá trị trong cache Redis

Parameters:

NameTypeRequiredDefaultDescription
keystringYes-Redis key
valueanyYes-Value to store
ttlnumberNo-Time to live in seconds (optional)
hoststringNo-Redis host (from env.REDIS_HOST or explicit)
portnumberNo6379Redis port
dbnumberNo0Redis database number

Output:

FieldTypeDescription
successbooleanWhether the operation completed successfully
keystringKey identifier

Example: Cache user profile

yaml
key: user:123:profile
value: {"name": "John", "email": "john@example.com"}
ttl: 3600

Example: Set session data

yaml
key: session:abc
value: active
ttl: 1800
host: redis.example.com

Released under the Apache 2.0 License.