list 를 my batis 에 전송 하여 추가, 수정 작업 을 진행 합 니 다.
7625 단어 mybatis
<insert id="insertCorresponding" parameterType="java.util.List">
insert into tableName(
id,a,b,c,
create_time,update_time, is_delete
)values
<foreach collection="list" item="item" index="index" separator=",">
(
#{item.id},#{item.a},#{item.b}, #{item.c},
#{item.createTime},#{item.updateTime}, #{item.isDelete}
)
</foreach>
</insert>
SQL 수정:
<!-- :allowMultiQueries=true , -->
<update id="updateDCCorresponding" parameterType="java.util.List">
<if test="list!=null">
<foreach collection="list" item="item" index="index" open="" close="" separator=";">
update tableName
<trim suffix="set" suffixOverrides=",">
<if test="item.a!=null and item.a!=''">
a=#{item.a},
</if>
<if test="item.b!=null and item.b!=''">
b=#{item.b},
</if>
<if test="item.c!=null and item.c!=''">
c=#{item.c},
</if>
<if test="item.updateTime!=null and item.updateTime!=''">
update_time=#{item.updateTime},
</if>
<if test="item.isDelete!=null and item.isDelete!=''">
is_delete=#{item.isDelete},
</if>
</trim>
where
id=#{item.id,jdbcType=VARCHAR}
</foreach>
</if>
</update>
jdbc Type 은 jdbc Type 원인 (네트워크) 을 추가 할 수 있 습 니 다. 필드 값 이 null 일 때 추가 해 야 합 니 다. 그렇지 않 으 면 오류 가 발생 했 습 니 다. my batis insert 의 빈 값 이 이상 하지만 pl / sql 에 서 는 오 류 를 알 리 지 않 습 니 다. 주요 원인 은 my batis 가 변환 할 수 없 기 때 문 입 니 다. 들 어 오 는 매개 변수의 필드 가 null 대상 이 대응 하 는 jdbc Type 형식 을 가 져 올 수 없 기 때 문 입 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
MySQL/마이바티스 | 동적 쿼리 사용A라는 서비스에 해당하는 테이블을 조인하고 조회하는 데 사용됩니다. 나중에 공통화를 위해 B 및 C 서비스도 추가됩니다. A, B, C 서비스는 모두 단일 쿼리에서 작동할 수 있도록 공통화되어야 합니다. 테이블에 각...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.