当前位置:网站首页>mapper.xml文件中的注释
mapper.xml文件中的注释
2022-07-05 14:49:00 【蓝天⊙白云】
mapper.xml文件中的注释
注释方式
在mapper.xml文件中,注释方式为<!--existence of query content-->
,直接采用Java代码方式的注释/*existence of query content*/
会报错,尤其是在SQL语句中出现这种注释方式时。
‘无效的列索引’bug和解决
昨天在导入数据时需要对数据进行验证,在mapper文件中对表中数据进行查询,将作废sql注释时选择了Java方式,此时会报错。
<select id="getSeqNameCount" parameterClass="java.util.HashMap" resultClass="java.lang.Integer">
SELECT COUNT(*) COUN FROM tablename A
WHERE A.id=#id# and A.name=#name#
/*SELECT * FROM tablename A WHERE A.id=#id# and A.name=#name#*/
</select>
在解析时由于会将参数位置解析为占位符‘?’,所以此时以下的sql会在后台解析成如下,但是传入的参数只有两个,所以这个时候会报 “Caused by: java.sql.SQLException: 无效的列索引”,因为传入的参数和占位符数量不等。
SELECT COUNT(*) COUN FROM tablename A WHERE A.id=? and A.name=?
/*SELECT * FROM tablename A WHERE A.id=? and A.name=?/
总结
1、mapper.xml文件中注释方式为<!--existence of query content-->
;
2、 “Caused by: java.sql.SQLException: 无效的列索引”错误一般由sql语句中占位符引起:
1传入参数数量不等与占位符的数量;
2SQL语句中的占位符?是中文版;
3SQL语句中的占位符?被放在字符串内;
边栏推荐
猜你喜欢
Ctfshow web entry command execution
CPU design related notes
有一个强大又好看的,赛过Typora,阿里开发的语雀编辑器
Microframe technology won the "cloud tripod Award" at the global Cloud Computing Conference!
Select sort and bubble sort
12 MySQL interview questions that you must chew through to enter Alibaba
Dark horse programmer - software testing -10 stage 2-linux and database -44-57 why learn database, description of database classification relational database, description of Navicat operation data, de
[detailed explanation of Huawei machine test] character statistics and rearrangement
华为哈勃化身硬科技IPO收割机
Ctfshow web entry information collection
随机推荐
【jvm】运算指令
How to choose the appropriate certificate brand when applying for code signing certificate?
Photoshop plug-in action related concepts actionlist actiondescriptor actionlist action execution load call delete PS plug-in development
Crud de MySQL
Anaconda uses China University of science and technology source
Drive brushless DC motor based on Ti drv10970
当代人的水焦虑:好水究竟在哪里?
我想咨询一下,mysql一个事务对于多张表的更新,怎么保证数据一致性的?
启牛证券账户怎么开通,开户安全吗?
社区团购撤城“后遗症”
leetcode:881. lifeboat
Can I pass the PMP Exam in 20 days?
【NVMe2.0b 14-9】NVMe SR-IOV
Want to ask the big guy, is there any synchronization from Tencent cloud Mysql to other places? Binlog saved by Tencent cloud MySQL on cos
美团优选管理层变动:老将刘薇调岗,前阿里高管加盟
黑马程序员-软件测试-10阶段2-linux和数据库-44-57为什么学习数据库,数据库分类关系型数据库的说明Navicat操作数据的说明,Navicat操作数据库连接说明,Navicat的基本使用,
Run faster with go: use golang to serve machine learning
外盘入金都不是对公转吗,那怎么保障安全?
MongDB学习笔记
MySQL之CRUD