参数绑定方式¶
- 1 顺序绑定
在调用Exce,Query等函数时,按照SQL语句中占位符的顺序,依次填入参数到函数的参数中,并保证数量与SQL语句占位符数量相同,参数值直接用逗号分隔。
- 2 按名称绑定
通过SQL语句中占位符的名称进行参数绑定,需要生成NamedArg类型,有两种方式:
- 1) 人工定义NamedArg类型
type NamedArg struct {
Name string
Value interface{}
}
Name参数为SQL语句中占位符的名称,Value为待绑定的参数值。
- 2) 通过sql.Named() 函数返回NamedArg类型
使用sql.Named() 函数返回NamedArg类型的变量,并将该变量作为Exce,Query函数的参数。如sql语句:
var querySQL string = “ select col1 from test where col1 = :val ”
db.Query( querySQL, sql.Named(“val”, 1234))
小技巧
通过名称进行参数绑定要求SQL语句中的占位符名称以“冒号+字母”开头。