1.查看parameterType的类型是不是Java.util.List类型,如果是的话,看foreach 的collection属性是不是list2.看一下foreach里面的值有没有传递进来 

3.foreach里面的名称字段是否写错 

4.还有就是我用Mybatis的时候,用MySQL的值插入自动增长值,里面的key我在数据库中没有设置自动增长,然后我又用了selectkey,所以也会出现这种情况

我的情况是

<insert id="insetBatch">
        insert into MBudget
                 ( 
                 DepartmentID, 
                 AccountID, 
                 MonthMoney,
                 Month, 
                 CompanyID,
                 Year, 
                 CreateDate, 
                 CreateBy, 
                 ModifyDate, 
                 ModifyBy
                 )
        VALUES
             <foreach collection="list" item="mBudget" index="index" separator=",">
                 <trim prefix="(" suffix=")" suffixOverrides=",">
                #{mBudget.departmentID},=
                #{mBudget.accountID},
                #{mBudget.monthMoney},
                #{mBudget.month},
                #{mBudget.companyID2},
                #{mBudget.budgetDate},
                #{mBudget.createDate},
                #{mBudget.createBy},
                #{mBudget.modifyDate},
                #{mBudget.modifyBy},
                </trim>
            </foreach>
    </insert>

里面的字段名称写错了mBudget.companyID2

posted on 2018-05-10 14:11  2637282556  阅读(176)  评论(0编辑  收藏  举报