上篇文章中详细了介绍了一下changelog 文件的使用,本篇文章将详细说一下 changeSet 变更集 中的细节,以及通常的使用方式

1.变更集分类

changeSet 分为 6类:

  • add
  • create
  • drop
  • rename
  • sql
  • other

官方文档:https://docsstage.liquibase.com/change-types/community/home.html,每一个标签都有其必须的参数,使用时根据情况自行设定即可

用法均为如下格式:

<changeSet><xxxx />
</changeSet>

2.1 add

2.2 create

2.3 drop

2.4 rename

2.5 sql

2.6 Other

2.常用变更集

上面这么多的标签,相信已经将很多人的眼睛看花了,不要紧,将它们全部罗列出主要还是想大家能够对 Liquibase 有一个更全面的理解,遇到某些场景时能够对症检索。

接下来我会介绍几个常用的标签,基本能够覆盖大多数场景。

2.1 SQL

最常用以及最顺手的就是 sql 标签,开发人员像使用 Mybatis 一样,写原生SQL,但是如果SQL比较复杂,可读性就不怎么好

<changeSet id="xxxx" author="jiaotd" labels="init" ><sql>USE `db_xxx`;insert into table_t values(1,1,1);</sql></changeSet>

2.2 sqlFile

sqlFIle 就是将上面 SQL 中的语句单独使用文件存储,在 sqlFIle 引入。

这样做的好处是 changelog 文件简单、整洁、可读性高、易于维护。

<changeSet id="xxxx" author="jiaotd" labels="init" ><sqlFile path="update/xxxx.sql" relativeToChangelogFile="true"/></changeSet>

2.3 loadData

loadData 通常用于导入数据,一般我们用于系统升级时导入大量的数据。

<changeSet  author="jiaotd"  id="loadData-xxx">  <loadData commentLineStartsWith="//"  encoding="UTF-8"  file="example/users.csv"  quotchar="'"  relativeToChangelogFile="true"  schemaName="public"  separator=";"  tableName="person"  usePreparedStatements="true">  <column  header="header1"  name="id"  type="NUMERIC"/>  <column  index="3"  name="name"  type="BOOLEAN"/>  </loadData>
</changeSet>


Liquibase 系列文章:

1.安装:

九人稚:Liquibase 数据库版本管理工具:1.安装​zhuanlan.zhihu.com

2.changelog 详解:

九人稚:Liquibase 数据库版本管理工具:2.changelog 详解​zhuanlan.zhihu.com

numeric比较大小 数据库_Liquibase 数据库版本管理工具:3. changeSet 变更集详解相关推荐

  1. 数据库中北大学第二章ppt总结和课后习题详解(小宇特详解)

    数据库中北大学第二章ppt总结和课后习题详解(小宇特详解) 第2章 数据模型与系统结构 2.1 数据模型的基本概念 现实世界--具体事物->信息世界--概念模型->机器世界--DBMS支持 ...

  2. oracle数据库按日期查询,关于Oracle数据库日期范围查询的两种实现方法详解,oracle详解...

    关于Oracle数据库日期范围查询的两种实现方法详解,oracle详解 Oracle数据库日期范围查询有两种方式:to_char方式和to_date方式,接下来我们通过一个实例来介绍这一过程.我们假设 ...

  3. mysql 嵌套查询性能_MySQL数据库之嵌套查询与连接查询的性能详解

    本文主要向大家介绍了MySQL数据库之嵌套查询与连接查询的性能详解 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助. 嵌套查询与连接查询的性能:连接查询一般较快:子查询很难被优化. ...

  4. VS自带工具:dumpbin的参数详解

    VS自带工具:dumpbin的参数详解 参考链接: 1.微软技术文档 2.微软官方文档描述](https://docs.microsoft.com/zh-cn/cpp/build/reference/ ...

  5. [Python从零到壹] 十五.文本挖掘之数据预处理、Jieba工具和文本聚类万字详解

    欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...

  6. 【linux】Valgrind工具集详解(八):Memcheck命令行参数详解

    [linux]Valgrind工具集详解(五):命令行详解中不够全,在此专门针对Memcheck工具中的命令行参数做一次详细的解释. Memcheck命令行选项 –leak-check=<no| ...

  7. 给Clouderamanager集群里安装基于Hive的大数据实时分析查询引擎工具Impala步骤(图文详解)...

    不多说,直接上干货! 这个很简单,在集群机器里,选择就是了,本来自带就有Impala的. 扩展博客 给Ambari集群里安装基于Hive的大数据实时分析查询引擎工具Impala步骤(图文详解) 欢迎大 ...

  8. linux网络驱动rtl8211f,RTL8211F在uboot下使用mii工具配置RJ45网口灯详解

    RTL8211F在uboot下使用mii工具配置RJ45网口灯详解. 首先要明确使用这个工具的目的,类似于i2c-test工具测试i2c,使用这个工具验证测试网口灯的配置.然后再通过软件或者驱动来实现 ...

  9. Code First开发系列之管理数据库创建,填充种子数据以及LINQ操作详解

    本篇目录 管理数据库创建 管理数据库连接 管理数据库初始化 填充种子数据 LINQ to Entities详解 什么是LINQ to Entities 使用LINQ to Entities操作实体 L ...

最新文章

  1. python-----利用filecmp删除重复文件
  2. mybatis 解析Integer为0的属性,解析成空字符串
  3. Hypertable hbase hdfs kfs java与c++的较量
  4. Qt文档阅读笔记-Label QML Type官方解析及实例
  5. metasploit基本使用方法
  6. 【java】大并发下Timeout waiting for connection from pool 解决方案
  7. STL vector的迭代器的熟练运用及lower_bound和upper_bound的使用
  8. 微信小程序 - 贝塞尔曲线(购物车效果)
  9. 电脑维修之——启动错误时的解决办法
  10. 小川用的Ubuntu软件和库
  11. Java——NIO和IO的区别
  12. 有人把李白杜甫一生的旅行足迹做了地图,发现了大事!
  13. python画折线统计图画区间_matplotlib-折线图、散点图
  14. 模拟QQ网络棋牌游戏
  15. Unity 渲染管线工作流程
  16. 解决微信环境下无法通过链接唤起App Store、微信访问App Store 链接白屏问题
  17. onedrive的多电脑同步妙用
  18. ccna网络工程师考试_PrepAway提供的Cisco CCNA无线认证考试问题-建立成功的网络工程师的职业
  19. PHP:Fatal error: Allowed memory size of 262144 bytes exhausted (tried to allocat
  20. Vue图片加载错误、图片加载失败的处理

热门文章

  1. 关于constraint 的disable和enable
  2. Bootstrap 第一天
  3. 初识lunece(同义词检索)
  4. Java中的一些基础概念
  5. C#中IListT与ListT的区别感想
  6. 函数指针 回调函数 面向对象风格的C语言
  7. Android input keyevent命令
  8. git之提交本地代码到远端指定仓库
  9. linux本地检测如何tomcat是否启动成功tomcat端口检测
  10. 每日三道前端面试题--vue 第四弹