liquibase 相关问题

Liquibase是一个独立于数据库的开源库,用于跟踪,管理和应用数据库更改。它建立在一个简单的前提上:所有数据库更改都以人类可读但可跟踪的形式存储,并检入源代码控制。

liquibase 无法在数据库中执行变更集

我无法弄清楚为什么没有任何变更集被执行并反映在数据库中。 我也提到了这个链接,它也有同样的问题,不幸的是这篇文章没有答案。 在

回答 2 投票 0

Liquibase Java,变更集不适用

我目前正在为我的实习构建一个项目,两天来我试图在java中使用Liquibase,但我陷入了困境。一切似乎都正确:找到了变更日志文件,正确的 URI、用户名和密码...

回答 6 投票 0

如何使用 Liquibase 定义具有升序/降序列的表索引,最后为空

使用原生查询 如果索引不存在则创建索引 ON public.table 使用 btree (列 1 ASC NULLS 最后,列 2 ASC NULLS LAST); 如何使用 Liquibase 定义类似索引? 使用原生查询 CREATE INDEX IF NOT EXISTS index ON public.table USING btree (column1 ASC NULLS LAST, column2 ASC NULLS LAST); 如何使用 Liquibase 定义类似索引? <createIndex tableName="table" indexName="ACT_IDX_table" unique="true"> <column name="column1" /> <column name="column2" /> </createIndex> 数据库-Postgres 据我所知,您无法在 liquibase 中最后设置 NULL。当然,您始终可以使用标签来准确编写您需要的内容。 <sql> CREATE INDEX IF NOT EXISTS index ON public.table USING btree (column1 ASC NULLS LAST, column2 ASC NULLS LAST); </sql>

回答 1 投票 0

在 r2dbc 之前运行 liquibase

我知道我可以同时运行 R2DBC 和 liquibase,但我想知道如何确保 Liquibase 首先运行? r2dbc-mysql 驱动程序不支持创建数据库(如果丢失)...

回答 1 投票 0

Spring boot H2 数据库未找到且不是由 Liquibase 创建的

我正在尝试创建一个带有嵌入式数据库(H2)的 Spring Boot 应用程序,并在应用程序启动时使用 liquibase 创建数据,但绝对没有任何效果。 当我访问 http://localhost...

回答 3 投票 0

postgresql 上不允许 addAfterColumn

为了修复漏洞,我升级了 dockerfile 中的 docker 镜像版本: 老的: 来自 liquibase/liquibase:4.4 新的: 来自 liquibase/liquibase:4.20 但我开始出现错误: addAfterColumn 还不是全部...

回答 4 投票 0

LiquidBase 事务执行被中止

当我使用 yml 文件执行一些 yml 文件以在 gcp spanner 数据库上创建和修改时。 由于网络中断,LiquidBase 交易执行被中止。 然后液基就锁了...

回答 1 投票 0

Liquibase 是否有与 Flyway 的 clean-on-validation-error 类似的选项

由于版本问题,我们在 Spring Boot 3 环境中从 Flyway 切换到 Liquibase。 由于我们仍处于非生产环境中,我们的数据库架构正在快速变化,我们不在乎......

回答 1 投票 0

Liquibase 修复不可重新运行的变更集

我的 master-chaneglog.yaml 如下所示, 数据库更改日志: - 包括: 相对更改日志文件:true 文件:db_ver_1.0/scripts.yaml script.yaml 如下所示, 数据库更改日志: -

回答 1 投票 0

Liquibase H2 ./mvnw liquibase:update 时出现“不支持的数据库文件版本或文件中的文件头无效”

我使用 jhipster 生成了一个应用程序,H2 数据库保留在磁盘上,当我使用 ./mvnw liquibase:update 时,我不断收到以下错误。 有谁知道问题出在哪里? 谢谢

回答 1 投票 0

在liquibase上为H2数据库创建SQL函数

由于我需要在 liquibase 中使用 2 个数据库(psql 和 h2),我尝试以不同的方式创建 SQL 函数: 由于我需要在 liquibase 中使用 2 个数据库(psql 和 h2),我尝试以不同的方式创建 SQL 函数: <changeSet author="zina" id="calculate_test"> <sqlFile dbms="h2, psql" encoding="UTF-8" endDelimiter="/nGO" path="calculate_test.sql" relativeToChangelogFile="true" splitStatements="false" stripComments="false"/> </changeSet> calculate_test.sql 看起来像 CREATE OR REPLACE FUNCTION calculate() RETURNS int BEGIN RETURN 5; END; GO 或者直接在中使用sql代码 <changeSet author="xxx" id="sql-example"> <sql dbms="h2" endDelimiter="\nGO" splitStatements="true" stripComments="true">xxx</sql> </changeSet> 并得到同样的错误。 liquibase.exception.MigrationFailedException: Migration failed for change set migrations.xml::calculate_test::zkensche: Reason: liquibase.exception.DatabaseException: Syntax error in SQL statement "CREATE OR REPLACE FUNCTION[*] CALCULATE() RETURNS INT BEGIN RETURN 5; END; GO"; expected "FORCE, VIEW, ALIAS, SEQUENCE, USER, TRIGGER, ROLE, SCHEMA, CONSTANT, DOMAIN, TYPE, DATATYPE, AGGREGATE, LINKED, MEMORY, CACHED, LOCAL, GLOBAL, TEMP, TEMPORARY, TABLE, SYNONYM, PRIMARY, UNIQUE, HASH, SPATIAL, INDEX"; SQL statement: ... 有人设法在 H2 上创建 SQL 函数吗?还是这是在 Java 上编写 SQL 函数的唯一方法? 根据文档,没有创建CREAT FUNCTION SQL命令。 我将感谢您的评论、解决方法和 Java 片段。 最好的, 吉娜 为了创建类似于 H2 中的函数对象,您需要使用“CREATE ALIAS ...”表达式。该功能基本上是Java代码。 以下是该过程的模型调用示例,应以文本形式返回 JSON: CREATE ALIAS gen_pageGlobal AS $$ String nextPrime(String p1, String p2, String p3, String p4) { return "{\"type\" : \"page\", \"data\" : {\"rn\": 1, \"email\": \"[email protected]\", \"projectCount\": 6}}"; } $$; 请记住,为了创建 liquibase,必须设置正确的endDelimiter = "$$": <changeSet id="20231219070000-4-2" author="java" context="dev"> <sql dbms="h2" endDelimiter="$$"> DROP ALIAS IF EXISTS gen_pageGlobal; CREATE ALIAS gen_pageGlobal AS $$ String nextPrime(String p1, String p2, String p3, String p4) { return "{\"data\": []}"; } $$; </sql> </changeSet>

