首页 > 解决方案 > 如何从mybatis insert foreach中获取单独的主键?

问题描述

如何从 mybatis insert foreach 中获取单独的主键?

您可以从下面的 Mapper.xml 中获取单独的值。

<insert id="insertDateResult">
    <selectKey keyProperty="TopDateSeq" resultType="Long" order="BEFORE">
        INSERT INTO [TopDate]
        ([searchKeywordSeq], [code], [message], [doDT])
        VALUES
        (#{searchKeywordSeq}, #{code}, #{message}, #{doDT})

        SELECT SCOPE_IDENTITY()
    </selectKey>
</insert>

但是,如何在 Spring Batch 中从下面的代码中获取单独的主键?

<insert id="insertRenkResult">
    INSERT INTO [TopResult]
    ([TopDateSeq], [rank], [category], [title], [name], [date], [uri], [description], [insertDT])
    VALUES
    <foreach collection="data.posts" item="item" index="index" separator=" , ">
        (#{TopDateSeq}, ${index+1}, #{item.category}, #{item.title}, #{item.name}, #{item.date}, #{item.uri}, #{item.description}, #{item.insertDT})
    </foreach>        
</insert>

数据库是MsSql。

标签: sql-serverspring-bootspring-batchprimary-keymybatis

解决方案


推荐阅读