Wie erstellen von Indizes über mehrere Spalten
Wir haben die folgenden entity-Beziehungen, in denen ein Benutzer gehört zu einer bestimmten Organisation. Meine Fragen entweder Aussehen wie "select * from Benutzer where org=:org" oder "select * from Benutzer where org=:org und type=:type"
Ich haben getrennte Indizes auf der User-Klasse. Die erste Abfrage wird in Ordnung sein, da der Index auf dem foreign key-element. Funktioniert die zweite Abfrage Mandat ein multi columnindex auf org und Spalten. Wenn ja, wie soll ich kommentieren, zu erstellen, ein solcher index.
@Entity
class User {
...
@ManyToOne
@ForeignKey
@Index
Organization org;
@Index
Type type;
...
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist machbar mit Hilfe der Hibernate-spezifische
@Table
annotation. Aus der Dokumentation:Referenz
Wie Sie Lesen können in JSR-000338 Java Persistence 2.1 Vorgeschlagenen Endgültigen Entwurf der Spezifikation:
Beispiel:
Ja, es ist möglich mit JPA 2.1, wie Sie in den Spezifikationen sehen hier:
http://download.oracle.com/otndocs/jcp/persistence-2_1-pfd-spec/index.html
auf Seite 445 heißt es, dass die
Einem Beispiel der Nutzung kann hier eingesehen werden:
http://java-persistence-performance.blogspot.co.uk/2013/03/but-what-if-im-not-querying-by-id.html
Scheint es, dass die syntax ist die gleiche oder sehr ähnlich zu Überwintern.