‘@P1’ 附近有语法错误解决方案
用此方法肯定能够解决问题 但是需要各位好好思索
今天我在运行一条SQL语句时发现报错
select * from (select ROW_NUMBER() over(order by ? ?) rownum,* FROM Shopping where shopType=?)
然后我反复在代码中测试错误,测试了两个小时发现代码逻辑上完全没有任何有误的
这让我非常苦恼 于是我在网上搜索办法
发现了prepareStatement预编译对象只能设置sql语句中的值
而不能设置参数 而我的sql语句(order by ? ?) 第一个?号是列名 第二个是排序的方式
两个都是参数 所以预编译对象无法给问号设置值
在这里只能直接凭借动态数据去进行拼接
select * from (select ROW_NUMBER() over(order by “+sort+” “+xu+”) rownum,* FROM Shopping where shopType=?
如果帮您解决了问题 希望您能点个关注 蟹蟹
本文详细介绍了在使用SQL预编译对象时遇到的问题,特别是在处理带有多个参数的复杂查询时。通过实例演示了解决方案,即如何通过动态数据拼接来克服预编译对象的限制。

4254

被折叠的 条评论
为什么被折叠?



