我想更好地了解Hibernate Envers的行为.. 这就是问题所在: (PostgreSQL)我有这个:
Person (
id bigint not null,
job character varying(10)
)
加上" _aud"表Person_AUD
现在,我必须做这个改变:
ALTER TABLE Person
ADD COLUMN group varchar (10);
之后,就像这样:
UPDATE TABLE Person
SET group='unemployed'
WHERE job=null;
我的问题是:当我运行" alter table时,Hibernate对我的_aud表做了什么? 而且,当我运行"更新&#34时,Hibernate对my_aud表做了什么?
我问这个因为我无法尝试(我必须这样做"手动"使用Liquibase所以我问你:) :)
答案 0 :(得分:0)
假设要审核列group
,您还需要改变Person_AUD
,就像使用Person
表一样:
ALTER TABLE Person_AUD
ADD COLUMN group varchar(10)
由于该字段为NULL
- 能够完全取决于您是否有必要在Person_AUD
表上执行类似的更新语句。如果你愿意,那就是:
UPDATE Person_AUD
SET group = 'unemployed'
WHERE job is NULL
值得注意的是,Person_AUD
表中更新的行数不一定与Person
表中更新的行数相同,因为审计表可能包含来自Person
的同一主键的多行具有不同的修订版。