# dbtest **Repository Path**: Soulll/dbtest ## Basic Information - **Project Name**: dbtest - **Description**: liquibase - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2018-06-06 - **Last Updated**: 2020-12-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## liquibase相关 * **不依赖于特定的数据库**,目前支持包括Oracle/Sql Server/DB2/MySql/Sybase/PostgreSQL/Caché等12种数据库, 这样在数据库的部署和升级环节可帮助应用系统支持多数据库 * 提供数据库比较功能,比较结果保存在XML中,基于该XML你可用Liquibase轻松部署或升级数据库 * 以XML存储数据库变化,其中以作者和ID唯一标识一个变化(ChangSet),**支持数据库变化的合并**,因此支持多开发人员同时工作 * **在数据库中保存数据库修改历史**(DatabaseChangeHistory),在数据库升级时自动跳过已应用的变化(ChangSet) * **提供变化应用的回滚功能**,可按时间、数量或标签(tag)回滚已应用的变化。通过这种方式,开发人员可轻易的还原数据库在任何时间点的状态 * **可生成数据库修改文档(HTML格式)** * **提供数据重构的独立的IDE和Eclipse插件** ## 目录以及文件解释 * data 存放初始化数据文件 * schemas 存放数据结构变动脚本 * changelog.xml 主要执行文件,引入相关数据变动脚本 * liquibase.properties 数据库配置文件 * pom.xml 引入数据库依赖以及liquibase插件 ## liquibase常用命令 * changelogSync : 將changelog中未套用至db的change logs标识成已同步 * changelogSyncSQL : 同changelogSync,但只產生sql,而不執行同步到db * **generateChangeLog** : 將目前数据库的结构(默认不包含数据)生成 xml * dbDoc : 產生像java doc的文件 * diff : 比對兩個数据库間的差異 * status : 顯示目前change set有那些change log會被套用到db * **rollbackSql**:根据回滚版本生成回滚sql * **rollback**:根据回滚版本生成回滚sql,并在数据库中执行 * **update** : 将changeLog.xml中的数据变动changeset脚本转化为sql语句,直接在数据库中执行 * **updateSQL** : 将changeLog.xml中的数据变动changeset脚本转化为sql语句,并输出到对应的文件中