Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >h2从1.4.200升级到2.1.212

h2从1.4.200升级到2.1.212

作者头像
阿超
发布于 2022-08-21 06:48:08
发布于 2022-08-21 06:48:08
58800
代码可运行
举报
文章被收录于专栏:快乐阿超快乐阿超
运行总次数:0
代码可运行

如果直接修改GAV版本号

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
    <version>2.1.212</version>
</dependency>

你会获得一堆报错

下面是我的ddl

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
drop table if exists user_info;
create table if not exists user_info(
    id    BIGINT(20) AUTO_INCREMENT NOT NULL COMMENT '主键ID',
    name  VARCHAR(30)               NULL DEFAULT NULL COMMENT '姓名',
    age   INT(11)                   NULL DEFAULT NULL COMMENT '年龄',
    email VARCHAR(50)               NULL DEFAULT NULL COMMENT '邮箱',
    PRIMARY KEY (id)
);

drop table if exists user_role;
create table if not exists user_role(
    id      BIGINT(20) AUTO_INCREMENT NOT NULL COMMENT '主键ID',
    user_id BIGINT(20)                NULL DEFAULT NULL COMMENT '用户ID',
    role_id BIGINT(20)                NULL DEFAULT NULL COMMENT '角色ID',
    PRIMARY KEY (id)
);


drop table if exists role_info;
create table if not exists role_info(
    id        BIGINT(20) AUTO_INCREMENT NOT NULL COMMENT '主键ID',
    role_name VARCHAR(30)               NULL DEFAULT NULL COMMENT '角色名称',
    PRIMARY KEY (id)
);

需要修改为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
drop table if exists user_info;
create table if not exists user_info
(
    id    BIGINT GENERATED BY DEFAULT AS IDENTITY NOT NULL COMMENT '主键ID',
    name  VARCHAR(30)                             NULL DEFAULT NULL COMMENT '姓名',
    age   INT                                     NULL DEFAULT NULL COMMENT '年龄',
    email VARCHAR(50)                             NULL DEFAULT NULL COMMENT '邮箱',
    PRIMARY KEY (id)
);

drop table if exists user_role;
create table if not exists user_role
(
    id      BIGINT GENERATED BY DEFAULT AS IDENTITY NOT NULL COMMENT '主键ID',
    user_id BIGINT                                  NULL DEFAULT NULL COMMENT '用户ID',
    role_id BIGINT                                  NULL DEFAULT NULL COMMENT '角色ID',
    PRIMARY KEY (id)
);


drop table if exists role_info;
create table if not exists role_info
(
    id        BIGINT GENERATED BY DEFAULT AS IDENTITY NOT NULL COMMENT '主键ID',
    role_name VARCHAR(30)                             NULL DEFAULT NULL COMMENT '角色名称',
    PRIMARY KEY (id)
);

然后是初始化数据,自增的话,就不要再传入id

原先的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
DELETE
FROM user_info;

INSERT INTO user_info (id, name, age, email)
VALUES (1, 'Jone', 18, 'test1@baomidou.com'),
       (2, 'Jack', 18, 'test2@baomidou.com'),
       (3, 'Tom', 28, 'test3@baomidou.com'),
       (4, 'Sandy', 21, 'test4@baomidou.com'),
       (5, 'Billie', 24, 'test5@baomidou.com');

DELETE
FROM user_role;

INSERT INTO user_role (id, user_id, role_id)
VALUES (1, 1, 1),
       (2, 1, 2),
       (3, 2, 1),
       (4, 2, 3),
       (5, 3, 1),
       (6, 4, 1),
       (7, 4, 2),
       (8, 5, 1),
       (9, 5, 2),
       (10, 5, 3);

DELETE
FROM role_info;

INSERT INTO role_info (id, role_name)
VALUES (1, 'admin'),
       (2, 'user'),
       (3, 'guest');

修改后:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
DELETE
FROM user_info;

INSERT INTO user_info (name, age, email)
VALUES ('Jone', 18, 'test1@baomidou.com'),
       ('Jack', 18, 'test2@baomidou.com'),
       ('Tom', 28, 'test3@baomidou.com'),
       ('Sandy', 21, 'test4@baomidou.com'),
       ('Billie', 24, 'test5@baomidou.com');

DELETE
FROM user_role;

INSERT INTO user_role (user_id, role_id)
VALUES (1, 1),
       (1, 2),
       (2, 1),
       (2, 3),
       (3, 1),
       (4, 1),
       (4, 2),
       (5, 1),
       (5, 2),
       (5, 3);

DELETE
FROM role_info;

INSERT INTO role_info (role_name)
VALUES ('admin'),
       ('user'),
       ('guest');

