2016-04-26 10 views
0

ich den Fehler unten:DB2 - Fremdschlüsseleinschränkungslänge erzeugt durch juplo/hibernate4-Maven-Plugin ist zu lang

DB21034E The command was processed as an SQL statement because it was not a 
valid Command Line Processor command. During SQL processing it returned: 
SQL0107N The name "FK_11CCTW7HP8CNTIYTKPMYGNBF" is too long. The maximum 
length is "18". SQLSTATE=42622 

wenn ich laufe:

db2 'alter table adviserMediaContent add constraint FK_11cctw7hp8cntiytkpmygnbf foreign key (mediaContentId) references mediaContent;' 

Sql Teil Schema generiert von juplo/hibernate4-maven-plugin. Irgendeine Idee, wie man die Beschränkung im Plugin verkürzt?

+0

Sie müssen eine wirklich alte Version ausführen; Die 18-Byte-Einschränkung für die meisten Objektnamen wurde in DB2 9.5 aufgehoben (wenn Sie DB2 für LUW verwenden). – mustaccio

Antwort

2

Solche Namen werden von Hibernate generiert. Sie können einen Einschränkungsnamen mit einer @ForeginKey Annotation angeben (nicht JPA, sondern eine Hibernate-Annotation).

In Hibernate 5 können Sie eine Benennungsstrategie verwenden, um Constraint-Namen zu generieren.