'@P0'附近有语法错误

来源:互联网 发布:ug软件下载 编辑:程序博客网 时间:2024/04/18 12:32

问题描述:

sqlserver中分页查询使用“Select Top ? * From 表名 Where 列名 = ?”的SQL语句,此时的问号是PreparedStatement预编译对象的参数占位符,需要使用setXX()系列方法对其赋值后再执行。

但是,Top后面是不允许使用问号占位符的,‘@P0’附近有语法错误就是由此引起的。

解决方案:

将Top后面的占位符改为具体数值,或者拼接字符串。

如:

“Select Top ‘” + num + “’ * From 表名 Where 列名 = ?”

上述num为String类型的变量。where调价你中的其他占位符不受此约束。

0 0