Mengapa saya mendapat 'MySQLSyntaxErrorException' dengan mesej 'Anda mempunyai ralat dalam sintaks SQL anda...' semasa membuat jadual dengan Hibernate?

Susan Sarandon
Lepaskan: 2024-11-21 06:50:13
asal
377 orang telah melayarinya

Why am I getting a

Ralat Sintaks Tidak Sah "type=MyISAM" dalam DDL Dijana oleh Hibernate

Masalah:

Apabila mencipta jadual dengan Hibernate, "MySQLSyntaxErrorException" ditemui dengan mesej "Anda mempunyai ralat dalam sintaks SQL anda; semak manual yang sepadan dengan versi pelayan MariaDB anda untuk sintaks yang betul untuk digunakan berhampiran 'jenis = MyISAM' di baris 1."

Punca:

Serpihan "TYPE=MYISAM" yang ditamatkan dijana dalam pernyataan DDL oleh dialek Hibernate yang dikonfigurasikan. Serpihan ini tidak disokong dalam MySQL 5.5 dan kemudian atau dalam MariaDB.

Penyelesaian:

Untuk menyelesaikan isu ini, anda perlu mengkonfigurasi dialek Hibernate yang sesuai yang sejajar dengan versi pelayan pangkalan data anda.

Untuk MariaDB, bergantung pada versi anda dan versi Hibernate, gunakan salah satu dialek berikut:

  • org.hibernate.dialect.MariaDBDialect
  • org.hibernate.dialect.MariaDB53Dialect
  • org.hibernate.dialect.MariaDB106Dialect (atau lebih tinggi)

Untuk MySQL, atau jika dialek MariaDB tidak tersedia dalam versi Hibernate anda, gunakan salah satu daripada dialek (atau varian):

  • org.hibernate.dialect.MySQL5Dialect
  • org.hibernate.dialect.MySQL55Dialect
  • org.hibernate.dialect .MySQL57Dialect
  • org.hibernate.dialect.MySQL8Dialect
  • org.hibernate.dialect.MySQL57InnoDBDialect

Nota:

Nota:

Nota: >Dengan Hibernate 6, anda boleh kembali menggunakan MySQLDialect atau MariaDBDialect, kerana dialek ini akan mengkonfigurasi dirinya sendiri secara automatik berdasarkan versi pangkalan data yang disambungkan.

Atas ialah kandungan terperinci Mengapa saya mendapat 'MySQLSyntaxErrorException' dengan mesej 'Anda mempunyai ralat dalam sintaks SQL anda...' semasa membuat jadual dengan Hibernate?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan