But usually in reality you will encounter direct table access from applications. 😅
But usually in reality you will encounter direct table access from applications. 😅
you would just go forward by repairing the order of the remaining steps.
you would just go forward by repairing the order of the remaining steps.
A forward fix could focus only on the part which went wrong. Maybe your script just tried to create a FK and the table was not yet existing due to wrong ordering.
A forward fix could focus only on the part which went wrong. Maybe your script just tried to create a FK and the table was not yet existing due to wrong ordering.
Whereas a forward fix is a new deployment (with usual syntax). So you could not run the original patch again and would have to create a new unique changeset to retry the original change.
Whereas a forward fix is a new deployment (with usual syntax). So you could not run the original patch again and would have to create a new unique changeset to retry the original change.
The difference is the execution with the tools (ie Flyway/Liquibase). Rollback scripts have a special syntax/tags and I think the tools then treat the initial script as "has not been applied".
The difference is the execution with the tools (ie Flyway/Liquibase). Rollback scripts have a special syntax/tags and I think the tools then treat the initial script as "has not been applied".
I think for audit it is important then that the developers don't have access to the schema users, but only the deployment user, so they can't "go around".
I think for audit it is important then that the developers don't have access to the schema users, but only the deployment user, so they can't "go around".
For now I came up with... *drumroll*
DBledore!
I even created a fancy dress as suggested by @kibeha.dk
I made sure to leave a lot of room for improvement.
For now I came up with... *drumroll*
DBledore!
I even created a fancy dress as suggested by @kibeha.dk
I made sure to leave a lot of room for improvement.