低代码工作流中的 SQL 自定义节点用于对指定数据库进行常见的 SQL 操作。
注意
数据库节点已更名为 SQL 自定义节点。
SQL 自定义节点可以连接智能体或应用中指定的数据库,对数据库进行新增、查询、编辑、删除等常见操作,实现动态的数据管理。SQL 自定义节点需要指定待操作的数据库表和对应的 SQL 语句,支持通过自然语言智能生成 SQL 语句。
注意
低代码工作流还支持通过图形化方式进行数据的增、删、改、查操作,当你不熟悉 SQL 语句时,可使用以下节点操作数据库。
节点的输入参数,即 SQL 语句中需要使用的参数,可以设置为固定值,也可以引用上游节点的输出参数。
在数据表区域,你需要根据页面提示添加需要操作的数据表,每个 SQL 自定义节点仅支持操作一张数据表。
在调试期间,SQL 自定义节点显示和使用的是数据表的测试数据,而非数据库中的真实线上数据。单击数据表或单击查看数据,弹出数据表的详情页,可查看此数据表的测试数据。你可以手动添加或修改测试数据,也可以试运行 SQL 自定义节点,通过 SQL 语句插入或修改数据。
在 SQL 区域输入需要对数据表执行的 SQL 操作,兼容 SQL92 的常用语法。SQL 语句中可以引用SQL 自定义节点输入参数中定义的变量,引用格式为 {{变量名}}。
注意
每个 SQL 自定义节点中仅支持添加一条 SQL 语句。
你可以自行编写 SQL 语句,也可以根据页面提示由 AI 帮你生成一段 SQL 语句。单击自动生成,并在弹出的页面中使用自然语言描述要执行的操作,单击自动生成生成 SQL 语句,确认无误后单击使用Use。
SQL 自定义节点的输出参数是 SQL 执行后的输出内容,固定为以下四项:
其中isSuccess、errorBody 仅在节点的异常处理方式设置为返回设定内容或执行异常流程时返回,用于节点执行异常时传递详细信息。
默认情况下,节点运行超时、运行异常时,工作流会中断,工作流调试界面或 API 中会返回错误信息。你也可以手动设置节点运行超时等异常情况下的处理方式,例如超时时间、是否重试、是否跳转异常分支等。
|
异常处理设置 |
说明 |
|---|---|
|
超时时间 |
超时时间指节点运行的最大耗时,如果超过此时长,则判断为节点运行超时。 |
|
重试次数 |
节点运行超时或异常时,默认不重试,你也可以设置为重试 1 次。 |
|
异常处理方式 |
节点运行超时或异常时,默认中断工作流。你也可以手动修改此节点的异常处理方式:
|
你可以在工作流中添加大模型节点和 SQL 自定义节点,实现动态生成 SQL 语句并对数据库执行 SQL 操作。例如在工作流中添加大模型节点,设定其角色为专业的 SQL 语句生成助手,然后在 SQL 自定义节点中,引用大模型生成的 SQL 语句。当你输入自然语言描述的数据库操作需求(获取 reading_notes 数据表中的所有数据)时,大模型节点会迅速将其精准转换为纯 SQL 语句 SELECT * FROM reading_notes;,SQL 自定义节点则会根据该语句执行相应的数据库操作。
|
节点类型 |
说明 |
示例 |
|---|---|---|
|
开始 |
工作流的起始节点,添加变量 |
|
|
大模型 |
添加大模型节点,用于将自然语言描述的数据库操作转换为 SQL 语句。
|
|
|
SQL 自定义 |
添加 SQL 自定义节点,执行数据库操作。
|
|
|
结束 |
工作流的结束节点,添加变量 |
|
调试工作流时,SQL 自定义节点使用的是临时的测试数据,线上执行工作流时使用的是数据库中的真实数据,所以统计查询的结果会有差异。
GROUP_CONCAT 是 MySQL 中的一个聚合函数,用于将多行数据连接成一行字符串。MySQL 对该函数的输出长度有一个默认的限制,这个限制由系统变量 group_concat_max_len 控制,在扣子编程中,这个限制为 1024 字节且不可调整。如果 GROUP_CONCAT 合并后的结果超过这个长度,会自动截断超出部分。
不建议在 SQL 节点中处理类似的拼接、计算逻辑,你可以选择用 SQL 节点查询数据,再通过代码节点去拼接最终结果。