<insert id="addDBtask" parameterType="task" keyProperty="id" useGeneratedKeys="true">
<selectKey keyProperty="id" order="AFTER" resultType="int">
SELECT LAST_INSERT_ID() AS ID
</selectKey>
<selectKey keyColumn="taskno" order="BEFORE" resultType="String">
select max(taskno+1) from task
</selectKey>
</insert>
为什么会报错呢?望大神指教(Id为主键,task是任务编号,但数据库没设递增,只能自己处理。)
org.xml.sax.SAXParseException; lineNumber: 10; columnNumber: 73; 必须为元素类型 "selectKey" 声明属性 "keyColumn"。
楼主可以给出所使用mybatis的版本,
在版本3.2.7中
同一个insert只能有一个 SelectKeyGenerator,
selectKey标签中要有
keyProperty属性,
insert中含有 selectKey后 , useGeneratedKeys="true",没什么用了
我的回答可能有问题,
楼主可以自己去阅读 mybatis源码,找到答案
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。