报错信息:
原因是将数据库表的id更改成了uid,之前表的主键为id
org.springframework.dao.DataIntegrityViolationException:
Error updating database. Cause: java.sql.SQLException: Field 'uid' doesn't have a default value
The error may exist in com/atguigu/mybatisplus/mapper/UserMapper.java (best guess)
The error may involve com.atguigu.mybatisplus.mapper.UserMapper.insert-Inline
The error occurred while setting parameters
SQL: INSERT INTO t_user ( name, age, email ) VALUES ( ?, ?, ? )
Cause: java.sql.SQLException: Field 'uid' doesn't have a default value
; Field 'uid' doesn't have a default value; nested exception is java.sql.SQLException: Field 'uid' doesn't have a default value
解决方式:
java
package com.atguigu.mybatisplus.pojo;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
/**
* ClassName: User
* Package: com.atguigu.mybatisplus.pojo
* Description:
*
* @Author: start
* @Create 2025-12-07 17:16
* @Version: 1.0
*/
//@NoArgsConstructor
//@AllArgsConstructor
//@Getter
//@Setter
//@EqualsAndHashCode
@Data
// 设置实体类所对应的表名
//@TableName("t_user")
public class User {
// 将属性所对应的字段指定为主键
@TableId
private Long uid;
private String name;
private Integer age;
private String email;
}