跳到主要内容

字面量与参数

字面量与参数

书写方式与边界
字符串单引号或双引号包围,例如 'book'"book";同类内部引号可双写,例如 'reader''s book'。复杂文本优先使用参数绑定。
数值整数、小数和科学计数法,例如 100.251e3。一般值位置的负数通过参数绑定;数值 DEFAULT 单独支持正负号。
布尔值TRUEFALSE,不能使用字符串 'true' 代替布尔值。
空值NULL;是否接受由字段约束、参数位置及服务端接口决定。
列表方括号列表,例如 [1, 2]。元素类型、嵌套及空列表是否合法取决于使用位置。
值参数?;PreparedStatement 从 1 开始编号,按整段 SQL 的出现顺序绑定。

WHERE 参数通过 SDK filterTemplateValues 与过滤表达式分离传递;向量、写入行和命令选项进入对应请求字段。绑定值不需要添加 SQL 引号或预先转义。'?' 是字符串,不是参数;也不能用一个字符串参数代替整段 SQL 条件。

SELECT id, title FROM books WHERE id IN (?, ?) LIMIT ?;
UPDATE books SET title = ? WHERE id = ?;

上例共 5 个参数:查询主键占前两项,第 3 项为查询上限,第 4 项为新标题,第 5 项为更新主键。前一条语句结束不会重置参数序号。可绑定的具体选项和类型见各命令章节。