Was genau macht die Einstellung der Länge einer Spalte in JPA?Was bewirkt das Längenattribut, wenn es in der @Column JPA-Annotation festgelegt ist?
@Column(name = "middle_name", nullable = false, length = 32)
public String getMiddleName() {
return this.middleName;
}
Ich verstehe, dass Sie die Anmerkungen verwenden können, das Datenbankschema (DDL), basierend auf den Entitätsobjekten zu erzeugen, aber tut Länge jede Art von Scheck oder Verkürzung, wenn Persistenz geschieht, oder es nur für Schema-Erstellung verwendet ?
Ich weiß auch, dass JPA auf verschiedenen Implementierungen sitzen kann, die Implementierung, die ich in diesem Fall betroffen bin, ist Hibernate.
Danke, ich vermutete so viel. Haben Sie zufällig ein Zitat, dass die Anmerkung nur für die DDL ist? Ich konnte es in der Dokumentation nicht explizit finden. –
Ich habe versucht, sowohl @Size (max = 32) 'und' @Column (length = 128) 'zu verwenden und unglücklicherweise scheint' @ Size' Vorrang zu haben. Vielleicht ist das ein Hibernate Bug. –
Zum Beispiel, wenn ich eine Spalte mit der Länge 1500 erstellen, wird es als "TEXT" in MySql generiert. Wie sieht die Größenbeschränkung in diesem Fall aus? Oder gilt es überhaupt? Vielen Dank. – rpr