java.sql.SQLException: 無效的列索引


java.sql.SQLException: 無效的列索引

“無效的列索引”其實是個低級的錯誤,原因無非幾個:

 

1、sql串的?號數目和提供的變量數目不一致:

例如:jdbcTemplate.update(sql, new Object[] {newState,oldState});

如果sql里面有1個?號,Object[]送了2個,就會報錯。

還有一種特殊的情況:SQL語句里面沒有?參數,但是你確傳了空param進去,這時需要去掉參數數組就可以了

 

 

2、sql串里的?號書寫不正確

英文?和中文?有時難以區分。

 

3、sql串的?號用''括了起來。

例如:sql="UPDATE abc SET abc.name='?' WHERE abc.id='?'";

把''去掉就可以了。

 

4,遇到這種情況select*from user where   info   like   %?%;  

雖然這是sql的寫法,但是在jdbc 中需要改成 select*from user where   info   like   ?;

如ps.setString(“%”+value+“%”);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM