# 1

# SQL 代码中的变量

变量(variables，有时称作占位符(placeholders))是 SQL 代码中的位置，在 SQL 代码执行时它们会用实际值替换。使用变量的好处是执行时间更快(因为 SQL 代码只解析一次)以及 SQL 注入脆弱性防护。

变量可以在任何 SQL 代码中使用，使用以下语法定义：

##<variable name>[::<variable type>[::NULL]]

注：

变量名 可以包含任何 SQL 标识字符，也可夹杂 `+-.|@?`这些字符(不允许有空格)

变量类型 可以是：`string`、`boolean`、`int`、`date`、`time`、`timestamp`、`guint`、`blob` 和 `binary`

可以附加`::NULL` 来指定变量可以取特殊的 `NULL` 值。

例子：

##name::string ##id::int::NULL ##sales@3::date::NULL ##customers@id::int