sql >> Database teknologi >  >> RDS >> PostgreSQL

Kan en UDSAT begrænsning defineres ved hjælp af en Hibernate-annotering?

Desværre har Hibernate ikke understøttelse af udskudte begrænsninger.https://hibernate.atlassian.net/ browse/HHH-2248

Du kan prøve at spille med entityManager.flush() metoden, lad os sige, at du har instrumenter med navne inst1 og inst2 :

Instrument inst1 = entityManager.find(Instrument.class, 1);
// change name of first Instrument to some random one
inst1.setName("inst3");
entityManager.flush();
Instrument inst2 = entityManager.find(Instrument.class, 2);
inst2.setName("inst1");
entityManager.flush();
inst1.setName("inst2");

Alternativt kan du hente entiteterne fra DB, slette dem fra DB, udføre flush og fortsætte med at opdatere entiteter. På denne måde behøver du ikke finde på det tredje navn.

Ikke sikker på ydeevneeffekten af ​​disse løsninger, du skal selv finde ud af det.



  1. Vælg få hele rækken svarende til max i MySQL Group

  2. Hvad minder MS SQL Server-kapaciteten til MySQL FIELD()-funktionen?

  3. Upload af billeder i CKEditor uden brug af et plugin

  4. Tilføjelse af fremmednøgle af typen char i mysql