华为OpenGauss数据库在SpringBoot中使用Flyway
- 软件开发
- 2025-09-19 02:09:01

db-migration:Flyway、Liquibase 扩展支持达梦(DM)、南大通用(GBase 8s)、OpenGauss 等国产数据库。部分数据库直接支持 Flowable 工作流。
开源代码仓库 Github: github /mengweijin/db-migration
开源代码仓库 Gitee: gitee /mengweijin/db-migration
已支持 达梦(DM 8):支持 Flyway 和 Liquibase,支持 flowable 工作流。南大通用(GBase 8s):支持 Flyway 和 Liquibase。OpenGauss:支持 Flyway,Liquibase 可直接使用 postgres 驱动得到支持。人大金仓(Kingbase):可直接使用 postgres 驱动得到支持,无需依赖 db-migration 项目。 版本说明 ❌❌:不支持;🈯✅:flyway 或 liquibase 需要指定特定版本才支持;❄️✅:flyway 或 liquibase 不需要指定版本就支持(不指定版本,则默认使用的 spring boot 默认版本); db-migration 版本spring boot 版本flyway 版本liquibase 版本2.0.82.0.x.RELEASE7.15.0 ❌❌4.27.0 ❌❌2.0.82.1.x.RELEASE7.15.0 ❌❌4.27.0 🈯✅2.0.82.2.x.RELEASE7.15.0 ❌❌4.27.0 🈯✅2.0.82.3.x.RELEASE7.15.0 ❌❌4.27.0 🈯✅2.0.82.4.x7.15.0 🈯✅4.27.0 🈯✅2.0.82.5.x7.15.0 🈯✅4.27.0 🈯✅2.0.82.6.x8.0.4 ❄️✅4.27.0 🈯✅2.0.82.7.x8.5.11 ❄️✅4.27.0 🈯✅2.0.83.0.x9.5.1 ❄️✅4.27.0 🈯✅2.0.83.1.x9.16.3 ❄️✅4.27.0 🈯✅2.0.83.2.x9.22.3 ❄️✅4.27.0 🈯✅2.0.83.3.x10.10.0 ❄️✅4.27.0 ❄️✅2.0.83.4.x10.10.0 🈯✅4.27.0 🈯✅ 参考文档 【达梦 DM DBMS】 使用 Flyway【达梦 DM DBMS】 使用 Liquibase 和 Flowable 工作流【南大通用 GBase 8s】 使用 Flyway【南大通用 GBase 8s】 使用 Liquibase【华为 OpenGauss】 使用 Flyway【华为 OpenGauss】 使用 Liquibase【人大金仓 Kingbase】 使用 Flyway 的示例工程【人大金仓 Kingbase】 使用 Liquibase 的示例工程 Flyway 对 PL/SQL 的支持Oracle 的存储过程、触发器、函数等 PL/SQL 代码块需以 / 符号结尾,告知 SQL 引擎执行该代码块。
因此,在 Flyway 中执行 Oracle 存储过程脚本时,必须在 PL/SQL 块的末尾添加 / 符号,以明确表示代码块的结束。 这是 Oracle 数据库对 PL/SQL 语法解析的要求,Flyway 在执行脚本时同样需要遵循这一规则。
Flyway 默认使用普通 SQL 解析器执行脚本,而 Oracle 的 PL/SQL 块需要明确的分隔符。添加 / 符号能帮助 Flyway 识别代码块边界。
例如在创建存储过程或触发器时:
CREATE OR REPLACE PROCEDURE test_proc AS BEGIN -- 存储过程逻辑。此处略。 END; / CREATE TRIGGER test_trig AFTER INSERT ON test_user BEGIN UPDATE test_user SET name = CONCAT(name, 'triggered'); END; /与普通 SQL 脚本的区别:
普通的 DDL(如建表)或 DML(如插入数据)脚本无需 / 符号,因为它们不是多行代码块。 例如:
CREATE TABLE users (id NUMBER PRIMARY KEY); INSERT INTO users VALUES (1);但涉及 PL/SQL 结构的脚本(如存储过程、函数、包)必须添加 /。
其他文档 Oracle 清理 Flowable 7.0.1 所有表脚本MySQL、Oracle、PostgreSQL 等数据库使用Flyway 的温馨提示完整的基础使用示例参考代码仓库中,各自的 demo 工程。
华为OpenGauss数据库在SpringBoot中使用Flyway由讯客互联软件开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“华为OpenGauss数据库在SpringBoot中使用Flyway”