【发布时间】:2020-07-10 07:23:12
【问题描述】:
我正在尝试用大约 150 个不同的值(每行一个)填充我的数据库。 到目前为止,我已经找到了两种不同的方法来实现插入,但似乎都不是最好的方法。
-
Flyway + Postgres:其中之一是创建一个迁移文件并使用 postgres 中的
COPY命令,但要这样做,我需要向用户授予超级用户权限,并且似乎不是一个好的选择。 -
Spring boot: 将
data.sql文件放入包含大量插入的类路径中。如果我没记错的话,我将不得不写 150 条insert into...语句。
在以前的项目中,我使用过 liquibase,它有一个 loadData 命令,可以很方便地执行它所说的操作。您只需提供文件、表名即可。您最终会在表格行中获得 csv 文件值。
在flyway中是否有类似的方法可以做到这一点?填充数据库的最佳方法是什么?
【问题讨论】:
-
150 次插入应该不会花费那么长时间,但听起来也许您可以只使用包含 150 行的值子句进行一次插入。
-
是的.. 目前我只是用 150 个插入语句运行迁移。我只是想知道如果我有数千或数百万个值,最好的处理方法是什么。
标签: spring postgresql hibernate spring-boot flyway