首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >春引导从2.2升级到2.7后,H2的Liquibase迁移失败

春引导从2.2升级到2.7后,H2的Liquibase迁移失败
EN

Stack Overflow用户
提问于 2022-11-21 04:57:42
回答 1查看 39关注 0票数 1

我正在将spring引导从2.2.x升级到2.7.5。现有迁移中有一个在测试期间失败。

changelog.v1.mysql.sql

代码语言:javascript
复制
ALTER TABLE my_table CHANGE column `OLD_COLUMN` `NEW_COLUMN` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '';

旧H2版本:1.4.197新H2版本:2.1.214

代码语言:javascript
复制
Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax error in SQL statement "ALTER TABLE my_table CHANGE column `OLD_COLUMN` `NEW_COLUMN` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci [*]NOT NULL DEFAULT ''"; SQL statement:
ALTER TABLE my_table CHANGE column `OLD_COLUMN` `NEW_COLUMN` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' [42000-214]

application.properties (测试)

代码语言:javascript
复制
spring.datasource.url=jdbc:h2:mem:system42;MODE=MySQL;NON_KEYWORDS=value
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect

将查询更改为

代码语言:javascript
复制
ALTER TABLE my_table CHANGE column `OLD_COLUMN` `NEW_COLUMN` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '';

代码语言:javascript
复制
ALTER TABLE my_table CHANGE column `OLD_COLUMN` `NEW_COLUMN` varchar(255) NOT NULL DEFAULT '';
EN

回答 1

Stack Overflow用户

发布于 2022-11-21 09:37:41

您可以使用VARCHAR_IGNORECASE(255)

H2参考指南

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74514420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档