成功运行

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-07-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
mybatis-plus测试
mybatis-plus快速测试,文档:https://baomidou.com/pages/b7dae0/
阿超
2022/08/21
3900
mybatis-plus测试
hsqldb
HSQLDB - 100% Java Database,其最大特点是百分百Java的数据库
阿超
2023/02/20
4370
hsqldb
MySQL数据表操作全指南:建表、修改、删除一步到位【MySQL系列】
在关系型数据库中,表是存储数据的核心载体。日常开发中,表的结构往往需要根据业务需求演进:新表上线、字段变更、索引优化、表拆分与归档,以及在项目废弃时的表删除。因此,熟练掌握 DDL(Data Definition Language)语句,能够保障线上变更的平滑与安全。
大熊计算机
2025/07/14
2550
【快学springboot】SpringBoot整合Mybatis Plus
来自官方对于mybatis plus的介绍:MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。其支持以下特性:
Happyjava
2024/02/01
3100
【快学springboot】SpringBoot整合Mybatis Plus
H2 数据库
H2 是标准 SQL 的关系型数据库,由 java 编写,整个 H2 是一个 jar 包(大约 2.5MB),其开源且使用 JDBC API 进行调用。其主要特性如下:
晚上没宵夜
2022/09/07
1.3K0
【快学springboot】SpringBoot整合Mybatis Plus
本文首发于头条号【Happyjava】。Happy的掘金地址:juejin.im/user/5cc289…,Happy的个人博客:blog.happyjava.cn。欢迎转载,但须保留此段声明。
Happyjava
2019/07/17
5620
【快学springboot】SpringBoot整合Mybatis Plus
h2database
首先新建一个项目,勾选MP和H2 编写配置文件 # DataSource Config spring: datasource: driver-class-name: org.h2.Driver schema: classpath:db/schema-h2.sql data: classpath:db/data-h2.sql url: jdbc:h2:mem:test username: root password: test # Logger Con
阿超
2022/08/21
2790
h2database
MyBatis-Plus系列之代码生成器
代码生成器,也叫逆向工程,是根据数据库里的表结构,自动生成对应的实体类、映射文件和接口。
冯文议
2020/11/16
1.2K0
MyBatis-Plus 入门案例
# MyBatis-Plus 入门案例 开发环境 创建数据库及表 添加数据 创建SpringBoot工程 引入依赖 编写代码 配置application.yml 添加实体 添加mapper 启动类 测试 结果 添加日志 结果 # 开发环境 IDE:idea 2020.3 JDK:JDK8+ 构建工具:maven 3.5.4 MySQL版本:MySQL 5.7 Spring Boot:2.6.3 MyBatis-Plus:3.5.1 # 创建数据库及表 CREATE DATABASE `mybatis_pl
用户9615083
2022/12/25
4010
MyBatis-Plus 入门案例
MyBatis 学习笔记(2) 增删改查
实际开发中,我们经常遇到“ 插入自增列的主键后,还想要获得主键的值”,我们可以使用 useGeneratedKeys="true" keyProperty="id" 来实现。
张云飞Vir
2021/07/08
3030
分析SQL
 Com_xxx 表示每个 xxx 语句执行的次数,以下是我们需要了解的几个重要参数。
chao超的搬运文章
2023/10/15
2240
分析SQL
MyBatis-plus入门Demo详解
这里我们使用SpringBoot引入依赖,当然非SpringBoot项目的引入也是一样的,为了统一,这里不做过多累述.正如官方所说,mybatis-plus在mybatis的基础上只做增强不做改变,因此其与spring的整合亦非常简单。只需把mybatis的依赖换成mybatis-plus的依赖,再把sqlSessionFactory换成mybatis-plus的即可。接下来看具体操作:
Dream城堡
2019/07/09
1.4K0
Spring Boot Security 整合 OAuth2 设计安全API接口服务
OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版。本文重点讲解Spring Boot项目对OAuth2进行的实现,如果你对OAuth2不是很了解,你可以先理解 OAuth 2.0 - 阮一峰,这是一篇对于oauth2很好的科普文章。
程序员果果
2019/05/16
1.9K0
Spring Security
springBoot 2.5.5 + Mybatis + Spring Security 5.x
P轴
2022/11/18
8840
SpringBoot集成SpringSecurity - 权限控制(五)
源码地址:https://github.com/springsecuritydemo/microservice-auth-center05
用户1212940
2022/04/13
4180
SpringBoot集成SpringSecurity - 权限控制(五)
RBAC、控制权限设计、权限表设计 基于角色权限控制和基于资源权限控制的区别优劣
RBAC基于角色的访问控制(Role-Based Access Control)是按角色进行授权。例如:
宁在春
2022/10/31
3K0
RBAC、控制权限设计、权限表设计 基于角色权限控制和基于资源权限控制的区别优劣
每天玩转3分钟 MyBatis-Plus - 2. 普通查询
每天玩转3分钟 MyBatis-Plus - 2. 普通查询
悟空聊架构
2020/02/16
7660
mysql误操作binlog恢复
一般正式环境使用数据库都会做全备份,但如果某个时刻数据库崩了,若利用全备份文件恢复,则在全备份到出现问题这段时间内的数据将会丢失,一般来说迫不得已也不会采取这种措施,更直接是采用binlog恢复。
doper
2022/09/26
8200
mysql误操作binlog恢复
Mybatis 二级缓存简单示例
从中可以看到,SpringBoot Mybatis是默认开启二级缓存的,其他更多的使用,如缓存失效等,后面再探索
程序猿川子
2025/06/18
820
Mybatis 二级缓存简单示例
每天玩转3分钟 MyBatis-Plus - 6. select 用法
代码下载:https://github.com/Jackson0714/study-mybatis-plus.git
悟空聊架构
2020/02/17
2.5K0
相关推荐
mybatis-plus测试
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验