Mybatis-plus出现数据库id很大或者为负数的解决

目录
  • 问题复原
  • 原因
  • 如何解决
  • 小结

问题复原

原因

数据库设置了自增主键

但是代码没有设置TableId

然后在新增的时候就出现了id很大或者负数。

如何解决

代码设置TableId

 @TableId(value = "id", type = IdType.AUTO)
 private Integer id;

设置数据库连接

重启后台

把这个改成正常的数字,删除原来的数据,然后设置成1,或者改成目前最大的一个数字,比如正常的是最大为2,现在设置成3。

然后就数据库就正常了!

小结

以上就是对使用Mybatis-plus为什么出现数据库id很大或者为负数简单的概述,这种错误其实是在警醒我们要时刻注意自己代码的规范和数据库直接的联系。更多相关Mybatis-plus 数据库id内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • mybatis插入数据后如何返回新增数据的id值

    目录 1.自增主键情况下插入数据获取自增主键值 2.主键非自增的情况下获取主键值 3.keyColumn作用 总结 1.自增主键情况下插入数据获取自增主键值 mybatis为我们提供了一个方法,能够插入数据时获取自动生成的值,并且把取的值赋值给实体类的某一属性 设置方法: 要求:主键必须是自增的 <insert id = "insert" useGeneratedKeys = "true" keyProperty = "id">  

  • Mybatis-plus插入后返回元素id的问题

    目录 mybatis-plus插入后返回插入元素的id 1.mybatis原生 2.使用mybatis-plus注解 3.使用mybatis-plus提供的insert Mybatis-plus设置id自增,插入数据 没修改前 所以修改后 总结 mybatis-plus插入后返回插入元素的id 有三种方法,第三种最简单. 不想麻烦的直接看第三种 1.mybatis原生 mybaits-plus要使用mybatis原生需要一下配置,指定下mapper文件的位置就好 mybatis-plus:  

  • Mybatis执行插入语句后并返回主键ID问题

    目录 1.MySQL数据库设置ID自增情况 2.使用UUID自增主键 3.mybatis-plus在执行插入语句后返回自定义ID 总结 我们知道JDBC可以实现插入语句后返回主键Id,那mybatis可以实现吗? 答案是肯定的. 1.MySQL数据库设置ID自增情况 <insert id="insertUser" parameterType="com.crush.mybatisplus.entity.User"> INSERT INTO tb_user

  • Mybatis-plus出现数据库id很大或者为负数的解决

    目录 问题复原 原因 如何解决 小结 问题复原 原因 数据库设置了自增主键 但是代码没有设置TableId 然后在新增的时候就出现了id很大或者负数. 如何解决 代码设置TableId @TableId(value = "id", type = IdType.AUTO) private Integer id; 设置数据库连接 重启后台 把这个改成正常的数字,删除原来的数据,然后设置成1,或者改成目前最大的一个数字,比如正常的是最大为2,现在设置成3. 然后就数据库就正常了! 小结 以上

  • 使用vue打包时vendor文件过大或者是app.js文件很大的问题

    第一次使用vue2.0开发,之前都是用的angular1.x.在使用vue-cli脚手架打包后(UI用的Element-ui),发现vendor文件很大,将近1M左右..后来翻阅资料才明白,原来webpack把所有的库都打包到了一起,导致文件很大. 我的解决办法: 1.把不常改变的库放到index.html中,通过cdn引入,比如下面这样: 然后找到build/webpack.base.conf.js文件,在 module.exports = { } 中添加以下代码 externals: { '

  • Intellij Mybatis连接Mysql数据库

    有好一段时间没有学习新东西了,过了个十月一感觉事情还是越早做越好,废话不多说了,说一下用mybatis连接MySQL数据库,上一篇写了jdbc测试,我的数据库表还是原来的.由于从网上查的资料大部分都是eclipse,由于我是做Android开发的,习惯了ide,所以就硬着头皮来了,中间其实遇到过好多问题. 看一下工程结构 先说一下Java代码,dao是查询接口,model是ben和对应的查询语句的xml,我感觉这样有点不好,user.xml放在dao里面比较好,等理解了就知道了,由于我是初学者所

  • 数据分析数据库ClickHouse在大数据领域应用实践

    目录 一.序言 1.应用场景 2.学习姿势 二.知识储备 (一)磁盘IO 1.数据量与查询效率 (二)性能对比 1.磁盘工作机制 2.按行(列)存储 三.基础知识 (一)表结构 1.排序 2.主键 3.默认值 (二)表引擎 1.MergeTree 2.ReplacingMergeTree 3.SummingMergeTree (三)内置函数 1.格式化日期 2.哈希函数 3.日期函数 四.安装与配置 (一)安装 (二)配置 1.正则替换注释 2.服务端配置文件 五.小结 一.序言 面向大数据量查

  • spring集成mybatis实现mysql数据库读写分离

    前言 在网站的用户达到一定规模后,数据库因为负载压力过高而成为网站的瓶颈.幸运的是目前大部分的主流数据库都提供主从热备功能,通过配置两台数据库主从关系,可以将一台数据库的数据更新同步到另一台服务器上.网站利用数据库的这一功能,实现数据库读写分离,从而改善数据库负载压力.如下图所示: 应用服务器在写数据的时候,访问主数据库,主数据库通过主从复制机制将数据更新同步到从数据库,这样当应用服务器读数据的时候,就可以通过从数据库获得数据.为了便于应用程序访问读写分离后的数据库,通常在应用服务器使用专门的数

  • Spring+Mybatis 实现aop数据库读写分离与多数据库源配置操作

    在数据库层面大都采用读写分离技术,就是一个Master数据库,多个Slave数据库.Master库负责数据更新和实时数据查询,Slave库当然负责非实时数据查询.因为在实际的应用中,数据库都是读多写少(读取数据的频率高,更新数据的频率相对较少),而读取数据通常耗时比较长,占用数据库服务器的CPU较多,从而影响用户体验.我们通常的做法就是把查询从主库中抽取出来,采用多个从库,使用负载均衡,减轻每个从库的查询压力. 废话不多说,多数据源配置和主从数据配置原理一样 1.首先配置  jdbc.prope

  • Spring Boot整合MyBatis连接Oracle数据库的步骤全纪录

    前言 本文主要分享了Spring Boot整合MyBatis连接Oracle数据库的相关内容,下面话不多说了,直接来详细的步骤吧. 步骤如下: 1.Spring Boot项目添加MyBatis依赖和Oracle驱动: <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <ver

  • 总结Docker不适合部署数据库的7大原因

    近2年Docker非常的火热,各位开发者恨不得把所有的应用.软件都部署在Docker容器中,但是您确定也要把数据库也部署的容器中吗?这个问题不是子虚乌有,因为在网上能够找到很多各种操作手册和视频教程,这里整理了一些数据库不适合容器化的原因供大家参考,同时也希望大家在使用时能够谨慎一点. 目前为止将数据库容器化是非常不合理的,但是容器化的优点相信各位开发者都尝到了甜头,希望随着技术的发展能够更加完美的解决方案出现. Docker不适合部署数据库的7大原因 1.数据安全问题 不要将数据储存在容器中,

  • 如何基于mybatis框架查询数据库表数据并打印

    一.需求说明 使用mybatis框架查询数据库user表数据并打印到控制台上 二.数据库数据准备 -- 创建用户表 create table user ( id int primary key auto_increment, username varchar(20) not null, birthday date, sex char(1) default '男', address varchar(50) ); -- 添加用户数据 insert into user values (null, '孙

  • 如何使用MyBatis Plus实现数据库curd操作

    目录 1.mp是什么 2.mp入门 2.1.curd 2.2.自动填充 3.乐观锁 3.1.场景 4.MP查询 4.1.多个ID批量查询 4.2.简单条件查询(Map) 4.3.分页查询 5.MP删除 5.1.物理删除和逻辑删除 6.条件构造器和常用接口 MyBatis-Plus实现数据库curd操作 1.mp是什么 MyBatis-Plus(简称MP)是一个MyBatis 的增强工具,在MyBatis,的基础上只做增强不做改变,为简化开发.提高效率而生. 润物无声, 只做增强不做改变,引入它不

随机推荐