当前位置: 首页 > 知识库问答 >
问题:

仅使用databasechangelog表生成liquibase sql文件

邢飞鸿
2023-03-14

我想从我的changelog文件生成一个SQL文件,该文件只包含databasechangelog表,并在其中插入数据库的当前状态。在liquibase文档中有一篇文章(http://www.liquibase.org/2015/07/without-a-connection.html),其中写道,您可以将outputLiquiBaseSQL设置为data_only,但在我的例子中它不起作用。我的属性文件如下所示:

driver: com.microsoft.sqlserver.jdbc.SQLServerDriver
classpath: sqljdbc42.jar
url: offline:mssql?outputLiquibaseSql=data_only
changeLogFile: cl.xml
outputFile: output.sql

但是,当我通过命令行使用updatesql时,它生成包含所有语句的SQL文件,而不仅仅是databasechangelog表和插入。这有什么办法吗?或者ist还有另一种方法,只使用databasechangelog表插入来创建SQL文件?我使用的是liquibase 3.5.5。

共有1个答案

董宜然
2023-03-14

对我来说,outputLiquiBaseSQL=truechangelogsyncsql组合使用。因此属性文件如下所示:

driver: com.microsoft.sqlserver.jdbc.SQLServerDriver
classpath: sqljdbc42.jar
url: offline:mssql?outputLiquibaseSql=true
changeLogFile: cl.xml
outputFile: output.sql

然后通过命令行使用LiquiBase changelogsyncsql。然后liquibase生成了一个只有databasechangelog表语句的SQL文件。

 类似资料:
  • 我是liquibase的新手,我想在生产中的数据库上使用它。这是一个很小的应用程序,但我不想手工创建模式,而是想使用更专业的东西,比如LiquiBase。 我计划做的是在生产中的当前模式和新模式之间为新应用程序准备一个changelog。我已经遵循了许多教程,但仍然缺少一些东西。输出changelog.xml总是导入所有模式,并且与现有模式没有区别。我看到liquibase必须创建表DATABAS

  • 我想知道我是否可以轻松地在SQL内省生成的Hibernate类上使用Liquibase。我继承了Spring4和Hibernate5项目,对JavaHibernate的最佳实践有些不熟悉。 所有实体类似乎都是通过SQL检查从hbm2java生成的。这可以通过缺少任何hibernate映射文件推断出来,但hbm2java创建了所有实体文件。 我希望保持由数据库生成实体类的方向性,但通过Liquiba

  • 我正在从事一个项目,该项目在少数几个服务器上管理许多数据库,我们正在使用liquibase来保持我们的数据库结构是最新的。 根据我的理解,liquibase的目的是在第一次识别到为特定数据库执行的变更日志文件时生成databasechangelogLock和databasechangelogLock表。 谢谢

  • 在我们的应用程序中有四个SQL服务器数据库: 在使用liquibase连接到SQL Server时,我们在连接字符串中使用db2,然后执行部署。 由于db2用于连接字符串,所以DATABASECHANGELOGLOCK和DATABASECHANGELOG是在db2数据库中创建的。 作为部署的一部分,每个SQL脚本在开始时都有数据库名称,如 Script1.sql 脚本2.sql 脚本3.sql S

  • 我试图从我们需要实现的一个招摇过市的文件中生成接口。它是从外部来源提供的。我通常先使用契约,但在java/kotlin中很长一段时间没有这样做。 我已经建立了一个项目,希望尽可能多地控制我的代码。我尝试使用

  • 问题内容: 我试图将XML数据从网页转换为PDF文件,希望能完全在JavaScript中完成。我需要能够绘制文本,图像和简单形状。我希望能够完全在浏览器中做到这一点。 问题答案: 示例创建一个“ Hello World” PDF文件。