Liquibase DATABASECHANGELOGLOCK.LOCKED 列数据类型

问题描述 投票:0回答:1

尝试将我的数据库从 Oracle 迁移到 Postgres 后,Liquibase 在设置锁定时遇到问题,因为 LOCKED 列从

NUMBER(1)
转换为
int4
并且更新语句使用
boolean
,它在 Oracle 中有效,但在 Postgres 中无效:

UPDATE databasechangeloglock SET LOCKED = TRUE, LOCKEDBY = '<<<machine name>>>', LOCKGRANTED = '2024-11-01 17:17:38.911' WHERE ID = 1 AND LOCKED = FALSE 

这会导致以下错误:

ERROR: operator does not exist: integer = boolean

我的问题是唯一的解决方案是将 Postgres 中的 LOCKED 列转换为

boolean
还是可以在 Liquibase 中配置该语句?

postgresql oracle-database boolean liquibase
1个回答
0
投票

您需要手动转换它,Liquibase 不会为您修复它。

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