java 汉字 %ms对不齐_Java-MS SQL异常:“ @ P0”附近的语法不正确

我正在使用MS SQL查询数据库,由于某种原因,我收到以下错误:com.microsoft.sqlserver.jdbc.SQLServerException: Incorrect syntax near '@P0',即使此'P0'在我的语法中不存在...

我已经读到有人遇到了同样的问题,但是他们使用的是存储过程,而我没有使用某些东西,所以我看不出他的解决方案对我有什么用。 (他的解决方案是在过程调用周围添加花括号{}。

无论如何,下面我已经粘贴了相关代码。 真希望有人能对此有所帮助,感到很沮丧。

PreparedStatement stmt = null;

Connection conn = null;

String sqlQuery = "SELECT TOP ? \n"+

"z.bankAccountNo, \n"+

"z.statementNo, \n"+

"z.transactionDate, \n"+

"z.description, \n"+

"z.amount, \n"+

"z.guid \n"+

"FROM \n"+

"( \n"+

"select \n"+

"ROW_NUMBER() OVER (ORDER BY x.transactionDate, x.statementNo) AS RowNumber, \n"+

"x.transactionDate, \n"+

"x.statementNo, \n"+

"x.description, \n"+

"x.amount, \n"+

"x.bankAccountNo, \n"+

"x.guid \n"+

"FROM \n"+

"( \n"+

"SELECT \n"+

"a.bankAccountNo, \n"+

"a.statementNo, \n"+

"a.transactionDate, \n"+

"a.description, \n"+

"a.amount, \n"+

"a.guid \n"+

"FROM BankTransactions as a \n"+

"LEFT OUTER JOIN BankTransactionCategories as b \n"+

"ON a.category = b.categoryCode \n"+

"WHERE b.categoryCode is null \n"+

") as x \n"+

") as z \n"+

"WHERE (z.RowNumber >= ?)";

stmt = conn.prepareStatement(sqlQuery);

stmt.setInt(1, RowCountToDisplay);

stmt.setInt(2, StartIndex);

ResultSet rs = null;

try{

rs = stmt.executeQuery();

} catch (Exception Error){

System.out.println("Error: "+Error);

}

提前致谢!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值