我在同一个文件中有回滚脚本和变更集脚本。但是,当我执行
liquibase update
时,数据库迁移成功,但 users
表被删除。我该如何修复该错误?我想将回滚脚本和变更集保留在同一个文件中。
-- liquibase formatted sql
-- changeset Ariel:20231120_000002
CREATE TABLE users
(
id BINARY(16) NOT NULL,
CONSTRAINT pk_users PRIMARY KEY (id)
);
-- rollback for changeset Ariel:20231120_000002
-- liquibase formatted sql
DROP TABLE users;
同样,如果我尝试回滚,则会收到以下错误。我不确定为什么 liquibase 无法正确识别回滚。我该如何解决它?
Unexpected error running Liquibase: Liquibase does not support automatic rollback generation for raw sql changes (did you mean to specify keyword "empty" to ignore rolling back this change?)
```
您是否尝试过在不使用“for Changeset ...”的情况下进行回滚?
-- liquibase formatted sql
-- changeset Ariel:20231120_000002
CREATE TABLE users
(
id BINARY(16) NOT NULL,
CONSTRAINT pk_users PRIMARY KEY (id)
);
-- rollback DROP TABLE users;