返回数据库常见问题
帮助中心 · 常见问题数据库1 分钟阅读

为什么应通过 params 传递 SQL 值?

调用 IaGenify SQL Database 时,应通过 `params` 字段传递查询值,而不要将值直接拼入 SQL 文本。参数化查询会将数据与语句结构分开,使重复查询更容易阅读和维护。

数据库

让值与 SQL 语法保持分离

查询通常会将固定指令与来自表单、工作流输入或先前数据库结果的值组合起来。请使用占位符构造 SQL 语句,并将对应值放入 `params`。

这样值会被当作数据处理,而不是 SQL 语法的一部分,也能减少引号和转义错误。

读取和写入都应采用这种方式:SQL Database 读取接受 `{ sql, params }`,execute 操作则接受 `action: "execute"` 以及 `sql` 和 `params`。

参数表示数据值,不能代替表名或列名;标识符和查询结构必须在 SQL 中明确选择。

检查语句和执行结果

使用连接的数据库所支持的参数格式,并按占位符顺序提供值。不要假设参数可以代替表名、列名或 SQL 关键字。应明确编写查询结构,并将变量数据放在参数中。

读取操作要检查返回的行,并确认筛选条件匹配了预期记录。execute 操作则根据情况检查行、变更数量或 lastRowId。

如果写入可能影响所有行,请有意添加 WHERE 条件;无范围限制的更新和删除需要显式设置 `all: true`。

返回数据库常见问题