jakarta.persistence.Column unique ignore case

DrPils

Bekanntes Mitglied
Gibt es eine Möglichkeit die unique constraint ignore case zu prüfen? Zb bei emails oder usernames.

Also eine Möglichkeit ist wohl eine weiter Column anzulegen, die dass Property in lowercase speichert und diese auch mit der unique constraint auszustatten.
Finde es schießt aber ein bisschen am Ziel vorbei dafür eine extra Column anzulegen.

Java:
public class UserEntity {
    
    @Column(name = "email", nullable = false, unique = true)
    private String email;
    
    @Column(name = "email_lower_case", nullable = false, unique = true)
    private String emailLowerCase;

    @PrePersist()
    private void setEmailIgnoreCase() {
        emailLowerCase = email.toLowerCase();
    }
}
 

Oneixee5

Top Contributor
Das kann ich nicht beantworten. Ich denke man sollte die DB so effektiv wie möglich nutzen. Ein generischer Ansatz ist aber genau das Gegenteil.
 

Neue Themen


Oben