String sql = "select top ? * from t_user where user_id not in (select top ? user_id from t_user)";
...
pstmt.setInt(1, pageSize);
pstmt.setInt(2, pageSize * (pageNo - 1));
抛出了 com.microsoft.sqlserver.jdbc.SQLServerException: Incorrect syntax near '@P0'.异常
...
pstmt.setInt(1, pageSize);
pstmt.setInt(2, pageSize * (pageNo - 1));
抛出了 com.microsoft.sqlserver.jdbc.SQLServerException: Incorrect syntax near '@P0'.异常
用字符串拼接确实可以,我只想用预编译来试下,也许top ?在预编译里真的不起作用
ROW_NUMBER ( ) OVER ( [ <partition_by_clause> ] <order_by_clause> )
把他转义(as rownum)
条件定为 rownum<?
top后面的问号用小括号包起来
select top (?) * from t_user
从来没用过top 不发表意见
用StringBuffer拼
StringBuffer buffer=new StringBuffer("select top").append.(参数1).append.(.....)
select top (?) * from t_user where user_id not in (select top(?)user_id from t_user)";
在此谢过