Problem mit Cayenne Entity Manager
-
23-10-2019 - |
Frage
Ich versuche mithilfe von Cayenne Entity Manager ein Objekt in die Datenbank zu behalten. Und leider bekomme ich den folgenden Fehler:
org.apache.cayenne.CayenneRuntimeException: [v.3.0 Apr 26 2010 09:59:17] Commit Exception
Caused by: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Table 'myDatabase.auto_pk_support' doesn't exist
Irgendeine Idee, wie ich dieses Problem lösen könnte? Vielen Dank.
Lösung
Bei Ihrem Fehler sieht es mir für mich aus, dass Sie aus Cayenne Modeler die "Standard" "PK -Generationsstrategie" wählen (klicken Sie auf Ihr DB -Anhalt, um das Komobox mit dieser Option zu sehen). Dies bedeutet, dass Cayenne erwartet, dass eine besiedelte "auto_pk_support" -Tabelle in Ihrem Schema vorhanden ist (um Primärschlüssel zu generieren und verfolgen).
Cayenne Modeler kann diesen Tabellen + Inhalt für Sie generieren: Wählen Sie aus dem Menü "Tools Generieren Sie es - Sie können es kopieren und in Ihr Lieblings -SQL -Tool einfügen oder Cayenne Modeler ausführen lassen.
Da Sie MySQL verwenden, haben Sie natürlich auch andere PK -Generierungsoptionen (das oben oben ist die klassische/Standard -Funktionen und arbeiten in einer beliebigen Datenbank -, erfordert jedoch eine zusätzliche Tabelle).
Ich schlage vor, die zu konsultieren Cayenne Modeler -Dokumentation, oder besser die Ganze Dokumentation von Cayenne (Da es sehr gut ist) Wie alle oben genannten Artikel dort sehr gut erklärt werden.