Supponiamo che io sto avendo 'soggetto' tavoloJPA - @Column (unique = true) - Qual è il vero punto di avere un attributo 'unique'?
CREATE TABLE subject (id int PRIMARY KEY, name VARCHAR(255) **UNIQUE**)
e oggetto mappato associato,
@Entity
@Table(name="subject")
public class SubjectDO {
@Id
@Column(name="id")
int id;
@Column(name="name", unique=true)
String name;
...
// Getter-Setter methods
}
Quando cerco di salvare oggetto con duplicare 'nome' con e senza 'unica = true' definito, Sto ottenendo un comportamento simile (stessa eccezione). Ed è ovvio che l'implementazione JPA non può realmente fare nulla se non si raggiunge il DB per il controllo.
Qual è il vero caso d'uso per questo?
(Io parto dal presupposto qui, vincolo univoco è definito a livello di database troppo.)
Grazie! Stavo cercando di trovare la sua rilevanza durante il runtime. Abbiamo qualche risorsa online che riassume le annotazioni specifiche DDL? Ho provato a cercarlo ma non l'ho trovato .. –
Controlla la sezione 11.2 in [Specifica JPA] (http://download.oracle.com/otndocs/jcp/persistence-2_1-edr2-spec/index.html), elenca tutte le annotazioni e i loro attributi che sono osservati nel processo di generazione dello schema. –
Questo è utile .. Grazie! –