回答 1 投票 0

Liquibase 更新后出现重复的变更集 ID

我想将 liquibase 版本 4.9.1 的 Spring Boot (2.7.x) 项目更新到最新的 Spring Boot 版本(包含 Liquibase 4.21.1)。 现在我在启动系统时遇到以下异常: 钙...

回答 1 投票 0

JPA Buddy Liquibase 初始化变更日志

我想将 Liquibase (通过 JPA Buddy)用于现有的 Spring Boot 项目;我已经有一个数据库了。 我不清楚我应该先执行什么操作来注册当前状态...

回答 1 投票 0

Liquibase 缺少环境变量

我将通过以下演示来使用大查询设置 liquibase 版本控制: https://medium.com/google-cloud/version-control-of-bigquery-schema-changes-with-liquibase-ddc7092d6d1d 但我是

回答 2 投票 0

如何使用 liquibase 将 & 与符号插入数据库

我正在尝试插入字符串“& n b s p;” (不带空格)使用 liquibase 进入 Oracle 数据库。 & 是 xml 中的特殊字符,所以我需要以某种方式转义它。 我试过 我正在尝试插入字符串“& n b s p;” (不带空格)使用 liquibase 进入 Oracle 数据库。 & 是 xml 中的特殊字符,所以我需要以某种方式转义它。 我试过了 <insert tableName="XY"> <column name="foo" type="string" value="&amp;nbsp;"/> </insert> 但我得到: 解析 bar.xml 的第 xx 列 yy 时出错:引用了实体 nbsp,但未声明 有什么想法吗? 使用 Liquibase 将数据插入数据库时,包括与号 (&) 字符,您可能会遇到 XML 解析问题,因为与号是 XML 中的特殊字符。要处理此问题,您应该在 Liquibase 变更集中使用 XML 实体 &amp;。 以下是如何使用 Liquibase 将包含 & 符号的字符串插入数据库的示例: <changeSet id="insertDataExample" author="yourname"> <insert tableName="your_table_name"> <column name="column_name">This &amp; That</column> </insert> </changeSet> 在上面的示例中,将 "your_table_name" 替换为表的实际名称,将 "column_name" 替换为要插入数据的列的实际名称。文本“This & That”将被插入到指定列中,&amp; 用于表示 & 字符。 通过使用 &amp;,您可以避免在 XML 文件中仅使用原始 & 符号时可能发生的 XML 解析错误。 请记住根据数据库 schema.businessspotty.com 中的特定表和列名称调整 XML 片段

回答 1 投票 0

SpringBoot:无法初始化JPA EntityManagerFactory:[PersistenceUnit:默认]无法构建Hibernate SessionFactory

在我的 Postgres 数据库中,我创建了名为 pet 的模式,并运行 liquibase 迁移来创建模式、表和类型,但同时启动了我的 Spring Boot 应用程序。 初始化 JPA 失败

回答 1 投票 0

使用 Azure CICD 管道运行 Liquibase

我想使用 liquibase 命令运行数据库更新。我已添加所有必需的详细信息并在项目中配置了 liquibase.properties 文件。本地部署一切正常...

回答 1 投票 0

org.hsqldb.HsqlException:用户缺乏权限或未找到对象:DATABASECHANGELOGLOCK

怎么会这样。 liquibase 不是应该为自己创建这个表吗? 这是为单元测试创建的内存数据库。 公共无效setUp(字符串上下文){ 尝试 {

回答 2 投票 0

org.hibernate.query.SemanticException:赋值表达式类型 sql.Timestamp 与赋值路径类型 OffsetDateTime 不匹配

我使用 Spring Boot 2.x 版本进行了以下 Postgres 查询, 更新表设置lastDateTime = CURRENT_TIMESTAMP,其中x = :y 使用 h2 数据运行集成测试用例时,liquibase 是

回答 1 投票 0

停止 liqibasew 在产品中记录迁移结果

堆栈: 爪哇21 掉落向导 slf4j 如何停止 liquibase 退出迁移(没有任何改变)? 我使用 dropwizard YAML 进行配置 到目前为止尝试过: 设置记录器:关闭(在 yaml 中) 魔法...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.