注册

Cause: dm.jdbc.driver.DMException: 无效的列

纯纯欲动 2022/06/07 2346 7

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM8
【操作系统】:win10
【CPU】:i7 9750
【问题描述】*:model对象:
@TableName(“MEMBER_TO_STORE”)
@Data
@AllArgsConstructor
@NoArgsConstructor
public class MemberToStoreBean {

@TableId(type = IdType.AUTO)
private Long id;
private Long userId;
private Long storeId;
private String isDelete;

}
使用mybatisplus自带的insert()方法新增数据:
@RequestMapping(“/DMDBTest2”)
public int insertInfo() {

    MemberToStoreBean memberToStoreBean = new MemberToStoreBean();
    memberToStoreBean.setUserId(101L);
    memberToStoreBean.setStoreId(101L);
    memberToStoreBean.setIsDelete("N");
    int i = memberToStoreMapper.insert(memberToStoreBean);
    return i;
}

报错:

Error updating database. Cause: dm.jdbc.driver.DMException: 无效的列

The error may exist in com/example/selftest/mapper/MemberToStoreMapper.java (best guess)

The error may involve com.example.selftest.mapper.MemberToStoreMapper.insert-Inline

The error occurred while setting parameters

SQL: INSERT INTO MEMBER_TO_STORE ( user_id, store_id, is_delete ) VALUES ( ?, ?, ? )

Cause: dm.jdbc.driver.DMException: 无效的列

; 无效的列; nested exception is dm.jdbc.driver.DMException: 无效的列] with root cause

dm.jdbc.driver.DMException: 无效的列
at dm.jdbc.driver.DBError.throwException(DBError.java:694) ~[DmJdbcDriver18.jar:- 8.1.2.114 - Production]
at dm.jdbc.b.b.o.E(MSG.java:556) ~[DmJdbcDriver18.jar:- 8.1.2.114 - Production]
at dm.jdbc.b.b.o.B(MSG.java:516) ~[DmJdbcDriver18.jar:- 8.1.2.114 - Production]
at dm.jdbc.b.b.o.A(MSG.java:497) ~[DmJdbcDriver18.jar:- 8.1.2.114 - Production]
at dm.jdbc.b.a.a(DBAccess.java:228) ~[DmJdbcDriver18.jar:- 8.1.2.114 - Production]
at dm.jdbc.b.a.b(DBAccess.java:906) ~[DmJdbcDriver18.jar:- 8.1.2.114 - Production]
at dm.jdbc.b.a.a(DBAccess.java:777) ~[DmJdbcDriver18.jar:- 8.1.2.114 - Production]

但是使用mybatis的xml文件手写sql的方式则不报错:
@RequestMapping(“/DMDBTest3”)
public MemberToStoreBean insertInfo1() {

    MemberToStoreBean memberToStoreBean = new MemberToStoreBean();
    memberToStoreBean.setUserId(112L);
    memberToStoreBean.setStoreId(112L);
    memberToStoreBean.setIsDelete("N");
    memberToStoreMapper.insert1(memberToStoreBean);
    return memberToStoreBean;
}
<insert id="insert1" parameterType="com.example.selftest.bean.MemberToStoreBean">
    insert into member_to_store (user_id, store_id, is_delete)
    values (#{userId},#{storeId},#{isDelete})
    <selectKey resultType="java.lang.Long" keyProperty="id">
        SELECT @@IDENTITY AS ID
    </selectKey>
</insert>
回答 0
暂无回答
扫一扫
联系客服