当前使用版本(必须填写清楚,否则不予处理)
3.2.0
该问题是怎么引起的?(最新版上已修复的会直接close掉)
调用service层的 saveOrUpdate()
重现步骤
1.使用数据库mysql
主键为userId,因主键为String类型,默认值为“0”
2.代码片段
```java
Member member= new Member();
member.setUserid(user.getUserId()); //userId为主键 user.getUserId()不为空
member.setName(user.getName());
member.setDepartment(departIds);
member.setOrders(orders.toString());
member.setPosition(user.getPosition());
member.setMobile(user.getMobile());
member.setGender(user.getGender().getCode());
member.setEmail(user.getEmail());
this.saveOrUpdate(member); // 插入字段无userId 对应字段
``
2.打印sql
INSERT INTO member ( gender, mobile, is_leader_in_dept, telephone, avatar, name, position, department, email ) VALUES ( ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )
报错信息
java.sql.SQLIntegrityConstraintViolationException: Duplicate entry '' for key 'PRIMARY'
Comment From: miemieYaho
给出你的复现demo