是否可以生成一部分数据到 liquibase 插入?

Is it possible to generate a part of data to liquibase inserts?

我的数据库中有一个很大的 table(61 列,318000 条记录)。我正在使用此 table 编写应用程序并想对其进行测试。为此,我需要将数据作为插入语句导入 liquibase xml 文件。

我试过这个:

mvn liquibase:generateChangeLog -Dliquibase.diffTypes=data

不幸的是,maven 说:超出了 GC 开销限制,因为 OutOfMemoryError。我希望它发生是因为我的 table 的大小。我的问题是:是否可以从文件中提取部分数据(比如 1000 条记录)到文件中?

可以使用 Liquibase 来完成,但这可能不是最好的工具。即使你确实使用了 Liquibase,你也会使用一个普通的 SQL 语句来提取数据,然后你需要做一些事情来格式化它,等等

最好只使用任何可用的 SQL 工具。如果您使用 Liquibase 连接到某个东西,这意味着您拥有数据库的 JDBC 驱动程序,所以我建议使用类似 SquirrelSQL 的东西。您的查询将类似于 select top 1000 (*) from tablename 如果这些对您很重要,您可能希望添加 where 子句和 order by 子句。大多数工具都可以让您将该查询的结果保存为 CSV 文件,然后您可以使用 Liquibase 加载该 CSV 文件。