如果数据库不存在,我正在使用 Dropwizard (1.0.0) 和 Liquibase 创建数据库。
这里的问题是我使用的是不同的 Postgres 架构(非公开)。似乎 Liquibase 之前无法创建此模式,是吗?我期待 Liquibase 生成此模式,但如果我尝试构建数据库,它总是会抛出“找不到名称 xx 的模式”。
原文由 Christian 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果数据库不存在,我正在使用 Dropwizard (1.0.0) 和 Liquibase 创建数据库。
这里的问题是我使用的是不同的 Postgres 架构(非公开)。似乎 Liquibase 之前无法创建此模式,是吗?我期待 Liquibase 生成此模式,但如果我尝试构建数据库,它总是会抛出“找不到名称 xx 的模式”。
原文由 Christian 发布,翻译遵循 CC BY-SA 4.0 许可协议
8 回答6.4k 阅读
1 回答4.1k 阅读✓ 已解决
3 回答2.3k 阅读✓ 已解决
2 回答3.2k 阅读
2 回答3.9k 阅读
1 回答2.2k 阅读✓ 已解决
3 回答1.6k 阅读✓ 已解决
即使 Liquibase 在其捆绑的更改/重构中没有
CREATE SCHEMA
(因此在 dropwizard 期间不会生成一个db dump
),您仍然可以将其作为变更集包含在迁移中changelog 使用sql
标签,如下:请注意,Liquibase 将 在
PUBLIC
模式中创建它自己的 表 ,无论如何 - 在应用任何变更集之前:如果您在 dropwizard 中运行
db migrate --dry-run
,您会看到 Liquibase 将首先执行跑步前