我试图用两个数据库创建一个唯一索引:postgres和h2。唯一索引如下所示:
create unique index idx_unique on table(foo,bar,coalesce(unique,''));
但是,这在postgres中有效,因为我相信它允许在唯一索引中使用函数,但不适用于h2数据库。我想知道是否有什么办法可以解决这个问题?
我还尝试在实体类的唯一属性上使用@ColumnDefault:
@ColumnDefault("")
private String unique;
但是,我正在使用lombok getter和setters,但我认为它正在忽略它(我可能是错的,但是无论哪种方式它似乎都没有应用注释)
我的最终目标是使唯一索引区分将可选的unique属性设置为null的实体,但是我之前发现postgres将null视为不相等。
让我知道是否需要任何澄清或进一步的信息。