问题
springboot项目学习过程中,遇到 mybatis的xml中 sql 输入参数检查了没问题,但一直报 参数个数多了 这个错。
sql中用了--
注释了多行
报如下错:
java.sql.SQLException: Parameter index out of range (7 > number of parameters, which is 6).
打印sql日志,看到sql语句里就出现了 “--
”,并没有识别为注释
Preparing: INSERT INTO user ( id , user_name , create_user_id , create_user_name , create_time , update_user_id , update_user_name , update_time ) VALUES ( -- ?, -- ?, -- ?, ?, ?, ?, ?, now(3), ?, ?, now(3) )
解决办法
应该使用<!-- -->
使用 <!---->
的好处:
- 绝对可靠
- 跨不同库,不需要区分是什么类型的数据库
- 注释内容不会在sql中出现 (Debug打印的日志)
另外
下边这样 “/* */
” 注释也不行。