Heim > Datenbank > MySQL-Tutorial > Warum erhalte ich den Syntaxfehler „type=MyISAM' in der von Hibernate generierten DDL?

Warum erhalte ich den Syntaxfehler „type=MyISAM' in der von Hibernate generierten DDL?

Mary-Kate Olsen
Freigeben: 2024-11-15 07:16:02
Original
379 Leute haben es durchsucht

Why am I getting the

Ungültiger Syntaxfehler „type=MyISAM“ in Hibernate-Generated DDL

Im Java-Code können Benutzer auf den folgenden Syntaxfehler stoßen:

Caused by :`com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException`: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB' server version for the right syntax to use near 'type = `MyISAM`' at line 1
Nach dem Login kopieren

Dieser Fehler tritt auf, wenn Hibernate eine Tabellenerstellungsabfrage generiert, die das Fragment „type =“ enthält MyISAM. Diese Syntax ist jedoch in MySQL 4.0 veraltet und wurde in 5.5 entfernt.

Dialektkonfiguration

Das Problem ergibt sich aus der Verwendung des Dialekts org.hibernate.dialect.MySQLDialect , was für MySQL 4.x oder früher gilt. Für MariaDB wird empfohlen, abhängig von den Versionen von MariaDB und Hibernate einen der folgenden Dialekte zu verwenden:

  • org.hibernate.dialect.MariaDBDialect
  • org.hibernate.dialect .MariaDB53Dialect
  • org.hibernate.dialect.MariaDB106Dialect (oder höher)

Für MySQL oder wenn die MariaDB-Dialekte nicht verfügbar sind, denken Sie darüber nach mit:

  • org.hibernate.dialect.MySQL5Dialect
  • org.hibernate.dialect.MySQL55Dialect
  • org.hibernate.dialect.MySQL57Dialect
  • org.hibernate.dialect.MySQL8Dialect
  • Varianten dieser Dialekte (z. B. org.hibernate.dialect.MySQL57InnoDBDialect)

Dialekte von Hibernate 6

Mit Hibernate 6 sollten Benutzer wieder auf die Verwendung von MySQLDialect oder umsteigen MariaDBDialect, da diese Dialekte sich basierend auf der tatsächlich verbundenen Version selbst konfigurieren.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich den Syntaxfehler „type=MyISAM' in der von Hibernate generierten DDL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage