当前使用版本(必须填写清楚,否则不予处理)
3.3.0
该问题是怎么引起的?(最新版上已修复的会直接close掉)
当id的类型设置为IdType.Auto时,insert一条记录,并且该记录中指定了id,但是最终插入数据库中的是数据库自动生成的,不是指定的。看了代码,发现当时Auto时,会忽略id这列。
我的需求是:既保证插入的记录没有id时,使用数据库自增,当指定id时,使用指定的id。不知道如何配置,还是说当前版本没法满足?
重现步骤
报错信息
Comment From: qmdx
auto 设置并且你数据库表需设置自增
Comment From: helloqhx
我数据库设置了自增,现在的问题是,当我指定id时,没有给我插入我的id
Comment From: helloqhx
怎么就关了呢?
Comment From: miemieYaho
自增不支持指定id时不自增
Comment From: helloqhx
我看了一下代码,如果我重写Insert的实现:
把id当作其他非key字段的话,使用
<if test="id != null">id,</if>
<if test="id != null">#{id},</if>
这样做的话,不知道会不会有什么潜在的问题。
我测试了一下,我的需求是可以满足了。
Comment From: lehug
为什么指定id的时候,不按照指定的来呢?