I am developing a spring-boot (2.4.5) application with envers to audit data. When I am using the app from scratch, all is fine. From app, I can save data in database tables, and envers is storing audit data in the audit tables.
To database CI/CD, I have configured Liquibase, executing a changeset. The database is created without any issue.
But my problem is when I want to add inserts sentences in a changeset to create initial data. How can I add these initial data to audit tables?
My change set:
-- changeset puser:1659003040757-1
CREATE SEQUENCE HIBERNATE_SEQUENCE START WITH 1 MAXVALUE 9999999999999999999999999999;
-- changeset puser:1659003040757-2
--preconditions onFail:WARN onError:WARN
--precondition-sql-check expectedResult:0 SELECT count(*) FROM USER_TABLES WHERE TABLE_NAME = 'AUDIT_REVISION_ENTITY';
CREATE TABLE AUDIT_REVISION_ENTITY
(
ID NUMBER(10, 0) NOT NULL,
TIMESTAMP NUMBER(19, 0) NOT NULL,
IP_ADDRESS VARCHAR2(255 CHAR),
USERNAME VARCHAR2(255 CHAR),
CONSTRAINT SYS_C0017210 PRIMARY KEY (ID)
) TABLESPACE DATAAPP;
-- changeset puser:1659003040757-3
CREATE TABLE USERS
(
ID RAW(16) NOT NULL,
CREATED_BY VARCHAR2(255 CHAR),
CREATED_DATE TIMESTAMP(6) NOT NULL,
MODIFIED_BY VARCHAR2(255 CHAR),
MODIFIED_DATE TIMESTAMP(6),
ACTIVE NUMBER(1, 0),
EMAIL VARCHAR2(200 CHAR) NOT NULL,
USER_LOGIN VARCHAR2(20 CHAR) NOT NULL,
USER_NAME VARCHAR2(200 CHAR) NOT NULL,
USER_PASSWORD VARCHAR2(256 CHAR) NOT NULL,
USER_ROLE VARCHAR2(50 CHAR) NOT NULL,
USER_SURNAME VARCHAR2(200 CHAR) NOT NULL,
CONSTRAINT SYS_C0017439 PRIMARY KEY (ID)
) TABLESPACE DATAAPP;
-- changeset puser:1659003040757-4
CREATE TABLE USERS_AUD
(
ID RAW(16) NOT NULL,
REV NUMBER(10, 0) NOT NULL,
REVTYPE NUMBER(3, 0),
CREATED_BY VARCHAR2(255 CHAR),
CREATED_DATE TIMESTAMP(6),
MODIFIED_BY VARCHAR2(255 CHAR),
MODIFIED_DATE TIMESTAMP(6),
ACTIVE NUMBER(1, 0),
EMAIL VARCHAR2(200 CHAR),
USER_LOGIN VARCHAR2(20 CHAR),
USER_NAME VARCHAR2(200 CHAR),
USER_PASSWORD VARCHAR2(256 CHAR),
USER_ROLE VARCHAR2(50 CHAR),
USER_SURNAME VARCHAR2(200 CHAR),
CONSTRAINT SYS_C0017442 PRIMARY KEY (ID, REV)
) TABLESPACE DATAAPP;
-- changeset puser:1659003040757-5
ALTER TABLE USERS_AUD
ADD CONSTRAINT FKLD7CDNHID45YC6535CECSHYOP FOREIGN KEY (REV) REFERENCES AUDIT_REVISION_ENTITY (ID);
-- changeset puser:1659003040757-6
INSERT INTO users (id, user_surname, user_name, user_login, user_password, user_role, email, created_by, created_date, active)
VALUES ('cca76b85f24d490b8df7fd8d91743835', 'APPUSER', 'APPUSER', 'APPUSER', '$2a$10$9wXu9hshOrtZ7RopythgF.XP93XbKtISBzv6QjTGBzq', 'ADMIN', 'app@appsuser.com', 'System', current_date, 1);
My question is how do the changeset to insert data in envers audit table?
INSERT INTO users_aud ???????????????????????????????```