【mybatis】mysql級聯更新兩個表或多張表的數據

例如 info表和relation表有關聯,如今要在一個sql語句中同時級聯更新兩張表的數據sql

update security_code_info info LEFT JOIN security_code_relation re ON re.security_code = info.security_code set info.code_stock_state = 9, info.code_state = 9, info.code_qa_state = 9, info.code_act_date = '2018-01-01', info.receipt_date = '2018-01-01', re.receipt_uid = '111', re.depot_id = '111'
where info.security_code = '100032014010987164';

 

批量操做更新級聯操做的sql:app

<update id="receipt" parameterType="com.pisen.cloud.luna.ms.security.code.base.mapper.beans.ReceiptBean">
        update security_code_info info LEFT JOIN security_code_relation re ON re.security_code = info.security_code set info.code_stock_state = ${@com.pisen.cloud.luna.ms.security.code.base.domain.SecurityCodeInfo@IN_STOCK}, info.code_state = ${@com.pisen.cloud.luna.ms.security.code.base.domain.SecurityCodeInfo@ACTIVATION_EN}, info.code_qa_state = ${@com.pisen.cloud.luna.ms.security.code.base.domain.SecurityCodeInfo@DEFAULT}, info.code_act_date = #{receiptAndActDate}, info.receipt_date = #{receiptAndActDate}, re.receipt_uid = #{receiptUid}, re.depot_id = #{depotUid} where info.security_code in
        <foreach collection="scList" index="index" close=")" open="(" item="item" separator=","> #{item} </foreach>

    </update>
相關文章
相關標籤/搜索