我需要在插入时在同一个表中填充 2 个不同的 id,我正在尝试使用 selectKey 从 Oracle 序列中提取值来填充 id。
使用一个 id 和 selectKey 我没有问题,但是当我添加第二个 selectKey 时,该值似乎没有被填充(参见下面的插入节)。
是否有可能做到这一点?还是我需要创建另一个查询来更新第二个 ID?
谢谢
<insert id="create" parameterClass="MyObject">
<selectKey keyProperty="id" resultClass="long" type="pre">
<include refid="sequences.myObjectId" />
</selectKey>
<selectKey keyProperty="mySecondId" resultClass="long" type="pre">
<include refid="sequences.mySecondId" />
</selectKey>
INSERT INTO MY_OBJECT_TABLE
(
MY_OBJECT_ID,
MY_SECOND_ID,
...
)
VALUES
)
#id#,
#mySecondId#,
...
)
</insert>