参数化查询时,如果参数类型和数据库的不匹配,将使索引失效,进行全表检索。类型对应如下图:

框架里要注意的几点:
1、SqlMap里的参数类型 不要用不匹配的类型,如下图:
此处用String类型,在数据库里传进去的类型是 NVarchar


此处的地方是日期类型,应该用DateTime类型,如下图:


2、如果要传varchar类型,则需写成如下图的格式: 或者带上参数长度 `String,AnsiString,10`

官方解释是

3、如果SqlMap里的参数不指定类型,则会采用外部的赋值的时候的类型。


4、在实体里面string类型如果不指定类型,则默认是varchar ,如果需要其他类型可以如下图指定方式:

可以看到数据库跟踪器里 这个类型变成了 nvarchar 类型!! 如下图
